/etc/fstab文包含了主机上存储设备及其文件系统的信息。它是决定一个硬盘(分区)被怎样使用或者说整合到整个系统中的唯一文件。

该文档需使用root权限才能编辑,fsck、mount、umount等命令都利用该程序。

具体来说:用/etc/fstab文档可以自动挂载各种文件系统格式的硬盘、分区、可移动设备和远程设备等。 

/etc/fstab文档内容分6个字段,分别是:

<file systems><dir><type><options><dump><pass>,每个字段以tab键隔开。

<file systems> 不是我们通常理解的文件系统,而是指设备(硬盘及其分区,DVD光驱等)。它告知我们设备(分区)的名字,这是你在命令行中挂载(mount)、卸载(umount)设备时要用到的。

<dir>告诉我们设备的挂载点。

<type> 指挂载设备或分区为何种文件系统类型

<options>它能使你所挂载的设备在开机时自动加载、使中文显示不出现乱码、限制对挂载分区读写权限。它是与mount命令的用法相关的,要想得到一个完整的列表,参考mount manpage.

<dump> 是dump utility用来决定是否做备份的. 安装之后dump会检查entry并用数字来决定是否对这个文件系统进行备份。如果是0,dump就会忽略这个文件系统,如果是1,dump就会作一个备份。

noatime   关闭atime特性,提高性能,这是一个很老的特性,放心关闭,还能减少loadcycle

defaults  使用默认设置。等于rw,suid,dev,exec,auto,nouser,async,具体含义看下面的解释。

auto  在启动或在终端中输入mount -a时自动挂载   

noauto  设备(分区)只能手动挂载

 iocharset=   在=号后面加入你的本地编码,似乎在这个设备(分区)中做文件IO的时候就会自动做编码的格式转换。

nls=     在=号后面加入你的本地编码,你的中文就不会出现乱码。

umask=   这是关于读写权限的

exec     是一个默认设置项,它使在那个分区中的可执行的二进制文件能够执行

noexec  二进制文件不允许执行。千万不要在你的root分区中用这个选项

sync     所有的I/O将以同步方式进行

async  所有的I/O将以非同步方式进

user  允许任何用户挂载设备。 Implies noexec,nosuid,nodev unless overridden

nouser  只允许root用户挂载。这是默认设置

suid    允许suid和sgid操作

nosuid  关闭suid和sgid操作

<pass> fsck会检查这个头目下的数字来决定检查文件系统的顺序(允许的数字是0, 1, 和2。 文件系统的<pass>选项是0将不会被fsck utility检查。root文件系统应该拥有最高的优先权1,而所有其它的文件系统,如果你想让它被check的话,应该写成2。

(参考他人博客)