跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客我的书AI学习GitHub 精选镜像AI 生图工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
Shell / Bash

Linux /etc/fstab 文件详解:自动挂载配置指南

Linux 系统中 /etc/fstab 配置文件的作用与结构。内容涵盖 fstab 的六列含义(设备、挂载点、文件系统类型、挂载选项、备份选项、检查顺序),推荐使用 UUID 而非设备路径以确保稳定性。文章提供了编辑 fstab 的正确步骤,强调修改后需通过 sudo mount -a 测试配置以避免启动故障,并列举了 NFS、CIFS 及 ISO 镜像的高级挂载示例。掌握 fstab 配置有助于实现存储资源的自动化管理与维护。

JavaCoder发布于 2026/3/30更新于 2026/9/1086 浏览

Linux /etc/fstab 文件详解:自动挂载配置指南

在 Linux 系统中,/etc/fstab(File System Table)是一个至关重要的配置文件,它用于定义系统开机时自动挂载的文件系统。如果你想让磁盘分区、远程存储(如 NFS)、ISO 镜像等在系统启动时自动挂载,那么 fstab 就是你需要了解的核心文件。

本文将详细介绍 /etc/fstab 文件的作用、结构、如何正确编辑它,以及一些高级用法,帮助你更好地管理 Linux 的存储挂载。

1. /etc/fstab 文件的作用

fstab 文件主要负责自动挂载 Linux 文件系统,它的作用包括:

  • 开机自动挂载磁盘(如 ext4、xfs、ntfs 等文件系统)
  • 挂载远程存储(如 NFS、CIFS 网络共享)
  • 挂载 ISO 镜像文件
  • 管理交换分区(Swap)
  • 定义挂载选项(如只读 ro,可读写 rw)

当系统启动时,mount -a 命令会自动解析 /etc/fstab 文件,按照其中的配置挂载所有指定的设备。

2. /etc/fstab 文件结构

fstab 文件的格式由 6 列组成,每一行代表一个需要挂载的文件系统或设备:

<设备> <挂载点> <文件系统类型> <挂载选项> <dump 备份> <fsck 启动检查>
示例 /etc/fstab 配置
UUID=123e4567-e89b-12d3-a456-426655440000 / ext4 defaults 0 1
UUID=123e4567-e89b-12d3-a456-426655440001 /home xfs defaults 0 2
UUID=123e4567-e89b-12d3-a456-426655440002 /data ext4 defaults,nofail 0 2
/dev/sdb1 /mnt/storage ntfs defaults,umask=022 0 0
192.168.1.100:/nfs /mnt/nfs nfs defaults 0 0
/dev/cdrom /mnt/cdrom iso9660 defaults 0 0
/dev/sda2 none swap sw 0 0

3. /etc/fstab 每一列详解

3.1 第一列:设备(Device)

表示要挂载的设备或分区,可以是:

  • 设备路径:/dev/sda1(传统方式,不推荐)
  • LABEL(磁盘标签):
    e2label /dev/sda1 mydisk
    
    然后在 fstab 使用:
    LABEL=mydisk
    
  • UUID(推荐方式):
    blkid /dev/sda1
    
    示例输出:
    /dev/sda1: UUID="123e4567-e89b-12d3-a456-426655440000" TYPE="ext4"
    
    使用 UUID 方式挂载(防止设备名变化导致挂载失败):
    UUID=123e4567-e89b-12d3-a456-426655440000
    
3.2 第二列:挂载点(Mount Point)

指定该设备或分区应挂载到的目录,例如:

  • /(根目录)
  • /home(用户目录)
  • /mnt/data(自定义数据目录)
  • none(如果是 swap 交换分区)
3.3 第三列:文件系统类型(File System Type)

常见的文件系统类型:

文件系统说明
ext4Linux 默认文件系统
xfs高性能文件系统
ntfsWindows 文件系统(需 ntfs-3g 支持)
vfatFAT32/exFAT 兼容文件系统
nfs网络文件系统(Network File System)
cifsWindows SMB/CIFS 共享文件系统
iso9660CD/DVD ISO 文件系统
swap交换分区
3.4 第四列:挂载选项(Mount Options)

用于指定挂载方式,多个选项用 , 分隔。

常见选项:

选项作用
defaults读写模式 (rw)、支持 suid/dev/exec/auto/nouser/async
ro只读挂载
rw读写挂载
noexec禁止执行可执行文件
nosuid禁止 SUID 和 SGID
nodev禁止创建设备文件
nouser只有 root 可以挂载
nofail设备不存在时不报错
umask=022设置 NTFS 或 vfat 的文件权限

示例:

