1. 查看当前本地磁盘的使用率概况,按目录来统计大小排序。
# df -h[root@Sp monitor]# df -hFilesystem Size Used Avail Use% Mounted on/dev/xvda1 7.9G 3.5G 4.1G 47% //dev/xvde2 50G 27G 20G 58% /data10.135.54.64:/archive 1014G 386G 578G 41% /data/archive复制代码
因为 /data/archive 是 NFS 网盘,整理本地硬盘的数据不需要包含进去,因此用 du --excluede 来排除一边不检查此FS。
# alias dua="du --exclude=/data/archive --exclude=/hash -sh * |sort -hr"[root@Sp data]# pwd/data[root@Sp data]# dua9.7G huishoubao8.0G cdn3.7G log2.3G home967M release354M webroot272M chenliang259M shell220M code70M logs69M redis64M huming58M tmp49M upload37M yangrongan28M weiyuzhao14M yuzhenghao8.0M nginx_log6.4M lucene2.3M download176K sftp16K monitorlog8.0K wwwroot8.0K backup_nginx_log4.0K wwwlogs4.0K fulldisk.txt4.0K disk.txt4.0K backup[root@Sp data]#复制代码
可以用此方法进一步查看大容量的目录。
[root@Sp data]# cd log[root@Sp log]# dua1.8G all_log.log976M task607M cgi_server499M nginxlogs226M evaluationlogs224M bossphplog15M lhs.txt13M monitor.err5.7M qq_order_syc_opt.log5.3M apple_warranty_server.log4.2M bossviews636K cgi_log_bak304K rpclog_archive.log92K fukang28K fukang128K bossphpcache16K all_log.log.18.0K all_log.log.58.0K all_log.log.34.0K monitor.info4.0K log4cplus.properties4.0K apple_warranty_detection.log4.0K all_log.log.44.0K all_log.log.2[root@Sp log]# ls -lhtotal 1.9G-rw-r--r-- 1 root root 1.8G Feb 12 15:40 all_log.log-rw-r--r-- 1 root root 15K Apr 7 2017 all_log.log.1-rw-r--r-- 1 root root 1.7K Apr 7 2017 all_log.log.2-rw-r--r-- 1 root root 5.5K Apr 7 2017 all_log.log.3-rw-r--r-- 1 root root 1.7K Apr 7 2017 all_log.log.4-rw-r--r-- 1 root root 6.2K Apr 7 2017 all_log.log.5-rw-r--r-- 1 root root 3.8K Feb 12 15:40 apple_warranty_detection.log-rw-r--r-- 1 root root 5.3M Feb 12 15:40 apple_warranty_server.logdrwxr-xr-x 3 apache apache 4.0K Nov 16 21:48 bossphpcachedrwxr-xr-x 3 apache apache 4.0K Jan 10 16:36 bossphplogdrwxr-xr-x 3 apache apache 4.0K Nov 16 16:39 bossviewsdrwxr-xr-x 2 huishoubao huishoubao 4.0K Feb 12 03:01 cgi_log_bakdrwxr-xr-x 4 root root 4.0K Feb 2 05:36 cgi_serverdrwxr-xr-x 3 root root 4.0K Nov 16 17:22 evaluationlogs-rw-rw-r-- 1 huishoubao huishoubao 88K Feb 12 14:42 fukang-rw-rw-r-- 1 huishoubao huishoubao 25K Feb 1 12:53 fukang1-rw-rw-r-- 1 huishoubao huishoubao 15M Feb 1 17:51 lhs.txt-rw-r--r-- 1 root root 3.1K Aug 12 2017 log4cplus.properties-rw-r--r-- 1 root root 13M Feb 12 15:39 monitor.err-rw-r--r-- 1 root root 529 Feb 12 15:39 monitor.infodrwxr-xr-x 2 root root 4.0K Feb 11 23:00 nginxlogs-rw-r--r-- 1 root root 5.7M Jul 26 2017 qq_order_syc_opt.log-rw-r--r-- 1 root root 298K Feb 12 02:00 rpclog_archive.logdrwxr-xr-x 3 root root 4.0K Feb 12 00:00 task复制代码
这里可以看到一个 1.8G 的 log 文件,但是文件的更改日期是当前时间(Feb 12 15:40),也就是说进程正在使用。 可以用 tailf 来查看正在写入的数据。
# tailf ./all_log.log复制代码
会看到一大堆输出。 要判断是什么进程正在使用,可以用 fuser。
# fuser -auv ./all_log.log[root@Sp log]# fuser -auv ./all_log.log USER PID ACCESS COMMAND./all_log.log: root 912 F.... (root)admin-supplemen root 1148 F.... (root)admin-supplemen root 1149 F.... (root)admin-supplemen root 1150 F.... (root)admin-supplemen root 1151 F.... (root)admin-supplemen root 1355 F.... (root)api-cancel_orde root 1356 F.... (root)api-cancel_orde root 1357 F.... (root)api-cancel_orde root 1358 F.... (root)api-cancel_orde root 1359 F.... (root)api-cancel_orde root 1360 F.... (root)api-cancel_orde root 1361 F.... (root)api-cancel_orde root 1362 F.... (root)api-cancel_orde root 1363 F.... (root)api-cancel_orde root 1364 F.... (root)api-cancel_orde root 1365 F.... (root)api-cancel_orde root 1366 F.... (root)api-cancel_orde root 1367 F.... (root)api-cancel_orde root 1368 F.... (root)api-cancel_orde......复制代码
可以看到有一些rpc或cgi进程正在使用 all_log.log,另外下面还有很多 php 进程。显然这个文件不能动。 继续查看发现 /data/log/cgi_server/base_product/ 下有7天以上的log文件可以压缩。 于是压缩放到 /data/archive/logs/ 下对应的子目录,需要创建子目录。 不清楚放在哪里的时候可以先find /data/archive/logs/ 下有没有过去的 log 文件。
[root@Sp logs]# ls -lhtotal 44Kdrwxr-xr-x 4 root root 4.0K Oct 30 19:22 bossdrwxrwxrwx 11 root root 4.0K Nov 25 14:30 cgilogdrwxr-xr-x 3 root root 4.0K Feb 12 11:22 loglibdrwxr-xr-x 2 root root 20K Feb 12 00:00 mysqldrwxr-xr-x 10 root root 4.0K Nov 3 15:26 nginxdrwxr-xr-x 8 root root 4.0K Feb 5 12:42 pvuvdrwxr-xr-x 10 root root 4.0K Jan 5 02:00 rpclog[root@Sp logs]# find ./ -name '*base_product*'./loglib/Sp/20180211/base_product.log.2018-02-10.gz./loglib/Sp/20180211/base_product.log.2018-02-08.gz./loglib/Sp/20180211/base_product.log.2018-02-05.gz./loglib/Sp/20180211/base_product.log.2018-02-11.gz./loglib/Sp/20180211/base_product.log.2018-02-09.gz./loglib/Sp/20180211/base_product.log.2018-02-07.gz./loglib/Sp/20180211/base_product.log.2018-02-06.gz复制代码
[root@Sp base_product]# ls -lhtotal 607M-rw-r--r-- 1 root root 268M Feb 2 19:05 base_product.log.2018-02-02-rw-r--r-- 1 root root 216M Feb 3 20:51 base_product.log.2018-02-03-rw-r--r-- 1 root root 123M Feb 5 11:16 base_product.log.2018-02-05-rw-r--r-- 1 root root 0 Feb 2 05:36 base_product.log.report.2018-02-02-rw-r--r-- 1 root root 0 Feb 5 11:17 base_product.log.report.2018-02-05[root@Sp base_product]# gzip base_product.log.2018-02-0*[root@Sp base_product]# ls -lhtotal 34M-rw-r--r-- 1 root root 16M Feb 2 19:05 base_product.log.2018-02-02.gz-rw-r--r-- 1 root root 13M Feb 3 20:51 base_product.log.2018-02-03.gz-rw-r--r-- 1 root root 6.2M Feb 5 11:16 base_product.log.2018-02-05.gz-rw-r--r-- 1 root root 0 Feb 2 05:36 base_product.log.report.2018-02-02-rw-r--r-- 1 root root 0 Feb 5 11:17 base_product.log.report.2018-02-05[root@Sp base_product]# mv ./base_product.log.2018-02-0*.gz /data/archive/logs/loglib/Sp/20180212/[root@Sp base_product]# ls -lhtotal 0-rw-r--r-- 1 root root 0 Feb 2 05:36 base_product.log.report.2018-02-02-rw-r--r-- 1 root root 0 Feb 5 11:17 base_product.log.report.2018-02-05[root@Sp base_product]# pwd/data/log/cgi_server/base_product复制代码