在银河麒麟系统中,想要精准掌握各磁盘分区的实际占用比例——无论是排查“磁盘空间不足”问题、进行日常运维巡检,还是判断哪些分区已逼近容量上限——图形界面往往力有不逮。尤其像磁盘空间分析工具这类图形程序,只能展示 /home 内部的文件夹结构,完全无法反映 /boot、/var 或根分区的真实压力。此时,终端里的三条命令就能彻底查清底细。

用 df -h 查看所有挂载点的占用百分比
这是最基础也最权威的方式——直接从内核维护的文件系统统计信息中读取数据,输出中的 【Use%】 列就是您需要的核心指标。
打开终端(快捷键 Ctrl + Alt + T),输入 df -h 并回车。重点关注 【Target】 列中的 /、/home、/boot、/var 等挂载点,它们右侧的 【Use%】 数值直接表明对应分区的已用比例。举个例子:如果某行显示 /dev/mapper/klas-root 50G 45G 5.0G 90%,说明根分区已占用九成,需要考虑扩容或清理。
想自动将高占用分区排在前面?试试 df -h | sort -k5,5nr。不过要注意:输出中会混入 tmpfs、udev 等虚拟文件系统,它们的 Use% 没有实际意义,直接忽略即可。
用 lsblk 验证分区与物理设备的对应关系
df 告诉你“挂载点用了多少”,但你还需要知道这个挂载点背后对应的是哪块物理盘、哪个分区——否则扩容或清理时很容易找错目标。
在终端执行 sudo lsblk -o NAME,FSTYPE,SIZE,MOUNTPOINT。逐行比对 MOUNTPOINT 列非空的条目(例如 /dev/sda2 → /),确认其 SIZE 是否与上一步 df 输出中对应 Target 的总容量基本一致。如果不一致,说明挂载路径可能被覆盖,或存在嵌套挂载——这种情况下 df 看到的分区容量不一定就是您想的那块盘。
特别注意那些 MOUNTPOINT 为空的设备节点(比如 /dev/sdb1)。这些是真实存在的物理分区,但尚未挂载——因此不会出现在 df 结果中,也不会计入任何 Use% 数据。它们的空间当前完全不可用,排查磁盘问题时可别忽略了它们的存在。
定位高占用目录:用 du 逐层下钻分析
假设 df 显示 /home 占用率高达 95%,但您需要找出具体是哪些文件在消耗空间。这时应进入挂载点内部,一层层向下排查。
第一步:cd /home 进入目标挂载点的根目录。
第二步:du -sh * | sort -hr | head -n 5 列出当前目录下体积最大的前5个子项。-sh 保证单位自动适配(K/M/G),sort -hr 按人类可读大小逆序排列。
第三步:对异常大的子目录(比如 user1)重复执行 du -sh user1/* | sort -hr | head -n 3,继续向下钻取。这一步必须手动推进,不能指望一条命令直接定位到罪魁祸首——大文件往往藏在深层子目录中。
几个需要警惕的细节:du 统计的是文件实际占用的磁盘块,而非文件大小;硬链接只计算一次,软链接不计算在内。如果某目录权限不足,du 会报 Permission denied 并跳过该路径——此时需要加 sudo 提权,但加 sudo 后要小心别误删系统关键目录。毕竟权限越大,责任越大。