UUID=123e4567-e89b-12d3-a456-426655440001 /mnt/ntfs ntfs defaults,umask=022 0 0
3.5 第五列:备份选项(Dump)

用于 dump 备份工具:

  • 0(不备份)
  • 1(根分区备份)
  • 2(其他分区备份)

通常设为 0。

3.6 第六列:文件系统检查(Fsck Order)

用于 fsck 文件系统检查:

  • 0(不检查)
  • 1(系统根分区,优先检查)
  • 2(其他分区,按顺序检查)

示例:

/dev/sda1 / ext4 defaults 0 1
/dev/sdb1 /home xfs defaults 0 2

4. 如何正确修改 /etc/fstab

4.1 编辑 /etc/fstab

使用 vim 或 nano 打开 /etc/fstab:

sudo nano /etc/fstab

添加新磁盘挂载,例如:

UUID=123e4567-e89b-12d3-a456-426655440002 /mnt/data ext4 defaults 0 2

保存并退出:Ctrl + X,然后按 Y 以确认修改。

4.2 测试 fstab 配置

在修改 fstab 之后,不要直接重启系统,以免因配置错误导致系统无法启动。可以先测试:

sudo mount -a

如果没有错误,则说明 fstab 配置正确。

4.3 重新挂载某个分区
sudo mount -o remount,rw /mnt/data

5. /etc/fstab 的高级用法

5.1 自动挂载远程 NFS 共享
192.168.1.100:/shared /mnt/nfs nfs defaults 0 0
5.2 挂载 Windows 共享(CIFS)
//192.168.1.200/shared /mnt/smb cifs username=user,password=pass 0 0
5.3 只读挂载 ISO 镜像
/path/to/file.iso /mnt/iso iso9660 loop,ro 0 0

6. 结论

/etc/fstab 是 Linux 挂载管理的核心文件,它允许用户定义 磁盘、远程存储、交换分区 等的自动挂载规则。理解 fstab 的格式和选项,不仅能提高磁盘管理的效率,还能避免不必要的手动挂载操作。

目录

  1. Linux /etc/fstab 文件详解:自动挂载配置指南
  2. 1. /etc/fstab 文件的作用
  3. 2. /etc/fstab 文件结构
  4. 示例 /etc/fstab 配置
  5. 3. /etc/fstab 每一列详解
  6. 3.1 第一列:设备(Device)
  7. 3.2 第二列:挂载点(Mount Point)
  8. 3.3 第三列:文件系统类型(File System Type)
  9. 3.4 第四列:挂载选项(Mount Options)
  10. 3.5 第五列:备份选项(Dump)
  11. 3.6 第六列:文件系统检查(Fsck Order)
  12. 4. 如何正确修改 /etc/fstab
  13. 4.1 编辑 /etc/fstab
  14. 4.2 测试 fstab 配置
  15. 4.3 重新挂载某个分区
  16. 5. /etc/fstab 的高级用法
  17. 5.1 自动挂载远程 NFS 共享
  18. 5.2 挂载 Windows 共享(CIFS)
  19. 5.3 只读挂载 ISO 镜像
  20. 6. 结论

更多推荐文章

查看全部
  • YOLOv8 OBB 旋转目标检测 RK3588 C++ 部署:模型转换与推理优化
  • AI Agent:普通人如何利用智能体实现能力变现
  • AI 小说生成器本地部署教程
  • Java 后端 Web API 开发实战:从架构到部署
  • C++ 智能指针详解:RAII 原理与标准库实践
  • 连通块问题解析与 C++ 代码实现
  • Docker Compose 文件格式版本 3 参考指南
  • MySQL 身份鉴别有效性检查与安全加固指南
  • OpenCode AI 编程工具使用教程:从安装配置到实战技巧
  • 让高斯动起来:3DGS 动态渲染的取舍与实操
  • VSCode + GitHub Copilot 从安装到 Agent 实战详解
  • CentOS 一键安装 Microi 吾码低代码平台及依赖环境脚本
  • CentOS 系统定时执行 Python 邮件发送任务的五种方案
  • JDK21 下载与安装指南
  • Windows 10/11 下 Codex MCP 服务配置指南:Node.js 安装与调试
  • AI 产品经理入门指南:核心技能与机器学习基础
  • 策略模式:接口与委托的两种实现方式
  • 数论基础:最大公约数与最小公倍数的原理及实现
  • C++11 详解:列表初始化、右值引用与移动语义
  • Spring Boot 自动配置原理深度解析

相关免费在线工具

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online

  • Markdown转HTML

    将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online

  • HTML转Markdown

    将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online

  • JSON 压缩

    通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online

  • JSON美化和格式化

    将JSON字符串修饰为友好的可读格式。 在线工具,JSON美化和格式化在线工具,online