fstab文件介绍
fstab文件包括了你的电脑上的存储设备及其文件系统的信息。它是决定一个硬盘(分区)被如何使用或者说整合到整个系统中的文件。
详细来说:用fstab能够自己主动挂载各种文件系统格式的硬盘、分区、可移动设备和远程设备等。对于Windows与Linux双操作系统用户。用fstab挂载FAT格式和NTFS格式的分区。能够在Linux中共享windows系统下的资源。
这个文件的全路径是/etc/fstab。它仅仅是一个文本文件,你可以用你喜欢的编辑器打开它,可是必须是root用户才干编辑它。同一时候fsck、mount、umount的等命令都利用该程序。
/etc/fstab 是启动时的配置文件。只是,实际 filesystem 的挂载是记录到 /etc/mtab 与 /proc/mounts 这两个文件其中的。每次我们在更动 filesystem 的挂载时。也会同一时候更动这两个文件喔。
系统挂载的一些限制:
- 根文件夹 / 是必须挂载的﹐并且一定要先于其他 mount point 被挂载进来。
- 其他 mount point 必须为已创建的文件夹﹐可随意指定﹐但一定要遵守必须的系统文件夹架构原则
- 全部 mount point 在同一时间之内﹐仅仅能挂载一次。
- 全部 partition 在同一时间之内﹐仅仅能挂载一次。
- 如若进行卸除﹐您必须先将工作文件夹移到 mount point(及其子文件夹) 之外。
文件各字段解释
演示样例:
# <fs> <mountpoint> <type> <opts> <dump/pass>
# NOTE: If your BOOT partition is ReiserFS, add the notail option to opts.
/dev/sda10 /boot ext4 noauto,noatime 1 2
/dev/sda6 / ext4 noatime 0 1
/dev/sda9 none swap sw 0 0
/dev/cdrom /mnt/cdrom auto noauto,ro 0 0
事实上 /etc/fstab (filesystem table) 就是将我们利用 mount 命令进行挂载时。 将全部的选项与參数写入到这个文件里就是了。除此之外, /etc/fstab 还增加了 dump 这个备份用命令的支持。 与启动时是否进行文件系统检验 fsck 等命令有关。
- <file systems> 挂载设备 : 不是我们通常理解的文件系统,而是指设备(硬盘及其分区。DVD光驱等)。它告知我们设备(分区)的名字,这是你在命令行中挂载(mount)、卸载(umount)设备时要用到的。
- <mountpoint> 挂载点:告诉我们设备挂载到哪里。
- <type> 文件系统类型:Linux支持很多文件系统。 要得到一个完整的支持名单查找mount man-page。典型 的名字包含这些:ext2, ext3, reiserfs, xfs, jfs,iso9660, vfat, ntfs, swap和auto, 'auto' 不是一个文件系统。而是让mount命令自己主动推断文件类型。特别对于可移动设备,软盘,DVD驱动器,这样做是非常有必要的,由于可能每次挂载的文件类型不一致。
- <opts> 文件系统參数:这部分是最实用的设置!
!!
它能使你所挂载的设备在开机时自己主动载入、使中文显示不出现乱码、限制对挂载分区读写权限。它是与mount命令的使用方法相关的,要想得到一个完整的列表,參考mount manpage.
- <dump> 备份命令:dump utility用来决定是否做备份的. dump会检查entry并用数字来决定是否对这个文件系统进行备份。
同意的数字是0和1。假设是0,dump就会忽略这个文件系统。假设是1,dump就会作一个备份。大部分的用户是没有安装dump的,所以对他们而言<dump>这个entry应该写为0。
- <pass> 是否以fsck检验扇区:启动的过程中。系统默认会以fsck检验我们的 filesystem 是否完整 (clean)。
只是,某些 filesystem 是不须要检验的,比如内存置换空间 (swap) ,或者是特殊文件系统比如 /proc 与 /sys 等等。
fsck会检查这个头目下的数字来决定检查文件系统的顺序,同意的数字是0, 1, 和2。0 是不要检验, 1 表示最早检验(一般仅仅有根文件夹会配置为 1), 2 也是要检验,只是1会比較早被检验啦!一般来说,根文件夹配置为1,其它的要检验的filesystem都配置为 2 就好了。
<opts>经常使用參数:
noatime
关闭atime特性,提高性能。这是一个非常老的特性,放心关闭。还能降低loadcycledefaults
使用默认设置。等于rw,suid,dev,exec,auto,nouser,async,详细含义看以下的解释。- 自己主动与手动挂载:
auto
在启动或在终端中输入mount -a时自己主动挂载
noauto
设备(分区)仅仅能手动挂载 - 读写权限:
ro
挂载为仅仅读权限
rw
挂载为读写权限 - 可运行:
exec
是一个默认设置项,它使在那个分区中的可运行的二进制文件可以运行
noexec
二进制文件不同意运行。千万不要在你的root分区中用这个选项!!
!
- I/O同步:
sync
全部的I/O将以同步方式进行
async
全部的I/O将以非同步方式进行 - 户挂载权限:
user
同意不论什么用户挂载设备。 Implies noexec,nosuid,nodev unless overridden.
nouser
仅仅同意root用户挂载。这是默认设置。 - 暂时文件运行权限:
suid
Permit the operation of suid, and sgid bits. They are mostly used to allow users on a computer system to execute binary executables with temporarily elevated privileges in order to perform a specific task.
nosuid
Blocks the operation of suid, and sgid bits.
重新启动系统
重新启动系统。或在终端中输入mount -a
就能够看到改动后的效果了。