LINUX fstab挂载表

时间:2019-04-29 03:17:31  来源:igfitidea点击:

Linux的挂载表/etc/fstab

正如我们之前在一个磁盘上创建多个分区的示例中所看到的,我们需要将设备和挂载点添加到Linux的挂载表中。这是一个文件,其中包含有关应在引导时安装的分区的信息。

以下是我们前面创建文件系统和分区的示例中使用的挂载表。

root@centos ~]# cat /etc/fstab

#
# /etc/fstab
# Created by anaconda on Wed Jan  9 22:27:17 2013

#
/dev/mapper/vg_centos-lv_root /                       ext4    defaults  1 1
UUID=65e88b9b-a4b7-408b-86a5-335c9f91c404 /boot       ext4    defaults  1 2
/dev/mapper/vg_centos-lv_swap swap                    swap    defaults  0 0
tmpfs                   /dev/shm                tmpfs   defaults  0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults  0 0
proc                    /proc                   proc    defaults  0 0
#
# Added for fstab demo itr.com
#
/dev/sdb1               /test1                  ext3    defaults  0 0
/dev/sdb2               /test2                  ext3    defaults  0 0
/dev/sdb3               /test3                  ext3    defaults  0 0
/dev/sdb5               /test4                  ext3    defaults  0 0
/dev/sdb6               /test5                  ext3    defaults  0 0
/dev/sdb7               /test6                  ext3    defaults  0 0
/dev/sdb8               /test7                  ext3    defaults  0 0

挂载表的位置保存在一个文件中,该文件位于以下路径中:/etc/fstab。此文件通常由服务器的系统管理员维护。文件中的每一行都描述了系统可用的设备/文件系统。每个字段由空格或制表符分隔。每个条目有六个字段:

  • 字段1:文件系统-这个字段描述要安装的设备或文件系统。在这里可以看到诸如/dev/sdb1的普通挂载。

您可能还会遇到NFS装载。这些是由远程服务器承载的文件系统。这些可以很容易地通过nfs确定 :/rmtserver:/opt/test /mynfs nfs ro,bg 0 0,上面的nfs示例将从远程服务器rmtserver挂载/opt/test到本地挂载点/mynfs。这将是一个只读挂载。bg指定它应该作为一个后台任务挂载。
在许多较新的系统中,经常还可以看到由UUID通用唯一标识符指定的设备。

  • 字段2:挂载点。对于交换分区,这个字段应该指定为none

  • 字段3:该字段描述文件系统的类型。Linux可以支持许多不同的文件系统——`ext2、ext3、ext4、hfs、iso9600、minix、msdos、nfs、ntfs、reiserfs、smbfs、vfat、xfs。

  • 字段4:该字段描述与文件系统相关的挂载选项。这是一个逗号分隔的列表。包含挂载的类型和任何其他选项。

文件系统挂载选项:
defaults | 使用默认选项:rw, suid, dev, exec, auto, nouser和async。
auto | 在启动时自动挂载。
noauto | 不要在启动时自动挂载。
user | 允许普通用户挂载。
owner | 允许设备所有者挂载。
comment | 用于fstab维护程序。
nofail | 如果不存在错误,不要报告错误。

Linux fstab中的00是什么意思

  • 字段5:该字段用于确定文件系统是否使用dump命令进行转储。值0表示不进行dump。

  • 字段6:fsck程序使用该字段来确定在重新启动时文件系统检查的顺序。根文件系统的值应该是1,其他文件系统的值应该是2。如果该字段不存在或值为0,则不进行检查。

挂载和卸载文件系统

在Linux系统上可访问的所有文件都以树状结构排列。这些文件可以分布在多个设备上。mount命令功能是将设备上找到的文件系统附加到树形结构。mount命令的反义词是umount命令。umount用于卸载文件系统。

在Linux上进行挂载时,必须告诉mount命令您要挂载的设备或分区以及在何处挂载(挂载点)。

mount /dev/sdb1 /test1

在上面的例子中,我们将设备/dev/sdb1挂载在/test1的挂载点上。

许多Linux发行版都带有预定义的挂载点,比如/mnt/media。在这里您可以安装一个CDDVD。命名挂载总是有用的,这样它就反映了被挂载或将要挂载的设备。

如果在挂载表/etc/fstab中指定了一个设备,那么可以执行mount命令,而不需要指定挂载点。这是因为可以在挂载表中找到设备及其相关的挂载点:

fstab示例

/dev/sdb1 /test1 ext3 defaults 0 0

因此,根据上面的条目,我们可以执行:mount /dev/sdb1就可以直接挂载了。

mount语法

mount -h显示帮助信息。
mount -V显示版本信息。
mount显示已安装的文件系统。
mount [-l] [-t type]显示所有已安装类型的文件系统。-l添加标签列表。
所有已挂载文件系统的列表也包含在/etc/mtab中的文件中。执行mount和umount命令时,会更新此列表。
mount -a挂载/etc/fstab中没有定义了noauto选项的所有设备

以非root用户身份挂载

通常,要挂载设备,您将需要超级用户特权。但是,可以指定普通用户可以安装设备。这是通过将选项user添加到fstab文件中来实现的。例如:

/dev/cdrom/cd iso9660 ro,user,noauto,unhide