Linux怎么看服务器的磁盘有多大,磁盘空间不足怎么查?

在Linux服务器上查看磁盘大小,最核心的答案就是使用df -h命令查看文件系统占用,lsblk命令查看物理磁盘容量,du -sh命令查看具体目录大小。记住这三个命令,你就能解决绝大多数磁盘排查场景,下面我结合实际运维操作,把各种查看磁盘的招数一次讲透。

linux查看磁盘空间命令有哪些

很多朋友刚接触服务器时,总习惯用图形界面“我的电脑”看硬盘,到了Linux纯命令行的环境就懵了,其实Linux下的磁盘查看命令非常直观,只是需要你换个思路:系统里一切皆文件,磁盘也是一个设备文件,我们主要靠df、du、lsblk、fdisk这四个命令来摸清家底。

Linux操作系统入门:查看磁盘和内存空间
加载中
Linux操作系统入门:查看磁盘和内存空间
p
path-int
9064--
原视频地址

df -h 快速查看已挂载分区使用量

当你登录服务器后,第一件事想知道“硬盘塞了多少东西”,用df -h最直接。df是“disk free”的缩写,-h参数表示以人类易读的GB、MB为单位输出。

df -h

执行后你会看到类似下面的输出:

文件系统 容量 已用 可用 已用% 挂载点
/dev/sda1 40G 23G 15G 61%
/dev/sdb1 200G 150G 50G 75% /data
tmpfs 8G 0 8G 0% /dev/shm

这个命令展示的是“逻辑视图”,也就是系统当前实际挂载使用的情况,其中挂载点这一列最值得关注,如果根分区的已用%达到85%以上,就该考虑清理日志或扩容了,行业共识认为,磁盘使用率超过80%时,文件碎片化会加剧,数据库性能可能明显下降。

lsblk 查看物理磁盘和分区结构

df命令看不到未挂载的磁盘或分区,这时候需要lsblk(list block devices)出场,它会以树状结构列出所有块设备,相当于物理磁盘的总账本。

lsblk

输出示例:

NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0  100G  0 disk
├─sda1   8:1    0    1G  0 part /boot
└─sda2   8:2    0   99G  0 part /
sdb      8:16   0  500G  0 disk
└─sdb1   8:17   0  500G  0 part /data

这里SIZE列直接标明了物理磁盘总容量,比如sda是100G,sdb是500G,如果新加了一块硬盘但没分区格式化,lsblk能看到vdb或sdc出现在列表里,但df里没有对应记录,所以当你在简米云或酷番云上挂载了云盘却发现用不了,先跑一下lsblk准没错。

fdisk -l 查看磁盘详细信息

如果你想看得更细,比如磁盘的分区表类型、起始扇区、文件系统类型,可以用fdisk -l,注意这个命令可能需要root权限。

sudo fdisk -l

它会列出每个磁盘的详细参数,包括磁盘标识符、扇区数量、扇区大小等,对于普通运维排查来说,lsblk已经足够,fdisk -l更多用在分区规划场景。

深入目录排查linux磁盘占用占比

知道总容量后,最头疼的问题通常是:到底是哪个目录把磁盘吃满了? 这时候du命令是你的放大镜。

du -sh 定位大目录

du是“disk usage”的缩写,-s表示汇总,-h表示人类可读,先看根目录下哪个一级目录最大:

sudo du -sh /

这条命令会逐个统计下面每个文件夹的总大小,执行速度取决于文件数量,列出结果后,挑占用最大的那个目录继续深入,比如发现/data占了80G,那就接着查:

sudo du -sh /data/

逐步缩小范围,用“二分法”快速定位罪魁祸首,这个过程虽然朴素,但非常有效。Linux排查磁盘占用,本质上就是从根开始,逐层剥洋葱。

du -h –max-depth 控制统计层级

如果你不想一层层敲命令,可以用--max-depth参数指定递归深度,比如直接查看根目录下2层以内的所有目录大小:

sudo du -h --max-depth=2 / | sort -hr | head -20

这里sort -hr表示按数字大小倒序排列,head -20只取前20行,据说这套组合拳是运维老手最常用的“磁盘大扫除”起手式,一次命令就能锁定可疑目录。

统计某个具体项目的大小

当你怀疑是某个应用目录占用,直接对目标路径执行:

sudo du -sh /var/log/nginx
sudo du -sh /home/user/backup

结果会直接告诉你这个目录总共多大。可以说,du命令是中国服务器管理员排查磁盘满问题时的第一利器。

生产环境实战:linux磁盘满了怎么处理

服务器磁盘满是个折磨人的事故,网站打不开、数据库报错、SSH登录卡顿,这些症状背后往往就是df -h一看,根目录100%,遇到这种情况,按下面三步走。

用find命令揪出超大文件

du看目录,find找文件,查找下大于1GB的普通文件:

sudo find / -type f -size +1G -exec ls -lh {} \;

这个命令会遍历全盘,找出超过1GB的大文件,常见的大文件包括:Nginx日志、Tomcat的catalina.out、MySQL的binlog、Docker的容器日志.json、以及用户上传的临时备份包。

