一、背景
服务器的/home目录空间使用超过99%,且以每日约1Gb的速度增长。下午检查时还剩余14G,需要立即检查清理空间。二、过程
2.1 分析什么占用了空间命令: du -ah --max-depth=1
说明:
-a 当前目录下所有文件
-h 以human可读的方式统计
--max-depth=1 当前目录下1级子目录,这样就可以看到各子文件夹的大小了。
[root@A20933635 upload]# du -ah --max-depth=1通过命令发现,excel目录占用了282G的空间,需要分析。
4.0K ./itemcodeExcel
807M ./mobile_test_temp
282G ./excel
4.0K ./sprintLocation
4.0K ./pvkTemp
8.0K ./googleTxtLocation
4.0K ./pvkLicenseLocation
4.0K ./googleXmlLocation
282G .
2.2 分析目录内容
1)统计文件个数
用ls查看文件,输出哗哗闪过,最后终端工具直接异常退出,文件太多了!
尝试只看部分内容,用ls转成more查看.
ls -l|more统计文件总数:56907个!
-rw-rw-r-- 1 tomcat tomcat 91 Aug 6 2016 datadeal_info_20160806025637124.txt
-rw-rw-r-- 1 tomcat tomcat 476 Aug 6 2016 datadeal_info_20160806060447092.txt
-rw-rw-r-- 1 tomcat tomcat 17 Aug 6 2016 datadeal_info_20160806060607178.txt
-rw-rw-r-- 1 tomcat tomcat 266 Aug 6 2016 datadeal_info_20160806070751129.txt
-rw-rw-r-- 1 tomcat tomcat 42 Aug 6 2016 datadeal_info_20160806071701799.txt
-rw-rw-r-- 1 tomcat tomcat 224 Aug 6 2016 datadeal_info_20160806073114495.txt
-rw-rw-r-- 1 tomcat tomcat 18 Aug 6 2016 datadeal_info_20160806084332534.txt
-rw-rw-r-- 1 tomcat tomcat 18 Aug 6 2016 datadeal_info_20160806084340212.txt
--More--
ls -l|wc -l
ps:wc是统计字数,-l是按行统计。
2)查看文件内容
看样子应该是导出的文件。有3中类型:txt、excel、mdb.
这应该就是症结了!web应用导出、上传的文件应该都在这里,且没有定时清理,累积下来空间消耗惊人。
2.3 移动备份
为慎重起见,暂时把这些文件移动到其他盘符下,然后压缩,首先值移动2016年的文件。通过find命令实现。
find . -name "*_2016*" -exec mv '{}' /mnt/disk2/fisUploadBak \;
说明:
. :查找当前目录
-name :根据名称匹配,包含_2016的文件。
-exec :对找到的文件执行命令
mv '{}' /mnt/disk2/fisUploadBak \; :{}代表找到的文件; \;结尾表示一个命令结束,注意不要遗漏。
find命令还有很多查找模式,如按修改时间mtime、访问时间atime、属主、类型等。这个find+exec组合,第一次让我觉得linux比windows系统好!
2.4 压缩文件
tar -czvf 201608.tar.gz *_201608* --remove-files
参数说明:
-c :create 创建归档文件
-z :zip 使用zip工具压缩
-v :输出过程,让用户可视
-f :file 归档文件名。注意:要做最后一个参数,因为要补文件名
--remove-files:压缩后即删除原文件。
解压
tar -xzvf test.tar.gz //解压整个包
tar -xzvf test.tar.gz home/oracle/xiaoming/bbed/bbed.par //解压指定文件
参数说明:
-x :解压
home/oracle/xiaoming/bbed/bbed.par:要解压文件【在归档文件里的路径】。
三、验证效果
/home剩186G的空间,效果明显。访问应用也正常。[root@A20933635 fisUploadBak]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
50G 6.1G 41G 13% /
tmpfs 7.4G 88K 7.4G 1% /dev/shm
/dev/sda1 485M 33M 427M 8% /boot
/dev/mapper/VolGroup-lv_home
1.3T 1.1T 186G 86% /home
/dev/sdb1 1.8T 1.5T 256G 86% /mnt/disk2