linux下磁盘空间没有释放

工作中遇到一些问题,Linux 服务器磁盘占用 100% 但是找不到大的文件。

在解决的过程中需要用到 lsof 命令,该命令可以用 yum 安装,或者去这里(https://pkgs.org/download/lsof)下载 rpm 包。

一、查看进程锁定的文件,lsof | grep deleted  ,输出的信息第二列是 PID ,倒数第二列是该文件被系统承认的大小标识。

二、根据查出的 PID 进到相应的目录, cd /proc/<PID>/fpll 查看进程使用的文件用什么数字表示。

三、清空文件,加入上图中的 4 链接的文件是需要清空的,则使用 echo " " > 4 , 进行清空。

以上操作结束后,使用 df -h 查看文件系统使用率会有所下降。

在/proc文件系统中,每一个进程都有一个相应的文件 。下面是/proc目录下的一些重要文件 ,供参考:
/proc/pid/cmdline  包含了用于开始进程的命令 ;
/proc/pid/cwd        包含了当前进程工作目录的一个链接 ;
/proc/pid/environ  包含了可用进程环境变量的列表 ;
/proc/pid/exe         包含了正在进程中运行的程序链接;
/proc/pid/fd/           这个目录包含了进程打开的每一个文件的链接;
/proc/pid/mem       包含了进程在内存中的内容;
/proc/pid/stat包     含了进程的状态信息;
/proc/pid/statm      包含了进程的内存使用信息。

在此奉劝各位,磁盘满了,查到大文件占用后,别直接删了,先看有没有进程在占用这个文件,查看方式: lsof filename 

lsof 命令的更详细的使用方式查看链接:https://www.cnblogs.com/chenjinxi/p/8268324.html

发布了16 篇原创文章 · 获赞 3 · 访问量 4万+

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览