清理systemd日志和临时文件

journald的系统日志是隐藏磁盘杀手,查看日志占用:

journalctl --disk-usage

如果发现日志占了好几GB,清理到只保留最近3天:

sudo journalctl --vacuum-time=3d

/tmp目录和/var/tmp下的临时文件可以直接删除,/var/cache/apt/archives里的软件包缓存(Debian系)也能安全清理。据统计,运维人员日常处理的磁盘告警中,日志文件贡献了相当一部分的现场。

查找被删除但未释放空间的文件

这是Linux系统特有的现象:进程还在往一个已删除的文件里写数据,空间被占用但du查不到,用lsof检查:

sudo lsof | grep deleted

找到对应进程后,重启或kill该进程,空间就会自动释放,在你按du清了一堆文件却发现df没变化时,八成就是这种情况,业内专家指出,这类问题在删除大文件后磁盘占用率依然不减的场景中尤为常见。

linux查看磁盘挂载情况和工作原理

理解了磁盘如何被系统组织起来,你才能更从容地应对容量问题,Linux磁盘管理体系分三层:

  1. 物理磁盘:只要接通电源和线缆,系统就能通过lsblk识别到,对应/dev/sda、/dev/sdb等。
  2. 分区:物理磁盘通过fdisk或parted切割成逻辑区域,分区号为sda1、sda2。
  3. 文件系统与挂载:分区格式化(如ext4、xfs)后,通过mount命令挂载到某个目录,系统才能读写文件。

用mount命令可以查看当前所有挂载点的文件系统类型:

mount | grep -v tmpfs

关注/etc/fstab文件,它定义了系统开机时的自动挂载规则,如果你的新数据盘重启后消失,多半是没写进这个文件,这一套完整流程,市面上很多Linux运维基础教程里都叫它“磁盘管理的黄金链路”。

Linux查看服务器物理磁盘总容量和型号

有时候你不仅想知道用多少了,还想知道这台机器物理上到底接了几块盘、每块盘多大、是机械盘还是固态盘,用lshw和smartctl可以获取硬件级信息。

查看磁盘型号和类型

sudo lshw -class disk

输出会列出设备的product(型号)、vendor(厂商)、size(容量),比如能看到“Samsung SSD 970 EVO 500GB”这样的信息,判断是固态还是机械,主要看型号里是否有SSD、NVMe等字样,或者参数里有“Rotation Rate”字段(机械盘会有5400rpm、7200rpm标记,固态盘没有这一项)。

查看RAID阵列信息

如果服务器做了磁盘阵列(RAID),比如戴尔R740或惠普DL380这类企业级设备,系统层面直接看到的可能是一块“虚拟盘”,需要借助megacli或perccli工具查看底层物理磁盘状态:

sudo megacli -PDList -aALL

你可能会问linux怎么看服务器磁盘有多大是直连盘还是阵列逻辑盘,用这个命令就能看到后端挂了4块或8块物理盘,也能确认是否有盘处于降级状态。这一步在高可用生产环境中至关重要,因为RAID磁盘故障如果不提前发现,意外掉盘可能会导致整站瘫痪。

常见问题快速解答

为什么我云服务器买的是100G硬盘,df -h显示只有99G?

这是正常的容量换算差异,云厂商宣传的100G是十进制(100,000,000,000字节),而Linux用二进制计算(约93.1GiB),加上系统保留块和分区表开销,实际显示少几个G完全正常,以酷番云轻量应用服务器为例,官网标称100G,df -h看到的总和大约在92G至99G之间,都在合理范围。

linux查看磁盘空间命令中i节点是什么?

在df -i命令里,系统还会显示inode使用率。

df -i

inode是文件元数据存储结构,如果你的服务器存了大量小文件(比如程序生成的上百万个缓存文件),磁盘空间没满但inode耗尽,系统同样会提示“No space left on device”,这时需要清理旧文件而不是扩容。

磁盘扩容后系统没有识别怎么办?

如果你在云控制台或物理机上加了磁盘,但Linux里看不到新容量,先让系统重新扫描接口:

echo 1 > /sys/block/sda/device/rescan

对于虚拟化平台如VMware或KVM,可能需要重启虚拟机才能识别,新磁盘识别后,依次执行fdisk分区、mkfs.ext4格式化、mount挂载三步,才能正常使用。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/linux%e6%80%8e%e4%b9%88%e7%9c%8b%e6%9c%8d%e5%8a%a1%e5%99%a8%e7%9a%84%e7%a3%81%e7%9b%98%e6%9c%89%e5%a4%9a%e5%a4%a7%ef%bc%8c%e7%a3%81%e7%9b%98%e7%a9%ba%e9%97%b4%e4%b8%8d%e8%b6%b3%e6%80%8e%e4%b9%88/

赞 (0)
上一篇 2026年10月24日 18:50
下一篇 2026年10月24日 19:04

