Life, half is memory, half is to continue.

再也不用每次挂载!开机自动识别 U 盘和硬盘

By Vincent. @2025.12.12 • 5
再也不用每次挂载!开机自动识别 U 盘和硬盘

一、先搞懂:为什么手动挂载会 “重启失效”?自动挂载靠什么?

刚开始我以为 “挂载一次就能永久生效”,后来才明白:手动mount是 “临时指令”,系统重启后会清空所有临时操作,就像电脑重启后要重新打开软件一样。

要让挂载 “永久生效”,得告诉系统:“每次开机都要把这个设备挂到这个目录”—— 这个 “指令清单” 就是/etc/fstab文件(全称 “filesystem table”,文件系统表)。

二、自动挂载的 “安全前提”:先搞懂 2 个关键信息(避免改错配置)

编辑/etc/fstab前,必须先拿到两个 “关键参数”:设备的 UUID文件系统类型—— 这是新手最容易忽略的,用设备路径(比如/dev/sdb1)容易出错(比如插新硬盘后,原 U 盘路径可能从sdb1变成sdc1),而 UUID 是设备的 “唯一身份证”,永远不会变。

1. 查设备的 UUID(用blkid命令)

blkid能显示所有分区 / U 盘的 UUID 和文件系统类型,必须用sudo执行(普通用户看不了):

sudo blkid

输出示例(只截取关键设备,比如 U 盘和新硬盘):

/dev/sdb1: UUID="1234-ABCD" TYPE="vfat" PARTUUID="abcd1234-01"  # 我的U盘(vfat格式,常见于U盘)

/dev/sdc1: UUID="a1b2c3d4-1234-5678-90ab-cdef12345678" TYPE="ext4" PARTUUID="1234abcd-01"  # 我的新硬盘分区(ext4格式)
  1. UUID:比如 U 盘的"1234-ABCD"(带引号,复制时别漏);
  2. TYPE:比如 U 盘的vfat、硬盘的ext4(文件系统类型,编辑/etc/fstab要用到)。

2. 确认挂载点目录(必须是空目录!)

和手动挂载一样,自动挂载也需要 “挂载点”(空目录),建议放在/mnt(手动管理的设备)或/media(系统自动管理的设备)下:

三、核心实操:分 2 个场景配置自动挂载(U 盘 + 新硬盘)

/etc/fstab是系统核心配置文件,改错会导致开机进不了系统,所以新手一定要按 “先备份→再编辑→测试→重启验证” 的步骤来,我会把每个字段的含义讲清楚,避免瞎填。

场景 1:自动挂载 U 盘(适合日常用的移动设备)

步骤 1:备份/etc/fstab(关键!改崩了能恢复)

先复制一份原文件到/home,万一改坏了,能把备份文件放回去:

sudo cp /etc/fstab /home/fstab\_backup  # 备份到用户目录,方便找回

步骤 2:编辑/etc/fstab(用nano,新手比vim简单)

sudo nano打开文件(nano是简单的文本编辑器,新手容易上手):

sudo nano /etc/fstab

打开后,在文件最后一行添加以下内容(对应 U 盘的参数):

\# 自动挂载U盘(注释:方便后续自己看懂这行是干嘛的)

UUID=1234-ABCD  /mnt/usb\_auto  vfat  defaults,nofail  0  2

关键:解释/etc/fstab的 6 个字段(填错就会出问题!)

每行配置分 6 个字段,用空格或 Tab 分隔,我用表格解释刚才加的 U 盘配置:

字段顺序示例内容含义(新手必懂)
1UUID=1234-ABCD设备标识:用 UUID(唯一),别用 /dev/sdb1(路径可能变)
2/mnt/usb_auto挂载点:刚才创建的空目录
3vfat文件系统类型:从blkid查的 TYPE,U 盘常用 vfat,Linux 硬盘常用 ext4
4defaults,nofail挂载选项:defaults(默认选项,包含 rw、suid 等),nofail(设备不在时不报错,避免开机卡壳)
50dump 备份:0 = 不备份(新手不用管,填 0 就行)
62fsck 检查:0 = 不检查,1 = 根目录(/)检查,2 = 其他分区检查(填 2 就行)

步骤 3:测试配置是否正确(避免重启后失败)

