前阵子帮人收拾一台重装完麒麟系统的机器,开机进桌面后,打开“计算机”,屏幕上就剩一个系统盘图标,原来分好的数据盘、备份盘全没了。第一次遇到这种问题的朋友大概率会慌:分区图标消失,第一反应要么是硬盘坏了,要么是数据被重装过程清掉了。其实这两样都未必,绝大多数情况下,是分区仍然静静躺在磁盘里,只是系统没有把它们挂载起来,文件管理器自然也就无图可显。这篇文章就把“麒麟系统重装后文件系统分区图标消失”这件事从头到尾讲透,包括现象判断、根因分析、排查命令、挂载配置,以及重装前后的防患措施。新手能照着操作,老手也能看看有没有漏掉的细节。
1. 重装系统后分区图标消失:现象描述与两个常见误判
1.1 计算机界面里到底缺了什么
麒麟系统的文件管理器打开“计算机”后,通常会列出系统磁盘的各个分区,每个分区一个图标,点进去就能看到里面的文件。重装系统后如果这些图标不显示,表面上看到的场景是:左侧侧边栏里只有系统分区和几个系统目录(比如“文档”“下载”),右侧主区域里可能只剩一个卷宗图标,其他数据分区的入口完全消失。
这里要搞清楚一个概念:文件管理器里显示的分区图标,实际上代表的是“已挂载的文件系统”。Linux系统不像某些桌面系统那样把所有物理分区都自动摆在桌面上,它必须通过挂载(mount)把某一个分区绑定到一个目录上,文件管理器再把这个挂载关系展示成一个图标。所以“图标消失”的本质,是这些分区当前没有被挂载到系统的目录树里,而不是分区本身出了问题。
1.2 误判一:硬盘坏了,数据没了
很多人看到磁盘图标消失,第一反应是进BIOS看硬盘还在不在,或者用各种工具去扫描坏道。实际上,重装系统只动系统盘上的引导和系统分区,正常情况下不会去清除其他数据分区的内容。只需要打开终端执行一条lsblk,就能看到所有物理分区依然存在,容量、文件系统类型都还在。数据分区没有损坏,只是暂时没有挂载入口而已。
1.3 误判二:重装时不小心清了盘
另一种常见的恐慌是怀疑自己重装时误操作,把整个磁盘都格式化了一遍。这个判断其实很容易验证:如果系统安装过程中选择了“全盘清除”,那么你在计算机界面里看到的就不会是“缺几个图标”,而是整个磁盘只有一个系统分区。数据分区哪怕没挂载,在lsblk里也会以独立分区身份出现,后面挂着文件系统类型标签,比如ext4或ntfs。只要这些标签还在,数据就基本安全,剩下的就是重新挂载的事情。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 根因拆解:文件管理器的分区图标到底从哪里来
2.1 分区、挂载点与图标的可视化链路
想彻底理解这个故障,得先明白Linux桌面环境里“分区图标”的产生链路。一块磁盘可以划分成多个分区,每个分区有自己的文件系统,比如ext4、NTFS、exFAT。文件系统本身是树状目录结构,但如果它不挂载到系统根目录的某个位置,用户就无法通过目录方式访问它。
挂载之后,系统目录树上就有了这个分区的“入口”。文件管理器会扫描当前所有挂载点,并且把挂载在固定位置的知名目录(比如/media、/mnt、/run/media/用户名)以图标形式展示在侧边栏或者“计算机”界面里。如果分区压根没挂载,文件管理器自然扫描不到,图标就不存在。
这就好比一个仓库里堆着货物,管理员手里拿着钥匙,但仓库的门没开,外面的人从橱窗往里看,会以为仓库是空的。重装系统这件事,本质上就是换了一套新的“物业管理处”,新管理处只知道自己家的门(系统分区)在哪,其他仓库的钥匙和门牌号全都没交接。
2.2 重装系统到底改变了什么
重装系统的过程中,安装程序会重建引导管理器、写入新的系统分区,并且生成一套全新的挂载配置文件。这类配置文件在Linux里通常是/etc/fstab,它记录了系统启动时应该自动挂载哪些分区、挂载到哪里、用什么文件系统类型。
这里有个关键点:重装前的fstab里可能有其他数据分区的挂载记录,但重装时会覆盖整个系统分区,旧的fstab也就被新的替代了。新生成的fstab往往只有系统分区和引导相关分区的条目,其他数据分区一概不管。于是开机后,系统默认只挂载系统盘,其他分区静默缺席,图标自然不出现。
2.3 为什么数据还在却不显示:挂载与数据安全的关系
很多不熟悉Linux的朋友会把“不挂载”和“数据丢失”画等号,这里特别说明一下。分区里的数据是以二进制形式存储在磁盘扇区上的,挂载只是让操作系统能够通过目录路径去访问这些数据。没有挂载时,数据依然原封不动地躺在磁盘上,谈不上丢失。
也就是说,重装系统后分区图标消失,问题不在物理层和数据层,而在“挂载配置层”。只要分区没有被格式化、没有被新系统的安装过程覆盖,数据就是安全的。搞清楚这一点,后面的排查和修复心态就能放稳。
注意:如果重装系统时你主动选择了“删除所有分区并重新创建”或者“清空整个磁盘”,那就属于另一回事了。这时数据是真的被擦除了,靠挂载配置也救不回来,只能找专业数据恢复手段。所以重装前的备份习惯比什么都重要。
3. 排查三步:用命令确认分区状态并定位问题层级
3.1 第一步:用 lsblk 看磁盘的整体布局
思路很简单:先搞清楚硬盘上的分区到底还在不在。打开终端,输入:
bash复制lsblk -f
这条命令会列出所有磁盘和分区,并显示文件系统类型、文件系统标签、UUID、挂载点。看到类似下面的输出就很清晰:
text复制NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 vfat 1234-ABCD /boot/efi
├─sda2 ext4 5678-... /
├─sda3 swap 9abc-... [SWAP]
└─sda4 ext4 数据盘 def0-...
注意sda4这一行,文件系统类型ext4、标签“数据盘”、UUID都在,但最后一列MOUNTPOINT是空的。这就是问题所在:分区存在、数据可读,但系统没有给它挂载点。看到这个输出,可以基本放下心来,接下来要做的就是让系统认识它、挂上它。
3.2 第二步:用 df 和 mount 确认当前挂载状态
lsblk能看全貌,df和mount能看当前实际挂载了哪些文件系统。
bash复制df -hT
df输出里会列出所有已挂载的文件系统、使用率、挂载点。如果数据分区的路径没有出现在df结果里,说明它当前确实没挂载。
bash复制mount | grep ^/dev
mount输出的内容更多,可以看到挂载选项等信息。这一步的目的不是做复杂分析,而是确认一个事实:系统当前没有自动挂载数据分区。排查到这里,故障范围已经收窄到“挂载配置”这一层了。
3.3 第三步:用 blkid 记录分区的 UUID 备用
后面要配置开机自动挂载时,最稳妥的做法是使用UUID来标识分区,而不是用设备名(比如/dev/sda4)。原因是设备名可能随着硬盘接口、启动顺序变化而改变,同一块分区这次可能是sda4,下次启动可能变成sdb4,但UUID是文件系统创建时生成的唯一标识,基本不会变。
bash复制blkid
执行后记住数据分区的UUID,格式大概是/dev/sda4: UUID="def0-..." TYPE="ext4"。这个UUID稍后会写进/etc/fstab里。其实这一步也可以在准备好写配置时再执行,但提前执行的好处是能让思路更清晰:先确认分区身份,再确认挂载状态,最后改配置,一步步来,不容易乱。
下面把三个命令的核心作用整理成一个表,方便对照:
| 命令 | 作用 | 关键看什么 |
|---|---|---|
lsblk -f |
查看磁盘分区布局 | 分区是否存在、文件系统类型、UUID、是否已有挂载点 |
df -hT |
查看当前已挂载的文件系统 | 数据分区是否出现在结果里,没有则没挂载 |
blkid |
查看分区的UUID和类型 | UUID、TYPE,后面写fstab要用 |
4. 解决过程:手动挂载、开机自动挂载与桌面显示复原
4.1 手动挂载验证:先确认数据可读
排错时不要直接改配置文件,先做一次手动挂载,验证分区能不能正常读写。这一步能避免“配置写了,启动后挂载失败”这种更麻烦的局面。
先用mkdir创建一个测试用挂载点,比如:
bash复制sudo mkdir -p /mnt/data_test
sudo mount /dev/sda4 /mnt/data_test
注意设备名要根据自己的lsblk输出调整,我这里只是举例。挂载成功后,进入目录看一眼:
bash复制ls /mnt/data_test
能列出原来的文件夹和文件,说明分区健康,数据完整,接下来可以做自动化挂载配置了。如果挂载报错,比如提示“wrong fs type”或者“bad option”,那就要先确认文件系统类型是否正确、驱动是否完整,尤其是NTFS和exFAT分区,后面会专门说。
手动验证完成后,可以顺手卸载掉这个临时挂载点,保持干净状态再写配置:
bash复制sudo umount /mnt/data_test
4.2 配置开机自动挂载:修改 fstab 并验证
要让数据分区在每次开机时自动挂载、图标自动出现,需要把它写进/etc/fstab。先把文件备份一份,养成好习惯:
bash复制sudo cp /etc/fstab /etc/fstab.bak
然后用文本编辑器打开:
bash复制sudo vim /etc/fstab
在文件末尾追加一行,格式如下:
text复制UUID=你的数据分区UUID /挂载点 文件系统类型 defaults 0 2
举个例子,如果数据分区的UUID是def0-...、文件系统是ext4、想挂载到/data,则写:
text复制UUID=def0-... /data ext4 defaults 0 2
这里把fstab六个字段的含义说清楚,方便对着改:
| 字段 | 含义 | 示例 |
|---|---|---|
| 第1列 | 设备标识,推荐用UUID | UUID=def0-... |
| 第2列 | 挂载点目录,必须已存在 | /data |
| 第3列 | 文件系统类型 | ext4、ntfs-3g、exfat |
| 第4列 | 挂载选项 | defaults、nofail |
| 第5列 | 是否用dump备份,通常填0 | 0 |
| 第6列 | 开机时fsck检查顺序,系统分区填1,其他填2,不需要检查填0 | 2 |
这里特别提一下nofail这个选项。如果数据分区在开机时因为某些原因没挂上,加了nofail,系统不会因为挂载失败而卡在启动流程里,而是跳过它继续启动。对数据盘、移动盘这类非系统必需分区,我个人建议加上:
text复制UUID=def0-... /data ext4 defaults,nofail 0 2
改完后执行挂载测试:
bash复制sudo mount -a
如果配置正确,不会有任何报错,再用df -hT或者lsblk -f查看,应该能看到数据分区已经挂载到指定位置了。重启一次系统再确认,确保开机自动挂载真正生效。
提示:挂载点的目录如果还没创建,记得先
sudo mkdir -p /data这样的命令创建好。目录必须存在,否则挂载会失败。
4.3 让分区图标回到计算机界面
挂载完成后,分区图标不一定立刻出现在“计算机”主区域。这里还会牵扯到桌面环境层面的两个因素:一是自动挂载服务是否正常运行,二是文件管理器的显示设置。
麒麟系统这类桌面Linux发行版,通常依赖udisks2服务来管理和展示可移动存储设备。检查它是否在运行:
bash复制systemctl status udisks2
如果服务状态不是active (running),启动它:
bash复制sudo systemctl start udisks2
sudo systemctl enable udisks2
然后重启文件管理器或者重新登录桌面。大多数情况下,分区会出现在侧边栏的设备和“计算机”主界面里。
如果已经挂载、udisks2也正常,但“计算机”里还是不显示图标,那就去文件管理器的“首选项”或“设置”里找找“显示内置硬盘分区”“显示已挂载的卷”之类的选项。不同版本的麒麟系统界面措辞略有差异,但逻辑是一样的:文件管理器可以选择性地隐藏某些挂载设备。把对应的显示开关打开,图标就会回来了。
另外还有一个知识点值得知道:很多Linux桌面环境只会把挂载在/media、/run/media/用户名这类标准目录下的分区显示为“可移动设备”图标;如果自己手动挂载在/data这种自定义目录,它依然能被访问,但可能不会出现在文件管理器的侧边栏分区列表里。如果想要它显示得和系统盘一样直观,可以先把分区挂载到/media下的子目录,或者挂载在/run/media/当前用户名目录下。不过我个人的习惯是自定义一个直接目录,路径短、好输入,桌面显示方面如果有需要再做配置。
5. 复盘与防患:重装系统的前后准备与常见坑
5.1 重装之前:提前备份挂载信息
这次故障解决完,复盘时最有价值的动作是:把分区的关键信息提前记录下来。具体来说,在重装系统前,打开终端执行一条命令:
bash复制blkid > ~/分区信息备份.txt
同时把当前/etc/fstab的内容复制一份,保存到U盘或网盘。重装完成后,如果分区图标消失,直接参照备份里的UUID和挂载点信息写fstab,基本十分钟就能恢复原状,不用再去挨个盘猜。
有人会问,重装前记录的UUID重装后还有效吗?有效。UUID是格式化文件系统时生成的唯一标识,重装系统只会重写系统分区,不会改动数据分区的文件系统本身,所以UUID不会变。这也是我反复强调“用UUID而不是设备名”的原因——设备名/dev/sda4可能漂移,UUID则稳得很。
5.2 重装之后:开进桌面前的快速检查
重装完系统后,可以先不急着打开文件管理器找图标,先做一次快速体检:
bash复制lsblk -f
确认所有数据分区都在;再执行:
bash复制blkid
把输出的UUID保存下来;然后对照分区信息备份,把缺失的分区挂载条目写进新fstab。这套流程走完,再打开“计算机”,所有分区图标应该都会正常出现。整个过程大概十分钟,比遇到问题后再临时排查要省心得多。
5.3 容易被忽略的坑:NTFS 和 exFAT 分区的额外步骤
如果你的数据分区是NTFS(比如之前Windows系统用的分区)或者exFAT(常见于移动硬盘),光靠系统自带驱动不一定能读写。麒麟系统的软件源里通常有对应的支持包,需要先安装:
bash复制sudo apt update
sudo apt install ntfs-3g exfatprogs
装完之后,fstab里对应的文件系统类型要写对:NTFS分区写ntfs-3g,exFAT分区写exfat。例如:
text复制UUID=xxxx-xxxx /mnt/windows ntfs-3g defaults,nofail 0 0
顺带提一个容易踩的坑:如果之前安装了Windows和麒麟双系统,而Windows开启了“快速启动”功能,NTFS分区可能会处于一种“未完全卸载”的状态。这时候在Linux里挂载NTFS分区,可能会提示“已经挂载”或“设备忙”。解决办法是进Windows关闭快速启动,或者重启Windows后先正常关机一次,再回到Linux挂载。这个问题和分区图标消失是两码事,但经常一起出现,挂在同一台机器上,容易让人误判。
5.4 千万不要做的两件事
最后说两个我在实际指导中反复提醒的禁忌。第一,分区没挂载就急着格式化。有人看到分区图标没了,以为分区损坏了,直接进磁盘管理工具重新格式化,结果数据彻底清空,追悔莫及。只要lsblk -f里分区类型还在,数据就还在,缺的只是挂载配置,格式化解决不了任何问题,只会制造更大的问题。
第二,做完fstab配置后,不要跳过mount -a验证直接重启。万一写错了挂载点或者文件系统类型,重启时系统可能卡在等待挂载的环节,或者出现紧急模式。先执行mount -a,再执行df -hT看一眼挂载结果,稳妥得多。如果mount -a报错,及时用备份的fstab.bak恢复就行。
我自己这几年给不同机器做过很多次类似处理,重装系统后分区图标消失出现频率相当高,但每次的原因基本都能归到挂载配置丢失这一条上。解决问题的路径也高度一致:先lsblk -f确认分区健在,再写UUID进fstab,再mount -a验证,最后让文件管理器显示设备。熟练之后整个过程不到十分钟。希望这篇总结能帮遇到同样问题的人少走弯路,特别是那种“图标没了以为硬盘坏了”的无效焦虑,完全没必要。