相关推荐

  • 如何搭建ASP.NET新闻论坛网站?高效建站方案详解

    构建高性能、高安全的新闻论坛交互平台,ASP.NET Core 凭借其强大的企业级能力、卓越的性能表现和严谨的安全架构,成为技术选型中的优选方案,它不仅能支撑海量用户并发访问与实时互动,更能为内容安全与平台稳定提供坚实保障,ASP.NET Core:新闻论坛网站的理想技术栈选择 ASP.NET Core 作为新……

    2026年2月12日
    11100
  • AIoT的龙头是谁?AIoT龙头上市公司有哪些

    AIoT(人工智能物联网)产业已进入爆发式增长期,核心结论在于:具备“芯片+算法+云端”全栈技术整合能力、并在垂直场景实现规模化落地的企业,才真正具备行业统治力,未来的竞争不再是单一硬件的比拼,而是生态系统的角逐,只有打通数据采集、传输、处理到应用全链路的厂商,才能定义行业标准,掌握定价权,技术底座:端云一体化……

    2026年3月14日
    12800
  • linux服务器登录密码忘了怎么找回,重置密码步骤是什么?

    服务器Linux登录密码忘了不用重装系统:只要你能进入云控制台VNC或物理机IPMI,通过单用户模式或救援模式重置密码,通常几分钟就能恢复访问,云服务器linux密码忘了怎么登录?先分清环境再动手服务器Linux密码丢失,处理路径完全不同,核心看两点:这台机器放在哪,你手里有什么控制权,云服务器:直接走厂商控制……

    程序编程 2026年9月23日
    000
  • 戴尔服务器U盘启动怎么设置?,详细步骤是什么?

    戴尔服务器U盘启动设置的核心操作只有两步:开机按F10进System Setup改启动顺序,或按F11进一次性引导菜单选U盘,绝大多数运维场景下,按F11临时引导比改BIOS更省事,但如果要反复装系统,建议直接在F10里把U盘设为第一启动项,戴尔服务器u盘启动怎么设置——F10+F11双路径详解F10系统设置……

    2026年10月5日
    100
  • CSGO社区服务器提示怎么调小,社区服提示音怎么关闭?

    CSGO社区服务器“调小提示”的本质是控制服务器端广播消息的频率、时长和内容,客户端无法单独缩小字号,但可以通过插件配置和客户端指令屏蔽或减少干扰,很多服主一上来就想把屏幕中央那行小字调没,结果翻遍server.cfg也没找到“提示大小”的开关,其实CSGO社区服务器的提示体系分两层:服务器端负责“发什么、发多……

    程序编程 2026年11月1日
    000
  • 为什么LOL手游服务器没开启,什么时候开服?

    英雄联盟手游提示“服务器没有开启”,绝大多数情况下是官方正在停机维护或你所在的地区尚未开放运营,而不是你的设备出了问题,下面我会把常见原因、查询开启时间的路径,以及你自己能操作的排查步骤都拆开讲清楚,lol手游服务器没有开启怎么解决遇到这个提示,先别急着卸载游戏,我总结了一下,触发“服务器没有开启”的场面就那么……

    2026年10月18日
    100
  • 广州硬盘损坏数据恢复有免费的么,损坏硬盘数据恢复免费吗

    广州硬盘损坏数据恢复确实存在免费的解决方案,但仅限于逻辑层轻微故障或软件误删场景;一旦涉及物理损坏(如磁头撞击、盘片划伤),受制于无尘开盘与备件成本,绝无免费可能,广州硬盘数据恢复的免费边界在哪?在探讨免费恢复之前,必须厘清硬盘故障的底层逻辑,根据2026年《中国数据存储安全与恢复产业白皮书》界定,硬盘故障被严……

    2026年4月29日
    5800
  • RepriseHosting美国VPS测评,24.95美元/月实测数据与性能表现,RepriseHosting VPS怎么样,RepriseHosting美国VPS价格

    RepriseHosting 美国 VPS 在 2026 年实测中展现出极高的性价比,其 24.95 美元/月的入门配置在 I/O 读写与网络延迟上均达到行业优秀水平,是中小型企业部署海外业务与个人开发者构建高性能节点的理想选择,在 2026 年云计算市场格局重塑的背景下,RepriseHosting 凭借独特……

    2026年5月11日
    5300
  • 河南移动VDS399元/月配置如何?河南移动VDS价格及配置详解

    河南移动VDS以399元/月的极低门槛提供2GB内存与10TB大流量,是个人开发者、小型企业建站及轻量级应用部署的高性价比首选方案,在云计算市场日益内卷的当下,寻找一款既稳定又便宜的云服务器并非易事,许多用户往往在“低价低质”和“高价冗余”之间徘徊,咕咕云推出的河南移动VDS产品,正是为了解决这一痛点而生,它并……

    2026年6月21日
    2200
  • 连接不到服务器IP地址怎么办,网络连接失败如何修复

    连接不到服务器IP地址,多数情况下不是服务器真的消失了,而是你本机的网络路径、防火墙规则或DNS解析出了问题,先别急着重装系统,按下面的顺序排查,大概率能自己解决,连接不到服务器ip地址是什么原因遇到连不上服务器,第一反应是找服务器商报修,这其实有点冤枉人家,根据行业共识,超过一半的“连不上”问题出在客户端这一……

    程序编程 2026年11月4日
    100

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注