编辑完别直接重启!用mount -a命令让系统 “加载新的 fstab 配置”,如果没报错,就代表配置没问题:

sudo mount -a  # 加载fstab,没输出就是成功

步骤 4:验证自动挂载(插 U 盘 + 重启)

  1. 插好 U 盘,输ls /mnt/usb_auto,能看到 U 盘里的文件,说明当前加载成功;
  2. 重启电脑:sudo reboot
  3. 重启后,不用手动挂载,直接输ls /mnt/usb_auto,能看到文件就代表自动挂载生效了!

场景 2:自动挂载新硬盘分区(适合长期用的存储设备)

新硬盘(比如装在电脑里的机械硬盘)通常格式化为 ext4(Linux 常用格式),配置和 U 盘类似,只需要改 “文件系统类型” 和 “挂载选项”(不用加nofail,因为硬盘一直插在电脑里)。

步骤 1:查硬盘的 UUID 和类型(用blkid

比如我的新硬盘分区是/dev/sdc1blkid输出:

/dev/sdc1: UUID="a1b2c3d4-1234-5678-90ab-cdef12345678" TYPE="ext4"

步骤 2:编辑/etc/fstab,添加硬盘配置

在 fstab 最后一行加:

\# 自动挂载新硬盘(存储数据用)

UUID=a1b2c3d4-1234-5678-90ab-cdef12345678  /mnt/data  ext4  defaults  0  2

步骤 3:测试 + 重启验证

  1. 加载配置:sudo mount -a(没报错就对);
  2. 验证:ls /mnt/data(空目录,因为刚格式化);
  3. 重启后再查:ls /mnt/data,依然能访问目录,说明自动挂载成功。

四、紧急救援:改崩/etc/fstab导致开机进不了系统?

我第一次编辑 fstab 时,把 UUID 多复制了一个字符,结果开机卡在 “emergency mode”(紧急模式),鼠标键盘都动不了 —— 别怕,按下面的步骤能恢复。

救援步骤(适用于 Ubuntu):

  1. 开机时,在 GRUB 菜单(开机第一屏,有 Ubuntu 选项)按E进入编辑模式;
  2. 找到开头是linux的一行,在末尾加init=/bin/bash(让系统启动时直接进入命令行,跳过 fstab 加载);
  3. Ctrl+X启动,进入 “只读命令行”,先把根目录改成可写(不然改不了 fstab):
mount -o remount,rw /  # 让根目录可写
  1. 恢复备份的 fstab 文件(之前备份到/home/fstab_backup):
cp /home/fstab\_backup /etc/fstab  # 把备份文件覆盖回去
  1. 重启电脑:reboot,就能正常开机了。

五、踩坑记录:3 个新手最容易犯的自动挂载错误

坑 1:没加nofail,U 盘没插导致开机卡壳

第一次配置 U 盘自动挂载时,没加nofail,结果 U 盘没插,开机卡在 “waiting for device”(等设备),要等 1 分钟才进系统 —— 后来加了nofail,没插 U 盘也能正常开机。

解决:挂载移动设备(U 盘、移动硬盘)一定要加nofail选项。

坑 2:UUID 复制错了,mount -a报错 “can’t find in /etc/fstab”

复制 UUID 时,漏了末尾的 “D”,结果mount -a提示 “UUID=1234-ABC not found”—— 后来重新用blkid查,发现少了一个字符,修正后就好了。

解决:复制 UUID 时,用鼠标选中完整的引号内内容(比如"1234-ABCD"),别手动输,避免错漏。

坑 3:挂载点目录有文件,挂载后原文件被隐藏

我把硬盘挂载到/mnt/data,但/mnt/data里有之前的测试文件,挂载后文件全没了 —— 以为丢了,卸载后才显示。

解决:创建挂载点时,确保目录是空的,用ls 挂载点验证,没输出再用。

六、小结:自动挂载的核心是 “安全配置 + 先测后重启”

  1. 关键参数:UUID(唯一标识)和挂载点(空目录),别用设备路径,避免路径变化导致失效;
  2. 操作顺序:先备份 fstab→编辑→mount -a测试→重启验证,每步都不能少;
  3. 应急方案:改崩 fstab 别慌,进入紧急模式恢复备份,或直接修正错误行。
扫码分享收藏
扫码分享收藏