1、创建和挂装文件系统
1.1创建文件系统
创建文件系统命令的格式如下:
# mkfs.ext4 <设备名>
# mlkfs.xfs <设备名>
例1、在系统第二块SATA接口的硬盘第5个分区上创建ext4类型的文件系统。
# mkfs.ex14 /dew/sdb5
例2、对data卷组的home逻辑卷创建ext4类型的文件系统。
# mkfs.ext4 /dev/data/home
例3、对data卷组的www逻辑卷创建xfs类型的文件系统。
# mkfs.xfs /dev/data/www
也可以使用带-t <fstype>选项的mkfs命令创建各种类型的文件系统,例如:
//在系统第二块SATA接口的硬盘第1个分区上创建ext3类型的文件系统
# mkfs -t ext3 /dev/sdbl
//在系统第二块SATA接口的硬盘第5个分区上创建FAT32类型的文件系统
# mkfs -t vfat /dev/sdb5
1.2使用mount命令挂装文件系统
在磁盘分区或逻辑卷上创建了文件系统后,还需要把新建立的文件系统挂装到系统上才能使用。挂装是Linux文件系统中的概念,将所有的文件系统挂装到统的目录树中。使用mount命令可以灵活地挂装系统可识别的所有文件系统。mount 的命令格式如下。
Ø 格式1: #mount [-t<文件系统类型>] [-o <挂装选项>] <设备名> <挂装点>
Ø 格式2: #mount [-o <挂装选项>] <设备名>或<挂装点>
Ø 格式3: #mount -a [-t<文件系统类型>] [-o <挂装选项>]
1)格式1:用于挂装/et/fstab中未列出的文件系统。
Ø 使用-t选项可以指定文件系统类型。
Ø 若-t选项省略,mount命令将依次试探/proc/filesystems中不包含nodev的行。
Ø 必须同时指定<设备名>和<挂装点>。
2)格式2:用于挂装/et/fstab中已列出的文件系统。
Ø 选择使用<设备名>或<挂装点>之一即可。
Ø 若-o省略,则使用et:/fstab 中该文件系统的挂装选项。
3)格式3:用于挂装/etc/fstab 中所有不包含noauto (非自动挂装)挂装选项的文件系统。
Ø -t: 若指定此参数,则只挂装/etc/fstab中指定类型的文件系统。
Ø -0:用于指定挂装/et/fstab中包含指定挂装选项的文件系统。
Ø 若同时指定-t和-o,则为“或者”的关系。
注意:
1.挂装点就是文件系统中的一个目录,必须把文件系统挂装在目录树中的某
个目录中。
2.挂装点目录在实施挂装操作之前必须存在,若其不存在则应该使用mkdir
命令创建。
3.通常挂装点目录必须是空的,否则目录中原有的文件将被系统隐藏。
4.设备名也可以通过文件系统的LABEL或UUID来指定,即设备名可以用
LABEL=<label> (-L <label>)或UUID-<uuid> (-U <uuid> )替换。
下面是几个使用mount命令的例子。
例l:将/dev/sdb5 上的ext4文件系统挂装到/backup.
# mkdir /backup
#mount -t ext4 /dev/sdb5 /backup
也可以通过UUID来指定设备。
# blkid /dev/sdb5
/dev/sdb5: UUID="645ecfe0-be72-494f-8771-eb550e9a614b" TYPE- "ext4"
#mount -t ext4 _U "645ecfe0-be72 494f-8771-eb550e9a614b" /backup
例2:将文件系统类型为ext4 的逻辑卷/dev/datahome 挂装到/home.
#mount /dev/data/home /home
也可以通过UUID来指定设备。
# bkid /dev/data/home
/dev/data/home: UUID-"17bc54ae f2ba 4296 acl6-5f39c692bbd" TYPE "ext4"
#mount -U "17bc54ae -f2ba 4296-ac16 5f39c6926bbd" /home
例3:将文件系统类型为xfs的逻辑卷/dev/data/www 挂装到/srv/www.
#mkdir /srv/www
# mount /dev/data/www /srv/www
也可以通过UUID来指定设备。
# blkid /dev/data/www
/devdata/www: UUID "5b62d725-08e1-47d9 8389 d87842e0a916" TYPE- "xfs"
#mount -U "5b62d725-08e1-47d9 8389 d87842e0a916" /srv/www
例4:将光盘ISO文件挂载到/media。
# mount -t iso9660 -0 loop CentOS 7-x86 64-Minimal-1503-01.iso0 /media
例5:将/devlsddl上的NTFS类型的文件系统以读写方式挂装到/mnt/win.
#yum -y install ntfs-3g
# mkdir /mn/win
# moun.tfs-3g /dev/sdd1 /mnt/win
例6:显示当前已经挂装的文件系统。
$ mount #或findmnt
1.3使用umount命令卸载文件系统
文件系统可以被挂装,也可以被卸装。卸装文件系统的命令是umount, 该命令可以把文件系统从Linux系统中的挂装点分离。要卸装一个文件系统,可以指定要卸装的文件系统的目录名(挂装点)或设备名。umount 命令的格式如下。
# umount <设 备名或挂装点>
例如:
# umount /dev/sdb5
# umount /srv/www
注意:
如果一个文件系统处于busy状态,则不能卸装该文件系统。如下情况将导致
文件系统处于busy 状态:
(1)文件系统上面有打开的文件。
(2)某个进程的工作目录在此文件系统上。
(3)文件系统上面的缓存文件正在被使用。
最典型的错误是在挂装点目录下实施卸装操作,此时文件系统处于busy状态。
1.4 fuser 命令
fuser命令可以根据文件( 目录、设备)查找使用它的进程,同时也提供了杀死这些进程的方法。fuser 命令的详细用法可参考其man手册。下面仅介绍当文件系统处于busy状态时如何卸装文件系统的步骤。
1) 查看挂接点有哪些进程需要杀掉。
# fuser -cu /mount point
2)杀死这些进程(向其发送([SIGKILL, 9]信号)。
# fuser -ck /mount point
3)查看是否还有进程在访问挂接点。
#fiser c /mount point
4)卸载挂接点上的设备。
# umount /mount point
5.在系统启动时自动挂装文件系统
使用mount命令手动挂装的文件系统在关机时会被自动卸装,但系统再次启动后不会被自动挂装。要在启动时自动挂装文件系统必须修改系统挂装表——配置文件/etc/fstab。 系统启动所要挂装的文件系统、挂装点、文件系统类型等都记录在/etc/fstab文件里,例如:
#<file system> <mount point> <type><options><dump><pass>
/dev/mapper/centos-root xfs / xfs defaults 0 0
UUID=-lelabb88 19c5 49-acc-a942cb37b7ld /boot xfs defaults 0 0
/devlmaper/centos-swap swap swap defaults 0 0
/etc/fstab文件每一行书写一个文件系统的挂装情况,以#开头的行为注释行。文件中每一列的说明如下表所示。
fstab 文件栏位说明 | |
栏位 | 说明 |
file system | 要挂装的设备,可以使用设备名,也可以通过UUID=<uuid>或LABEL=<label>来指定 |
mount point | 挂装点目录 |
type | 挂装的文件系统类型 |
options | 挂装选项。挂装设备时可以设置多选项,不同选项间用逗号隔开 |
dump | 使用dump命令备份文件系统的频率,空白或者值为0时,系统认为不需要备份 |
pass | 开机时fsck向令会自动检查文件系统,pass规定了检查的顺序。挂装到分区的文件系统。此栏位应是1,其余是2,0表示不需要检查 |
例如,要在系统启动过程中将分区/dev/sdb5 上的ext4类型的文件系统挂装到/backup目录,将逻辑卷/dev/data/www上的xfs类型的文件系统挂装到/srv/www目录,将逻辑卷/dev/datahome 上的ext4类型的文件系统挂装到/home目录,可以在/etc/fstab文件中添加:
/dev/data/www /sr/www xfs defaults 0 0
/dev/data/home /home ext4 defaults 0 1
/dev/sdb5 /backup ext4 defaults 0 2
或者使用UUID指定设备。
UUID-5b62d725-08e1-47d9-8389-d87842e0a916 /srv/www xfs defaults 0 0
UUID-17bc54ac-f2ba 4296 acl6-5139c6926bbd /home ext4 defaults 0 1
UUID-645ecfe0-be72- 494f-8771-cb550e9a614b /backup ext4 defaults 0 2
修改/etc/fstab文件后,执行如下命令使其在当前生效。
# mount -a
注意:
若系统在安装过程中没有分配单独的挂载到home的分区或逻辑卷,那么
/home目录下很可能已包含用户数据,将单独的分区或逻辑卷挂载到/home后,原来/home目录的内容将被屏蔽,为此应先执行如下的命令将原来/home目录下的内容同步到新的分区或逻辑卷,为了节省空间还可以删除原来/home目录下的内容。
# umount /home
# mount /dev/data/home /mnt
# rsync -avH /home/ /mnt/
# m -rf /home/*
# umount /mnt
# mount /dev/data/home /home