windows和Linux系统格式
- 在分区后,磁盘需要格式化
- Windows中,有NTFS、fat格式,其中fat格式基本已经不用(过时)
- Linux中,centos7支持xfs、ext4、ext3、ext2、nodev proc、nodev devpts、iso9660、vfat、hfs、hfsplus
[root@localhost ~]# cat /etc/filesystems //查看centos7所支持的系统格式
xfs //系统默认的支持的格式
ext4
ext3
ext2
nodev proc
nodev devpts
iso9660
vfat
hfs
hfsplus
*
[root@localhost ~]#
- 在装Linux系统的时候,就是xfs
[root@localhost ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/sda3 18G 1.2G 17G 7% /
devtmpfs 483M 0 483M 0% /dev
tmpfs 493M 0 493M 0% /dev/shm
tmpfs 493M 6.8M 486M 2% /run
tmpfs 493M 0 493M 0% /sys/fs/cgroup
/dev/sda1 197M 109M 88M 56% /boot
tmpfs 99M 0 99M 0% /run/user/0
- 其中的/ 和/b oot 就是xfs
mount命令
- mount命令,查看分区的文件系统
- 在其中只要找到/dev/ 开头的,查看后面的文件系统xfs
- swap 是swap分区的,是自己的一种格式
- 在linux系统中的 / /boot 都是使用 xfs 格式的文件系统
- 在centos6和之前的版本中,都是使用 ext 格式的文件系统
- centos6中,使用 ext4
- centos5中,使用 ext3
- 再往之前文件系统格式,是ext2
格式化新的分区
- 查看系统磁盘新建的分区
[root@localhost ~]# fdisk -l
磁盘 /dev/sda:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000c928b
设备 Boot Start End Blocks Id System
/dev/sda1 * 2048 411647 204800 83 Linux
/dev/sda2 411648 4605951 2097152 82 Linux swap / Solaris
/dev/sda3 4605952 41943039 18668544 83 Linux
磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x3ca78df9
设备 Boot Start End Blocks Id System
/dev/sdb1 2048 16779263 8388608 83 Linux
mke2fs命令
- mk2fs命令,格式化分区
- -t 格式 ,指定所需要的文件格式化系统
- -b ,指定 块的大小(inode块大小默认4K)
- 对比ls -lh和du -sh 查看文件的大小
[root@localhost ~]# echo 1 > 2.txt
[root@localhost ~]# ls =lh 2.txt
ls: 无法访问=lh: 没有那个文件或目录
2.txt
[root@localhost ~]# ls -lh 2.txt //查看文件的大小
-rw-r--r--. 1 root root 2 11月 3 15:48 2.txt
[root@localhost ~]# du -sh 2.txt //查看块大小
4.0K 2.txt
[root@localhost ~]# du -sb 2.txt
2 2.txt
这里会看到ls -lh和du -sb查看文件的大小相同
而ls -lh查看的是文件的大小,du -sh 查看是块的大小
mke2fs命令参数用法
修改文件文件系统两种命令
- mke2fs -t ext4 修改为ext4格式的文件系统
- mkfs.ext4 修改为ext4格式的文件系统
- mke2fs -t xfs -b 2048 /dev/sdb1 指定文件的系统为ext4,并设置磁盘大小为2048M
- 这样就会格式化为ext4格式的文件系统
[root@localhost ~]# mke2fs -t ext4 -b 2048 /dev/sdb1
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=2048 (log=1)
分块大小=2048 (log=1)
Stride=0 blocks, Stripe width=0 blocks
524288 inodes, 4194304 blocks
209715 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=272629760
256 block groups
16384 blocks per group, 16384 fragments per group
2048 inodes per group
Superblock backups stored on blocks:
16384, 49152, 81920, 114688, 147456, 409600, 442368, 802816, 1327104,
2048000, 3981312
Allocating group tables: 完成
正在写入inode表: 完成
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成
[root@localhost ~]#
mkfs.ext4命令用法
- mkfs.ext4 /dev/sdb1 把磁盘划分为ext4格式的文件系统
[root@localhost ~]# mkfs.ext4 /dev/sdb1
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
524288 inodes, 2097152 blocks
104857 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=2147483648
64 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632
Allocating group tables: 完成
正在写入inode表: 完成
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成
[root@localhost ~]#
- 这里会发现两种命令都将磁盘划分为了ext4格式的文件系统
切换成xfs格式的文件系统
- mkfs.xfs -f /dev/sdb1 划分成xfs格式的文件系统(-f 表示强制 )
- mke2fs命令是无法划分为xfs系统的
[root@localhost ~]# mkfs.xfs -f /dev/sdb1
meta-data=/dev/sdb1 isize=512 agcount=4, agsize=524288 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=2097152, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
[root@localhost ~]#
- 在格式化好后xfs格式的文件系统后
- 使用mount命令是无法查看到的,因为还未进行挂载
- mke2fs命令无法格式化为xfs格式的文件系统
[root@localhost ~]# mke2fs -t xfs -b 2048 /dev/sdb1
mke2fs 1.42.9 (28-Dec-2013)
Your mke2fs.conf file does not define the xfs filesystem type.
Aborting...
blkid命令
- blkid命令,查看还未挂载的分区
- 会看到文件的文件系统
[root@localhost ~]# blkid /dev/sdb1
/dev/sdb1: UUID="ebdc3a7b-d16d-4bd8-8019-275e587d359e" TYPE="xfs"
mke2fs命令的其他用法
- mke2fs -b 指定块的大小
- mke2fs -b 8192 /dev/sdb1 指定块大小为8K
- mke2fs -b 2048 /dev/sdb1 指定块大小为4k (默认)
[root@hf-01 ~]# mke2fs -b 8194 /dev/sdb1
Warning: blocksize 8194 not usable on most systems.
mke2fs 1.42.9 (28-Dec-2013)
mke2fs: 8192-byte blocks too big for system (max 4096)
无论如何也要继续? (y,n) n
[root@hf-01 ~]# mke2fs -b 2048 /dev/sdb1
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=2048 (log=1)
分块大小=2048 (log=1)
Stride=0 blocks, Stripe width=0 blocks
327680 inodes, 2621440 blocks
131072 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=540016640
160 block groups
16384 blocks per group, 16384 fragments per group
2048 inodes per group
Superblock backups stored on blocks:
16384, 49152, 81920, 114688, 147456, 409600, 442368, 802816, 1327104,
2048000
Allocating group tables: 完成
正在写入inode表: 完成
Writing superblocks and filesystem accounting information: 完成
- mke2fs -m 指定这个分区,预留空间的大小
- mke2fs -m 1 /dev/sdb1 表示预留空间大小为1%,默认是ext2 格式的文件系统
- mke2fs -t ext4 -m 1 /dev/sdb1 表示使用ext4格式的文件大小,并预留空间大小为1%
[root@hf-01 ~]# mke2fs -t ext4 -m 1 /dev/sdb1
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
327680 inodes, 1310720 blocks
13107 blocks (1.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=1342177280
40 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736
Allocating group tables: 完成
正在写入inode表: 完成
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成
- mke2fs -i 指定多少个字节对应着1个inode
- 最低是1个块对应着1个inode
[root@hf-01 ~]# mke2fs -i 8192 /dev/sdb1
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
655360 inodes, 1310720 blocks
65536 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=1342177280
40 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736
Allocating group tables: 完成
正在写入inode表: 完成
Writing superblocks and filesystem accounting information: 完成
[root@hf-01 ~]#
mke2fs和mkfs.ext4
- mke2fs -t ext4 -m 0.1 /dev/sdb1
- mkfs.ext4 -m 0.1 /dev/sdb1
- 这个命令是一直的
总结
- mkfs.ext4和mke2fs,这两个命令支持的选项是一致的
- inode,在格式化分区的时候创建的,4个块对应着1个inode