上篇博文已经讲解了 如何对磁盘进行分区。接下来我们就在分区上创建文件系统。
linux 下用 mkfs 来创建文件系统
用法 :
mkfs -t 文件系统类型 设备名称
创建 ext3 文件系统
创建 FAT32 文件系统 (Linux 把 FAT32 识别为 vfat )
下面重点讲一下 专门管理 ext 系列文件的 mke2fs .
如果你 man mke2fs , mkfs.ext2 ,mkfs.ext3 和 mkfs.ext4 ,你会发现看到的是
同一个帮助文档,这说明这4个命令是一样的。
你也可以 cd /sbin 再 ls -il | grep mk 可以发现这几个命令的 inode 是一样的。
我们以 mke2fs 为例进行介绍。(详情请自行 man mke2fs)
mke2fs 命令常用的选项如下所示:
-t : 用来指定文件系统的类型,可以是 ext2 , ext3 ,也可以是 ext4 。
(mke2fs -t ext4 相当于 mkfs.ext4
mke2fs -j 相当于 mkfs.ext3 )
-b BLOCK SIZE :指定块大小,默认为 1024 ,可用取值为 1024, 2048 或 4096
-j : 创建 ext3 文件系统 (j : journal )
-L LABEL : 指定该分区的标签
-m : 指定预留给超级用户的块数百分比
-i : 指定为多少个字节的空间创建一个 inode
-N : 指定 inode 个数
-F : 强制创建文件系统(一般针对已挂载)
- E : 用户指定额外文件系统属性
下面进行一些常用操作: (实验环境 Centos 6.5)
在分区上创建 ext2 文件系统。
由下图可以发现如果不用 -t 指定文件系统类型的话,默认为 ext2
并且 BLOCK SIZE 为 1024 。
创建 ext3 文件系统,并且指定块大小为 2048
创建一个 ext4 文件系统 并且指定块大小为 4096 , 标签为 mydata
创建一个 ext3 文件系统 ,块大小为 4096,并且预留给超级用户的块数百分比为 3
接下来说一下 blkid 命令这个命令可以查看设备的相关属性。
用法: blkid 设备名
他的结果包含:
UUID : 唯一标识(UUID 全称是 Universally Unique Identifier)
每个分区都有一个唯一的 UUID ,我们一般用类似 /dev/sda2 之类的
名称标识一个分区,一般来讲,这个名称并不会变化,但是如果你有多块硬盘,
硬盘在电脑中的顺序变化的时候,相同的名称可能代表着不同的硬盘分区,
如果你是从 USB 设备启动,与其他 USB 设备的插入顺序也会导致分区识别的困难。
用 UUID 就可以解决上面这些问题。最典型的例子就是那些可移动设备,
比如U盘之类,当系统中接入U盘后,可能会将/dev/sda1这个设备名分配给它,
但是假如这个U盘又插入到别的系统中了,那么可能它所分配到的设备名就不是/dev /sda1,可能变成了/dev/sdb1。
(所以 建议在挂载分区时使用 UUID )
TYPE : 文件系统类型
LABEL : 卷标 (可以通过卷标来挂载分区)
e2label : 用于查看或定义卷标
用法 : e2label 设备文件名 卷标
tune2fs : 调整文件系统的相关属性
-j : 不损害原有数据,将ext2 升级为 ext3 (注意不能将 ext3 降为 ext2 )
-L LABEL : 设定或修改卷标
-m : 调整预留百分比
-r : 调整预留块数
-o : 设定默认挂载选项
-c : 指定挂载次数达到多少次之后进行自检 , 0 或 -1 表示关闭此功能
-i : 每挂载使用多少天之后进行自检; 0 或 -1 表示关闭此功能
-l : 显示超级块中的信息
dumpe2fs : 显示超级块信息
用法 : dumpe2fs 设备名
-h : 只显示超级块信息
fsck : 检查并修复 linux 文件系统类型
-t : FILESYSTEM
-a : 自动修复(不询问自动完成修复)
e2fsck : 专门修复 ext2 ext3 ext4 的命令
-f : 强制修复
-p : 自动修复