运维日常-清理linux磁盘

一、针对大文件类型日志

今天找到了一个17G的nginx日志(崩溃),一般情况下我们在设置日志的时候,会设置单个日志文件的最大值,超过就会进行分割,还会设置保留天数。但是由于规范问题,还是会出现意料之外的大文件

# 查找大于100兆的文件
find / -type f -size +100M -print0 | xargs -0 du -h | sort -nr

在这里插入图片描述

二、针对小文件堆积成大文件夹

当日志文件都是小文件,但是积累了很多。这个时候通过查找大文件的方式就无能为力了。这个时候需要通过查找linux下大文件目录来找到了。

# 查看/var/log目录下第一层级所有文件夹大小
du -h /var/log --max-depth=1 | sort -nr 

# 当文件夹太多的时候,可以使用排序,获取前5个。但是要统一单位
du -hm /var/log --max-depth=1 | sort -nr | head -5

参数解析

  • -h 带单位,自适应单位类型
  • -hm 使用M为单位
  • –max-depth=1 指定文件夹下的第一层级文件夹大小
  • sort -nr 排序
  • head -5 取前5个

三、清理日志

对于历史日志,可以直接通过rm -rf删除

对于正在输入的日志,如果直接通过 rm -rf 删除日志,我们可以通过df -h发现磁盘并没有释放。

原因是在Linux或者Unix系统中,通过rm -rf或者文件管理器删除文件,将会从文件系统的目录结构上解除链接(unlink)。如果文件是被打开的(有一个进程正在使用),那么进程将仍然可以读取该文件,磁盘空间也一直被占用。正确姿势是cat /dev/null > 文件名

四、参考博客与文档

https://www.cnblogs.com/gspsuccess/p/9262140.html
https://www.cnblogs.com/nshgo/p/12916059.html
https://blog.csdn.net/weixin_41945228/article/details/104331479

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值