温馨提示×

为什么linux mount消失

小樊
41
2026-09-05 10:19:04
栏目: 智能运维

在 Linux 中,**已经 mount 的挂载点“消失”**通常有以下几种常见原因,按出现频率从高到低说明:


1️⃣ 系统重启(最常见)

  • mount 是内存中的状态,不是持久化的
  • 重启后如果没有写进 /etc/fstab,挂载会消失

✅ 解决:

# 查看是否已配置
cat /etc/fstab

# 添加示例
/dev/sdb1  /data  ext4  defaults  0 0

2️⃣ 手动 umount 或被自动卸载

可能原因:

  • 你或脚本执行了:
    umount /mnt
    
  • 系统自动卸载(设备异常)

查看历史:

history | grep umount
journalctl -xe | grep umount

3️⃣ 设备断开 / 网络存储掉线

本地磁盘

  • 硬盘掉电
  • USB 被拔出
  • 磁盘故障

网络挂载(NFS / CIFS)

  • 网络中断
  • NFS server 挂了
  • 超时自动断开

表现:

df -h
# 卡住或挂载点消失

日志:

dmesg | tail
journalctl -xe

4️⃣ systemd 自动 unmount(尤其临时挂载)

如果你 mount 到:

  • /mnt
  • /media
  • 非标准目录

systemd 可能会在空闲或异常时自动卸载。

✅ 解决:

  • 使用固定目录(如 /data
  • 或写入 /etc/fstab

5️⃣ 容器 / chroot / 命名空间问题

  • Docker / Kubernetes 中:
    • 宿主机 mount,容器里看不到
    • 容器退出,mount 消失
  • mount 在不同 mount namespace 中不可见

检查:

cat /proc/self/mountinfo

6️⃣ 挂载点被覆盖

例如:

mount /dev/sdb1 /mnt
mkdir /mnt/test
mount /dev/sdc1 /mnt

后一个会“盖住”前一个


7️⃣ 权限或 SELinux 导致“看起来消失”

  • 实际还在
  • 但用户无权限访问

检查:

ls -ld /mnt
getenforce

快速排查清单 ✅

mount | grep 关键字
df -h
lsblk
dmesg | tail
journalctl -xe
cat /etc/fstab

如果你愿意,可以告诉我:

  • 本地盘 / U盘 / NFS / Docker
  • 重启后消失 还是 运行中突然消失
  • 相关命令或日志

我可以更精准帮你定位原因。

0