系统篇: fstab 文件详解

Posted 旧年不在cd

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了系统篇: fstab 文件详解相关的知识,希望对你有一定的参考价值。

一、自动挂载磁盘(这里以/dev/sda为例)的实现

  • 打开/etc/fstab文件
vim /etc/fstab
  • 添加以下内容
/dev/sda /mnt/ssd ext4 defaults 0 0(通过设备节点挂载)
或者
UUID=... /mnt/ssd ext4 defaults 0 0(通过UUID挂载)
  • 插上磁盘(HDD、SSD),就可以自动挂载到/mnt/ssd目录下,记得要把磁盘格式化为ext4格式,可以使用如下命令:
mkfs.ext4 /dev/sda

二、/etc/fstab文件详解

  • 当系统启动的时候,系统会自动地从这个文件读取信息,并且会自动将此文件中指定的文件系统挂载到指定的目录

  • 字段解释

字段含义
/dev/sda要挂载的磁盘盘符,也可用UUID进行挂载
/mnt/ssd磁盘的挂载点
ext4文件系统的格式
defaults(option)所有选项全部使用默认配置,包括rw, suid, dev, exec, auto, nouser,和 async
0(dump)是否备份:0—>不备份
0(fsck)fsck选项,0—>不检查
  • 挂载选项的选择
  1. auto - 在启动时或键入了 mount -a 命令时自动挂载。
  2. noauto - 只在你的命令下被挂载。
  3. exec - 允许执行此分区的二进制文件。
  4. noexec - 不允许执行此文件系统上的二进制文件。
  5. ro - 以只读模式挂载文件系统。
  6. rw - 以读写模式挂载文件系统。
  7. user - 允许任意用户挂载此文件系统,若无显示定义,隐含启用 noexec, nosuid, nodev 参数。
  8. users - 允许所有 users 组中的用户挂载文件系统.
  9. nouser - 只能被 root 挂载。
  10. owner - 允许设备所有者挂载。
  11. sync - I/O 同步进行。
  12. async - I/O 异步进行。
  13. dev - 解析文件系统上的块特殊设备。
  14. nodev - 不解析文件系统上的块特殊设备。
  15. suid - 允许 suid 操作和设定 sgid 位。这一参数通常用于一些特殊任务,使一般用户运行程序时临时提升权限。
  16. nosuid - 禁止 suid 操作和设定 sgid 位。
  17. noatime - 不更新文件系统上 inode 访问记录,可以提升性能(参见 atime 参数)。
  18. nodiratime - 不更新文件系统上的目录 inode 访问记录,可以提升性能(参见 atime 参数)。
  19. relatime - 实时更新 inode access 记录。只有在记录中的访问时间早于当前访问才会被更新。(与 noatime 相似,但不会打断如 mutt 或其它程序探测文件在上次访问后是否被修改的进程。),可以提升性能(参见 atime 参数)。
  20. flush - vfat 的选项,更频繁的刷新数据,复制对话框或进度条在全部数据都写入后才消失。

defaults - 使用文件系统的默认挂载参数,例如 ext4 的默认参数为:rw, suid, dev, exec, auto, nouser, async

  • dump选项

dump 工具通过它决定何时作备份. dump 会检查其内容,并用数字来决定是否对这个文件系统进行备份。 允许的数字是 0 和 1 。0 表示忽略, 1 则进行备份。大部分的用户是没有安装 dump 的 ,对他们而言 应设为 0。

  • fsck 选项:

fsck 读取 的数值来决定需要检查的文件系统的检查顺序。允许的数字是0, 1, 和2。 根目录应当获得最高的优先权 1, 其它所有需要被检查的设备设置为 2. 0 表示设备不会被 fsck 所检查。

三、也可用UUID进行挂载磁盘

  • 查看磁盘UUID
guchunqi@cvte:~$ sudo ls -l /dev/disk/by-uuid/(可以查看到系统全部磁盘的UUID)
total 0
lrwxrwxrwx 1 root root 10 1111 16:49 2bcc8f2a-b5f1-4e76-bb2e-8445b1b7b645 -> ../../sdb2
lrwxrwxrwx 1 root root 10 1110 20:17 5F1F-2386 -> ../../sda1
lrwxrwxrwx 1 root root 10 1110 20:17 732c1f35-e1cd-4595-9d77-b8802e4e92ef -> ../../sda2
lrwxrwxrwx 1 root root 10 1111 16:49 e56dcb58-6e6d-4fb7-a0c9-567550be5691 -> ../../sdb1


guchunqi@cvte:~$ sudo blkid /dev/sdb1(查看指定磁盘分区的UUID)
/dev/sdb1: UUID="e56dcb58-6e6d-4fb7-a0c9-567550be5691" TYPE="ext4" PARTLABEL="gpt1" PARTUUID="c0eac122-90eb-411f-bddd-0fda05d361d6"

四、FAT32、NTFS磁盘挂载

  • FAT32
sudo mount -t vfat /dev/sda1 /mnt
  • NTFS
mount -t ntfs-3g(需要安装) /dev/sda1 /mnt

以上是关于系统篇: fstab 文件详解的主要内容,如果未能解决你的问题,请参考以下文章

详解 /etc/fstab

/etc/fstab功能详解

linux基础篇-25,如何永久挂载文件系统

Linux命令-自动挂载文件/etc/fstab功能详解[转]

Linux配置启动挂载:fstab文件详解

Linux fsck命令详解