用 fdisk 好不容易分好区,一挂载就报错,要么提示 “找不到设备”,要么说 “文件系统错误”,新手遇上这种情况,是不是特想砸键盘?其实啊,fdisk 分区后挂载失败是 Linux 里的常见问题,不算难解决,关键是找对原因。今天小编就把自己踩过的坑、网友分享的解决办法全整理出来,新手如何解决 Linux 分区挂载问题,看完这篇你就知道了。
先说说最常见的一个原因 ——没给分区格式化。fdisk 只是把硬盘分成了几个区,但这些分区就像空盒子,没装 “文件系统” 这个 “内衬”,系统根本不认。小编第一次分区时,就傻愣愣地分完直接挂载,结果提示 “wrong fs type”,查了半天才知道忘了格式化。
怎么格式化呢?分好区后(比如设备是 /dev/sdb1),用 mkfs 命令,比如想格式化成 ext4,就输mkfs.ext4 /dev/sdb1
,等它跑完就行。网友 “小张” 说:“我之前格式化成 ntfs,在 Linux 里挂载总出错,换成 ext4 后一次就成功了,可能 Linux 对自家文件系统更友好吧。”
再看另一个坑 ——挂载点不存在。挂载得指定一个目录,比如 /mnt/mydisk,要是这个目录没建,就会提示 “no such file or directory”。解决办法特简单,先建目录:mkdir /mnt/mydisk
,再挂载mount /dev/sdb1 /mnt/mydisk
。小编有次手快,没建目录就挂载,报错后才反应过来,拍了下脑袋赶紧建目录,立马就好了。
还有权限问题,有时候挂载成功了,但进去一看 “Permission denied”,这是因为普通用户没权限访问。可以加权限:chmod 777 /mnt/mydisk
,或者挂载时指定权限,mount -o rw,users /dev/sdb1 /mnt/mydisk
,这样普通用户也能读写了。网友 “李哥” 做服务器管理的,他说:“生产环境别用 777,太危险,最好指定具体用户权限,比如 chown 用户名:用户组 /mnt/mydisk。”
咱们列个表,把常见错误、原因和解决办法放一起,看得更清楚:
错误提示 | 可能原因 | 解决办法 |
---|---|---|
wrong fs type | 未格式化或文件系统不支持 | 用 mkfs 格式化,选 Linux 支持的类型(如 ext4) |
no such file or directory | 挂载点目录不存在 | 先 mkdir 创建挂载点 |
Permission denied | 权限不足 | 用 chmod 或 chown 改权限,或挂载时加 users 参数 |
special device does not exist | 分区设备名错了 | 用 lsblk 查正确设备名(如 sdb1 还是 sdc1) |
mount: /mnt/mydisk: mount point not mounted or bad option | 分区表没刷新 | 重启系统,或用 partprobe /dev/sdb 刷新 |
可能有人会问,怎么知道分区设备名对不对?用 lsblk 命令啊,输lsblk
,就能看到所有磁盘和分区,比如 sdb 下面的 sdb1 就是你分的区,别把 sdb 写成 sdc 了,小编就见过有人把 U 盘当成硬盘分区,挂载当然失败。
还有种情况,分区表没刷新,系统没认出新分区。分好区后最好重启一下,或者输partprobe /dev/sdb
(sdb 是你的硬盘),让系统刷新分区信息。网友 “老王” 说:“我之前分完区直接挂载,提示设备不存在,partprobe 一下就出来了,省得重启挺方便。”
小编最后再啰嗦几句,fdisk 分区后挂载,就像给新房间安门 —— 先刷墙(格式化),再装门框(建挂载点),最后安门(挂载),一步都不能少。遇到错别慌,先看错误提示,对着表找原因,基本都能解决。实在不行,把错误信息复制下来搜一搜,总有大神分享过类似经历。希望这些能帮到你,少走弯路多省时间!