磁盘格式化和挂载
磁盘格式化和挂载
磁盘Inode相关理解
- Inode size:128或者512 #这个是Inode表拥有的大小,这个表大小有关的是:
1、一个Inode支持管理多大的文件,毕竟文件的属性是归Inode管理的,而若Block size =1k,文件有1M那么
这个Inode就需要记录1000个Block的信息,如果文件再大一点需要的开销就越大。所以1个inode可以对应多个block,但是
只对应一个文件
1个inode可以有12个表指向block,inode记录1个block需要消耗4byte,12个也才48byte,那还有80byte呢,这里面
还记录了一些数据的属性,而且inode记录block号码的区域定义为:12直接(就是前面指的48byte),1个间接,1个双间接,1个三间接
这些东西都是记录在inode里(128byte),而用间接举例:指向的间接,这个间接其实是一个block,这个block里记录的全是block号码
(1个号码4byte,1k有256个),那1个inode支持多大的文件呢,1k*(12+256*1+256*256*1+256*256*256*1)=16843020k=16G(EXT2的理解)
2、那inode和block还有什么关系,首先设备格式化后应该所有的都是block,比如1M格式化block size=1k那么格式化后就有1024个block,inode呢,inode就
放在这些block里面,一下做个实验:
首先创建个1M的分区sdb2 1M:fdisk /dev/sdb
命令(输入 m 获取帮助):N
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): p
分区号 (2-4,默认 2):2
起始 扇区 (2099200-4194303,默认为 2099200):
将使用默认值 2099200
Last 扇区, +扇区 or +size{K,M,G} (2099200-4194303,默认为 4194303):+1M
分区 2 已设置为 Linux 类型,大小设为 1 MiB
命令(输入 m 获取帮助):p
磁盘 /dev/sdb:2147 MB, 2147483648 字节,4194304 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xa8417aea
设备 Boot Start End Blocks Id System
/dev/sdb1 2048 2099199 1048576 83 Linux
/dev/sdb2 2099200 2101247 1024 83 Linux
然后格式化/dev/sdb2:kfs. ext4 -i 102400 /dev/sdb2# -i选项是和这个文件系统里创建多少个inode有关,不能和inode size混淆,这里是设置了100K,
设置这么大是为了后面实验的结果
[root@xujb01 mnt]# mkfs.ext4 -i 102400 /dev/sdb2
mke2fs 1.42.9 (28-Dec-2013)
文件系统小得无法记录日志
文件系统标签=
OS type: Linux
块大小=1024 (log=0)
分块大小=1024 (log=0)
Stride=0 blocks, Stripe width=0 blocks
16 inodes, 1024 blocks
51 blocks (4.98%) reserved for the super user #5%的block留给了超级用户用
第一个数据块=1
Maximum filesystem blocks=1048576
1 block group
8192 blocks per group, 8192 fragments per group
16 inodes per group
Allocating group tables: 完成
正在写入inode表: 完成
Writing superblocks and filesystem accounting information: 完成
然后查看block和inode的一些细节:
[root@xujb01 mnt]# dumpe2fs /dev/sdb2
dumpe2fs 1.42.9 (28-Dec-2013)
Filesystem volume name: <none>
Last mounted on: <not available>
Filesystem UUID: 5b9108bb-78b7-4099-b927-97980a6023f0
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: ext_attr resize_inode dir_index filetype extent 64bit flex_bg sparse_super huge_file uninit_bg dir_nlink extra_isize
Filesystem flags: signed_directory_hash
Default mount options: user_xattr acl
Filesystem state: clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 16
Block count: 1024
Reserved block count: 51
Free blocks: 996
Free inodes: 5
First block: 1
Block size: 1024
Fragment size: 1024
Group descriptor size: 64
Reserved GDT blocks: 7
Blocks per group: 8192
Fragments per group: 8192
Inodes per group: 16
Inode blocks per group: 2
Flex block group size: 16
Filesystem created: Sat Nov 4 14:59:33 2017
Last mount time: n/a
Last write time: Sat Nov 4 14:59:33 2017
Mount count: 0
Maximum mount count: -1
Last checked: Sat Nov 4 14:59:33 2017
Check interval: 0 (<none>)
Lifetime writes: 90 kB
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size: 128
Default directory hash: half_md4
Directory Hash Seed: c1ae307c-9896-4f68-859f-75fa73a69090
Group 0: (Blocks 1-1023)
Checksum 0x2c0c, unused inodes 5
主 superblock at 1, Group descriptors at 2-2
保留的GDT块位于 3-9
Block bitmap at 10 (+9), Inode bitmap at 26 (+25)
Inode表位于 42-43 (+41)
996 free blocks, 5 free inodes, 2 directories, 5个未使用的inodes
可用块数: 25, 27-41, 44-1023
可用inode数: 12-16
提取上面一些有用的信息”空闲inodes有5个,空闲blocks=996
inode size=128
block size=1024
inode count=16
block count=102
free inodes:5
free blocks:996
`
挂载:mount /dev/sdb2 /mnt/testdisk;cd testdisk/;ll -aihl
[root@xujb01 testdisk]# ll -aihl
总用量 17K
2 drwxr-xr-x. 3 root root 1.0K 11月 4 14:59 .
261123 drwxr-xr-x. 4 root root 4.0K 11月 4 07:51 ..
11 drwx------. 2 root root 12K 11月 4 14:59 lost+found
[root@xujb01 testdisk]# dumpe2fs /dev/sdb2 |tail -n3
dumpe2fs 1.42.9 (28-Dec-2013)
996 free blocks, 5 free inodes, 2 directories, 5个未使用的inodes
可用块数: 25, 27-41, 44-1023
可用inode数: 12-16
然后创建文件01,文件01 0字节大小,但是可以看到消耗了1K的容量(1个inode暂用的block),free少了1个inode和1个block
[root@xujb01 testdisk]# touch 01
[root@xujb01 testdisk]# ll -ahil
总用量 18K
2 drwxr-xr-x. 3 root root 1.0K 11月 4 15:11 .
261123 drwxr-xr-x. 4 root root 4.0K 11月 4 07:51 ..
12 -rw-r--r--. 1 root root 0 11月 4 15:11 01
11 drwx------. 2 root root 12K 11月 4 14:59 lost+found
[root@xujb01 testdisk]# dumpe2fs /dev/sdb2 |tail -n3
dumpe2fs 1.42.9 (28-Dec-2013)
995 free blocks, 4 free inodes, 2 directories, 4个未使用的inodes
可用块数: 27-41, 44-1023
可用inode数: 13-16
然后touch 02:free消耗了1个inode和,0个block,还增加了1K的容量
[root@xujb01 testdisk]# touch 02
[root@xujb01 testdisk]# ll -ilha
总用量 19K
2 drwxr-xr-x. 3 root root 1.0K 11月 4 15:13 .
261123 drwxr-xr-x. 4 root root 4.0K 11月 4 07:51 ..
12 -rw-r--r--. 1 root root 0 11月 4 15:11 01
13 -rw-r--r--. 1 root root 0 11月 4 15:13 02
11 drwx------. 2 root root 12K 11月 4 14:59 lost+found
[root@xujb01 testdisk]# dumpe2fs /dev/sdb2 |tail -n3
dumpe2fs 1.42.9 (28-Dec-2013)
995 free blocks, 3 free inodes, 2 directories, 3个未使用的inodes
可用块数: 27-41, 44-1023
可用inode数: 14-16
inode表也是在block中,创建文件会消耗inode但是不会消耗block,(只是消耗inode表暂用的block)
dumpe2fs /dev/sdb查看文件系统信息
格式化磁盘
mkfs或者mkfs.ext4(看类型是什么有mkfs.xfs mkfs.ext3等)
mkfs -t ext4 -i 4096 -b 1024 -m 5 -I 128 /dev/sdb2
-
-t#格式化类型 -
-i#inode count -
-b#block size -
-m#预留super-user的容量 -
-I#inode size
挂载磁盘
mount
挂载文件 /etc/fstab
man fstab 中有各个字段的记录:
UUID=b1888f05-465e-4968-846b-af5ef83c9fd0 swap swap defaults 0 0
设备或者/dev/sdb2 挂载点 类型 ro、rw等属性 是否备份 开启启动磁盘检测优级
挂载wondows samba: mount -t cifs //192.168.180.114/11 /mnt/share -o username=share,password=123456,iocharset=utf8
blkid查看设备uid
mount -t type -o (rw/r)/dev/sdb2 /mnt/testdisk #type一般自动会识别,默认是读写
默认选项:mount /dev/sdb2 /mnt/testdist #rw, suid, dev, exec, auto, nouser(默认不允许普通用户挂载), and async(默认先写入内存在到磁盘)
mount --bind test01 test02 #把test01 文件暂时挂载在test02位置上.
手动增加swap空间
-
dd if=/dev/zero of=/tmp/newdisk bs=1M count=1024 #创建1G文件
-
格式化文件 mkswap -f /tmp/newdisk
-
free -h #查看增加swap前swap大小
-
swapon /tmp/newdisk #挂载虚拟内存
-
free -h #查看比较增加前后swap信息
浙公网安备 33010602011771号