:::tips fstab 文件是 Linux 操作系统用于管理挂载文件系统的配置文件。它包含了有关文件系统的信息,包括文件系统类型、挂载点、挂载选项以及挂载顺序。 :::

fstab 文件格式

fstab 文件通常位于 /etc/fstab 目录下,每行代表一个文件系统。每行由以下六个字段组成,用空格或制表符隔开:

  • 设备名称:指定文件系统所在的设备。可以是磁盘分区(如 /dev/sda1)或者是光盘(如 /dev/cdrom)。
  • 挂载点:指定文件系统挂载到系统中的位置。一般情况下,挂载点都是一个目录,比如 /mnt/data。
  • 文件系统类型:指定文件系统的类型。常见的类型包括 ext2、ext3、ext4、vfat 等。
  • 挂载选项:指定文件系统的挂载选项。常见的选项包括 noauto、defaults、ro 等。
  • 重要性(dump):用于指定在执行系统备份时对文件系统进行备份的优先级。值为 0 表示不进行备份,值为 1 表示需要进行备份。
  • 检验序列(fsck):用于指定在引导时检查文

    fstab 挂载选项

    fstab 文件中的挂载选项可以用来指定对文件系统的挂载方式进行配置。常见的挂载选项包括:

  • defaults:使用默认选项进行挂载。

  • noauto:表示文件系统不会在引导时自动挂载,需要手动进行挂载。
  • user:允许普通用户执行挂载和卸载操作。
  • owner:只允许文件系统所有者执行挂载和卸载操作。
  • ro:表示挂载文件系统为只读。
  • rw:表示挂载文件系统为读写。
  • sync:表示同步写入文件系统,每次写入操作都会等待数据完全写入磁盘。
  • async:表示异步写入文件系统,写入操作不会等待数据完全写入磁盘。
  • auto:表示在引导时自动挂载文件系统。
  • exec:允许执行在挂载文件系统中的可执行文件。
  • noexec:禁止执行在挂载文件系统中的可执行文件。
  • relatime:在读取文件时更新文件的访问时间戳,但是在写入文件时不更新。
  • noatime:禁止在读取文件时更新文件的访问时间戳

    在 /etc/fstab 中忽略挂载文件系统时出现的错误

    要在 /etc/fstab 中忽略挂载文件系统时出现的错误,可以在该文件系统的挂载选项中添加 “nofail” 选项。例如:
    1. /dev/sda1 /mnt/data ext4 nofail 0 2
    这将告诉系统尝试在 /mnt/data 挂载点上使用 ext4 文件系统挂载 /dev/sda1 上的文件系统,并忽略可能发生的任何错误。如果无法挂载文件系统,系统将不会进入紧急模式。
    请注意,添加 “nofail” 选项并不能解决文件系统或所在设备上的任何底层问题。它只是告诉系统即使无法挂载文件系统,也继续启动。如果您遇到文件系统问题,您需要在文件系统能够被正确挂载之前解决这些问题。

    高级用法

    fstab 文件不仅可以用来挂载文件系统,还可以用来进行其他的配置。下面介绍几种常见的高级用法:
    挂载加密分区:如果你使用了加密分区,可以在 fstab 文件中使用 crypttab 命令进行挂载。例如:
    1. /dev/mapper/crypt1 /mnt/data ext4 defaults 0 0
    使用 UUID 或 LABEL 进行挂载:通常情况下,fstab 文件中的设备名称是基于设备的物理位置进行配置的。但是,如果你希望基于 UUID 或 LABEL 进行挂载,也可以在 fstab 文件中使用 UUID= 或 LABEL=

:::tips tmpfs 文件系统的优点是,数据存储在内存中,因此读写速度非常快。但是,由于数据存储在内存中,所以文件系统的容量受到物理内存的限制,并且在系统重启后数据会丢失。因此,通常会将 /tmp 目录挂载为 tmpfs 文件系统,用于存储临时文件。 ::: :::tips 需要注意的是,tmpfs 文件系统不支持磁盘分区,也不支持压缩。因此,如果你希望使用 tmpfs 文件系统存储大量数据,可能需要调整文件系统的大小来满足实际需求。 :::

挂载示例

  1. # UUID 挂载
  2. UUID=8e93679d-322d-40d7-a8ee-7a0bbf66eb83 /disk/8e93679d xfs defaults,noatime,nodiratime 0 0