在 CentOS(以及大多数 Linux 发行版)里,“挂载点丢了”通常不是真的消失,而是被覆盖 / 被自动清理 / 配置没持久化这几类原因。下面按常见场景给你梳理一下。
一、最常见原因:挂载点目录被覆盖(看起来像“丢了”)
这是 90% 的“mount 后挂载点没了” 的原因。
场景
mount /dev/sdb1 /data
然后你发现:
/data里原来的文件不见了- 或者重启后
/data是空目录
原因
/data本来是一个普通目录- 挂载后,原目录内容被“遮住”
- 卸载后内容又回来了
✅ 这是正常行为,不是丢
umount /data
ls /data # 原来的文件还在
二、重启后挂载消失(没写 fstab)
现象
mount /dev/sdb1 /data
# 重启后 /data 是空的
原因
mount是临时生效- 重启后需要重新挂载
解决
写入 /etc/fstab
/dev/sdb1 /data xfs defaults 0 0
或 UUID 方式(推荐):
UUID=xxxx-xxxx /data xfs defaults 0 0
验证:
mount -a
三、systemd 自动卸载(automount / 空闲卸载)
CentOS 7/8 常见。
场景
- 使用
autofs - 或
x-systemd.automount
/dev/sdb1 /data xfs x-systemd.automount 0 0
表现
- 不访问时挂载点“消失”
- 一访问又自动挂载
✅ 这是设计行为
四、LVM / 设备名变化导致挂载失败
现象
- 重启后
/dev/sdb1变成/dev/sdc1 - fstab 挂载失败
解决
永远用 UUID 或 LVM
blkid
UUID=xxx /data xfs defaults 0 0
五、nfs / 网络挂载掉线
现象
- NFS 挂载后过段时间“没了”
df卡住
原因
- 网络中断
- 服务端超时
建议参数
server:/path /data nfs defaults,timeo=30,retrans=3,_netdev 0 0
六、目录被误删或权限问题
ls -ld /data
如果不存在:
mkdir /data
chmod 755 /data
七、如何快速自查(建议收藏)
# 当前挂载
mount | grep data
# 是否写了 fstab
grep data /etc/fstab
# 设备是否还在
lsblk
# UUID
blkid
总结一句话
CentOS 里“mount 丢挂载点”基本不是真丢,而是:
- 临时挂载没写 fstab
- 目录被挂载覆盖
- 设备名变了
- systemd / nfs 自动卸载
如果你能贴一下:
mount命令fstab- 是 重启后丢 还是 立刻丢
我可以直接帮你定位是哪一条。