硬盘大小 : 20G
问题 : 磁盘空间不足
处理过程 :
1. 执行”df -hl”命令,磁盘空间使用已满,结果如下
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 20G 19G 31M 100% /
tmpfs 938M 0 938M 0% /dev/shm
2.发现一个14G的nohup.out文件,使用 rm -rf命令删除发现一个14G的nohup.out文件,使用 rm -rf命令删除
3.在根目录”/”下,
执行 “du -sh”命令,结果为 5.2G,
执行”df -hl”命令,结果仍是使用100%。
解决办法
解决过程: 执行方法: lsof | grep nohup.out
sh 6148 leo 1w REG 202,1 14343692933 404832 /home/leo/app/nohup.out (deleted)
sh 6148 leo 2w REG 202,1 14343692933 404832 /home/leo/app/nohup.out (deleted)
java 6149 leo 1w REG 202,1 14343692933 404832 /home/leo/app/nohup.out (deleted)
java 6149 leo 2w REG 202,1 14343692933 404832 /home/leo/app/nohup.out (deleted)
杀死进程6148,6149
sudo kill -9 6148
sudo kill -9 6149
然后执行”df -hl”查看磁盘空间,磁盘空间已释放,结果如下
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 20G 5.2G 14G 28% /
tmpfs 938M 0 938M 0% /dev/shm
附:
lsof 命令
lsof(list open files)是一个列出当前系统打开文件的工具。在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件。所以如传输控制协议 (TCP) 和用户数据报协议 (UDP) 套接字等,系统在后台都为该应用程序分配了一个文件描述符,无论这个文件的本质如何,该文件描述符为应用程序与基础操作系统之间的交互提供了通用接口。因为应用程序打开文件的描述符列表提供了大量关于这个应用程序本身的信息,因此通过lsof工具能够查看这个列表对系统监测以及排错将是很有帮助的。
[root@ty ~]# lsof |head -5
COMMAND PID TID USER FD TYPE DEVICE SIZE/OFF NODE NAME
systemd 1 root cwd DIR 253,1 4096 2 /
systemd 1 root rtd DIR 253,1 4096 2 /
systemd 1 root txt REG 253,1 1478168 519674 /usr/lib/systemd/systemd
systemd 1 root mem REG 253,1 20032 516898 /usr/lib64/libuuid.so.1.3.0