0


/dev/mapper/centos-root 100% 目录空间占满了 解决方法

今天突然遇到公司一个平台 验证码无法加载 查看redis nginx nacos上开的服务也都正常 后来重启验证码相关服务 开一会又挂了。经查日志发现是系统盘沾满了

[root@redis-zuul-eureka-mysql ~]# df -h //查看到/dev/mapper/centos-root 100% 满载了

解决方法:

[root@redis-zuul-eureka-mysql ~]# cd /root //进入根目录

[root@redis-zuul-eureka-mysql ~]# du -h -x --max-depth=1 //查看文件占用大小

发现logs目录占用空间过大达到45G

[root@redis-zuul-eureka-mysql ~]# cd /root/logs //继续查看目录下是什么内容

发现csp目录下有大量文件占了45G多 主要是日志文件 sentinel-record.log 之类的

进入到目录下查看

[root@redis-zuul-eureka-mysql ~]# cd /root/logs/csp //进入占用大量文件目录

[root@redis-zuul-eureka-mysql ~]# ll //展示文件 ,可以用cat sentinel-record.log 查看下具体是什么内容 如果确定是没用的日志 删掉就可以释放空间了

于是按指定日期删除对应文件即可(删除前请确认是没用的文件啊。我这里是没用的)

执行删除命令 以下命令代表删除180天前的日志 //时间根据自己需求修改即可。因为我这里比较多 一个一个删除不现实【单个删除文件直接rm -rf 文件名即可】

[root@redis-zuul-eureka-mysql ~]# find /root/logs/csp -mtime +180 -name ".log" -exec rm -Rf {} ;

语句写法

find 文件路径 -mtime +天数 -name "文件名" -exec rm -rf {} ;

-mtime : 标准语句写法

-exec : 固定写法

"*.log" : 代表所有 ,.log代表后缀为.log的所有文件

{} \ : 固定写法

改完后 空间多了很多了。问题解决咯

题外扩展 :

find 的选项:

find /root/logs {-atime /-ctime /-mtime /-amin /cmin /-mmin}

-mtime [-n|n|+n] 按照文件的修改时间来查找文件 [-n 文件更改距离现在n天以内,+n表示文件更改时间距离现在n天以前,n是距离现在第n天]

-atime [-n|n|+n] 按照文件的访问时间来查找文件

-ctime [-n|n|+n] 按照文件的状态改变时间来查找文件

a 、c、m分别对应Access 、Change 、Modify三项 ; time表示天 min表示的是分钟

Access time(atime): 文件最近一次被访问的时间,使用cat命令之后,这个值便会发生变化。

Modify time(mtime):文件内容最近一次被修改的时间。

Change time(ctime): 文件属性最近一次被修改的时间。指文件被变更的时间,这个变更是指文件内容发生修改或者文件权限,路径发生改变。

示例:

查找10天之内修改过的文件 find /root/logs -mtime -10

查找从今天起往前算10天查看过的文件 find find /root/logs -atime 10

查找10天前修改过的文件 find find /root/logs -mtime +10

标签: centos linux 运维

本文转载自: https://blog.csdn.net/weixin_52998454/article/details/130431505
版权归原作者 liuxp2021 所有, 如有侵权,请联系我们删除。

“/dev/mapper/centos-root 100% 目录空间占满了 解决方法”的评论:

还没有评论