unix 文件清理一例
admin
2023-02-03 22:00:09
0
unix环境下,经常会遇到一种情况,就是存放日志的文件目录满了,需要进行清理。通常来说,日志文件具有一定的时效性,例如一周,超过一周的日志文件就可以进行清理(以应用日志为例,数据库ARCH日志,以是否备份完成为标准)。
在windows环境下,我们可以用图形界面,根据时间排序,然后用鼠标框选文件,然后按下delete键,多方便。可是在unix字符界面下,我们没有鼠标,没有框选,只能使用命令了,下面我们就介绍下如何通过命令简单快速的实现我们的需求。
首先,我们来假设一个应用场景:
接到文件系统使用率告警,目前主机dbaleading1上的/u01目录满了,需要进行清理。
接到这个case后,首先做理论分解,该怎么去思考。
1. 首先,/u01目录肯定有很多子目录,必须得先找到是哪些子目录占用了大部分的空间,如果要清理空间,肯定是清理占用空间多的。
2. 找到占用空间大的目录后,需要知道该目录中存放的是什么文件。
3. 根据文件,确定清理策略后(如保留7天,后缀为.log的应用过期日志文件),要根据策略,将需要清理的数据,筛选出来;
4. 对筛选出来的文件,进行清理。

理论分析清楚了以后,我们按照步骤,一步步来实现,过程很简单,重要的是,我们在日常运维中,特别是重要系统中做操作的时候,一定要知道自己做的是什么,会有什么样的影响,毕竟,我们是系统的最后一道防线。

1. 在windows下,我们可以点文件夹,右键,查看属性,就可以知道文件夹大小,在unix字符界面下,我们采用sort排序的方式,命令如下:
[root@dbaleading1 ~]# cd /u01
[root@dbaleading1 u01]# du -sk * | sort -n
有关具体命令的作用,语法等等,可以用 man工具查看,如unix下输入 man du,就会出现du的命令手册。

2. 假设发现/u01/log目录占用空间比较大,则进入/u01/log目录,使用 ls -ltr命令查看该目录内的具体文件信息,如果仍然存在多个文件夹,则重复第一步。目前的场景,我们假设该目录中,存放了大量的应用日志文件,以.log结尾。

3. 发现大量应用日志占用空间,根据策略,我们需要把7天前的日志文件给删除了,这一步,我们使用find命令来实现,如下:
[root@dbaleading1 ~]# find . -mtime +7 |xargs ls -lrt
在这个命令中,主命令是 find . -mtime +7 ,其意义是在当前目录中,寻找创建时间大于7天前的文件,管道命令|xargs ls -lrt的作用,是把这些文件按照时间顺序排列好,然后显示出来。

4. 如果第3步中的文件经过确认,可以删除的,那么,把管道命令中的ls命令替换成删除命令就可以了,如下:
[root@dbaleading1 ~]# find . -mtime +7 |xargs rm -fr

5. 完成清理后,我们再通过命令 df -m ,进行复查,确认无误后,这个处理流程就全部完成了。


相关内容

热门资讯

急派超百名军医,美国准备地面战... 在加大空袭力度的同时,美军持续向中东增派战机、特种作战力量和后勤保障人员。与此同时,美军高层承认,单...
唐驳虎丨王虹、邓煜同获菲尔兹奖... 作者丨唐驳虎核心提要1. 本届国际数学家大会上,北大数院2007级校友王虹、邓煜同获菲尔兹奖,成为首...
菲尔兹奖获得者邓煜:爬山时破解... 作者:周盛楠 王僖妍·邓煜。(受访者供图)2026年7月23日,注定是改写中国数学历史的一天。邓煜、...
中国籍数学家王虹获菲尔兹奖 当地时间7月23日上午,2026年国际数学家大会在美国费城开幕,现场揭晓2026年菲尔兹奖得主。中国...
首次突破 屡创新高!一组数字解... 2026年上半年我国GDP同比增长4.7%经济韧性持续彰显在已经出炉的经济数据中更值得关注的还有“含...
男主播卖惨,66岁患癌老太花光... 今年3月,沈阳66岁的张阿姨在家养病期间刷视频时,被一名IP属地为湖北的男主播吸引。该主播主打演唱经...
松下智能马桶盖不喷水怎么回事 松下智能马桶盖不喷水怎么回事1、有时候新买的马桶在安装的时候工人有时候会不会告诉你需要开进水阀的,智...
松下智能马桶盖不喷水 1、有时候新买的马桶在安装的时候工人有时候会不会告诉你需要开进水阀的,智能马桶都是带有进水阀的,如果...
智能马桶盖不喷水故障维修方法 如果是出水口不喷水,先检查下是不是里面没水,或者水管出问题了,水管故障问题需找专业的维修师傅维修;若...
马桶水箱盖子碎了能换么 不能,建议更换整个水箱。方法:先检查排污管及产品内通道是否有异物;确定固定蹲便的安装位置、高度以及将...