fstab 文件可用于定义磁盘分区,各种其他块设备或远程文件系统应如何装入文件系统。
每个文件系统在一个单独的行中描述。这些定义将在引导时动态地转换为系统挂载单元,并在系统管理器的配置重新加载时转换。在启动需要挂载的服务之前,默认设置会自动fsck和挂载文件系统。
文件示例
一个简单的 /etc/fstab,使用内核名称标识磁盘:
# /etc/fstab
# <file system> <dir> <type> <options> <dump> <pass>
tmpfs /tmp tmpfs nodev,nosuid 0 0
/dev/sda1 / ext4 defaults,noatime 0 1
/dev/sda2 none swap defaults 0 0
/dev/sda3 /home ext4 defaults,noatime 0 2
字段定义
/etc/fstab 文件包含了如下字段,通过空格或 Tab 分隔:
<file system> <dir> <type> <options> <dump> <pass>
<file systems>- 要挂载的分区或存储设备.<dir>- 的挂载位置。<type>- 要挂载设备或是分区的文件系统类型,支持许多种不同的文件系统:ext2,ext3,ext4,reiserfs,xfs,jfs,smbfs,iso9660,vfat,ntfs,swap及auto。 设置成auto类型,mount 命令会猜测使用的文件系统类型,对 CDROM 和 DVD 等移动设备是非常有用的。<options>- 挂载时使用的参数,注意有些 参数是特定文件系统才有的。一些比较常用的参数有:auto- 在启动时或键入了mount -a命令时自动挂载。noauto- 只在你的命令下被挂载。exec- 允许执行此分区的二进制文件。noexec- 不允许执行此文件系统上的二进制文件。ro- 以只读模式挂载文件系统。rw- 以读写模式挂载文件系统。user- 允许任意用户挂载此文件系统,若无显示定义,隐含启用noexec,nosuid,nodev参数。users- 允许所有 users 组中的用户挂载文件系统.nouser- 只能被 root 挂载。owner- 允许设备所有者挂载.sync- I/O 同步进行。async- I/O 异步进行。dev- 解析文件系统上的块特殊设备。nodev- 不解析文件系统上的块特殊设备。suid- 允许 suid 操作和设定 sgid 位。这一参数通常用于一些特殊任务,使一般用户运行程序时临时提升权限。nosuid- 禁止 suid 操作和设定 sgid 位。noatime- 不更新文件系统上 inode 访问记录,可以提升性能。nodiratime- 不更新文件系统上的目录 inode 访问记录,可以提升性能。relatime- 实时更新 inode access 记录。只有在记录中的访问时间早于当前访问才会被更新。(与 noatime 相似,但不会打断如 mutt 或其它程序探测文件在上次访问后是否被修改的进程。),可以提升性能。flush-vfat的选项,更频繁的刷新数据,复制对话框或进度条在全部数据都写入后才消失。defaults- 使用文件系统的默认挂载参数,例如ext4的默认参数为:rw,suid,dev,exec,auto,nouser,async.
<dump>- dump 工具通过它决定何时作备份. dump 会检查其内容,并用数字来决定是否对这个文件系统进行备份。 允许的数字是 0 和 1 。0 表示忽略,1 则进行备份。大部分的用户是没有安装 dump 的 ,对他们而言<dump>应设为 0。<pass>- fsck 读取<pass>的数值来决定需要检查的文件系统的检查顺序。允许的数字是 0, 1,和2。 根目录应当获得最高的优先权 1, 其它所有需要被检查的设备设置为 2. 0 表示设备不会被 fsck 所检查。