CentOS 磁盘满的解决方案

今天 , 通过xftp向centos系统的某个文件夹上传文件时 , 莫名其妙上传失败 , 提示的错误信息为Unknown error!
首先排除了权限问题 , 但是具体是什么问题呢?初步怀疑是磁盘满了 。那么如果确定Centos磁盘空间是否足够?
下面进行详细介绍 。
第1步:查看当前磁盘整体使用情况

执行如下命令:
df -hl 
CentOS 磁盘满的解决方案

文章插图
 
第2步:找到占用磁盘多的文件夹 , 继续查看
执行如下命令 , 确定具体哪些文件夹占用得多
du -h -x --max-depth=2 # 检查当前目录层级深度为2的空间占用情况 
CentOS 磁盘满的解决方案

文章插图
 
第3步:进入对应目录 , 进一步查看
执行如下命令 , 确定具体哪些文件夹占用得多
du -sh # 查看当前目录所占空间 du -h -x --max-depth=2 # 检查当前目录层级深度为2的空间占用情况 
第4步:找出占用空间最大的文件进行处理
1)查看文件
find . -name 'do*.*' | wc -l #查找 do 开头的文件个数
2)删除文件
find . -name 'do*.*' | xargs rm -r # 删除do 开头的文件 rm -rf dir # 直接删除目录名称为dir对应目录以及子目录 rm -rf a* # 批量删除以a开头命名的文件夹find . -name "*.txt" -ctime +20 -exec rm -r {} ; # 查找特定日期之前的文件并删除 , 其中. 指代:当前目录 , +20 指代:20 天之前 。
注:有时候发现查看目录的空间也使用不大 , 但是磁盘占用率就是很高 , 怎么办呢?解决办法如下:
lsof | grep deleted #找查找已经删除但删除时有进程正在使用的文件 
通过执行如下命令kill掉
kill pid #根据id杀掉进程
然后再查看此磁盘占用的空间
df -hl
如果占用空间还比较大 , 试着重启一下服务器后再执行上一步的命令 。
reboot

【CentOS 磁盘满的解决方案】


    推荐阅读