Linux查找系统中占用磁盘空间最大的文件的几种方法

Q:下午有一客户磁盘空间占用很大,使用df查看磁盘剩余空间很小了,客户想知道是哪些文件占满了文件。

  • Q1:在Linux下如何查看系统占用磁盘空间最大的文件?
  • Q2:在Linux下如何让文件夹下的文件让文件按大小排序?

A:

不知您是否遇到过这样的问题,服务器上架没多长时间磁盘怎么装满了。

分析:大多是由于日志没有轮滚,可以使用脚本或logrotate将日志定期备份删除或直接关闭不需要的日志记录功能。51开源社区帖子有相关 各种服务器日志的处理方法。接下来你会想起来去apache和mysql或其他应用服务器的日志文件所在的路径。进入相应的日志路径后发现果然是日志惹的 祸,删除日志,关于日志轮滚请参照51开源社区其他帖子。但这并不是本文的主题所在。 假如是其他文件占用了磁盘空间,如何查出来呢。我主要使用find和du命令。

使用find命令找到大于指定大小的文件:

[root@localhost data]# find / -type f -size +10G

将输出:

<pre class="<a href=" http:="" www.ahlinux.com="" perl="" "="" target="_blank" style="margin-top: 0px; margin-bottom: 0px; padding: 0px;">perl">/usr/ local/ apache2/logs/access_log

马上可以通过du命令查看此文件的大小:

[root@localhost data]# du -h /usr/local/apache2/logs/access_log
24G     /usr/local/apache2/logs/access_log

我们可以重复执行find命令来查找大文件,例如: find / -type f -size +5G 找到大于5G的文件。 find / -type f -size +1G 找到大于1G的文件

在Linux下如何让文件夹下的文件让文件按大小排序?

有两种方法。

  • 方法一:# ls -lhSl 长格式显示,h human readable模式,大小单位为M,G等易读格式,S size按大小排序。
  • 方法二:# du -h * | sort -n

当然您也可以结合管道查看文件夹内最大的几个文件或最小的几个文件, 再加上管道符号和head或者tail命令即可 du-h * | sort -n|head du -h * | sort -n|tail

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值