首頁 > 軟體

lsof 命令用法:檢視已刪除空間卻沒有釋放的進程

2020-06-16 17:12:12

檢視已經刪除的檔案,空間有沒有釋放,沒有的話kill掉pid

lsof -n |grep deleted

lsof簡介lsof(list open files)是一個列出當前系統開啟檔案的工具。

問題描述:
服務報警根分割區使用率超過95%,上來檢視發現96%使用率;

但是/分割區下面的目錄,每個查詢加起來也不到4G空間,多出來的40G不知道在哪裡?
find查詢也沒有找到大檔案;

分析原因:
可能是系統進程佔用的空間沒有釋放掉,導致的;
通過命令檢視發現,php進程一共有3個,都是處於deleted狀態,檔案大小剛好是40G,正好是多出來的空間,找到問題所在;

解決辦法:
找到對應的php進程號,kill掉即可;
[root@linuxidc.com WebServer]# lsof -n / |grep deleted
mysqld    2660  mysql    4u  REG    8,2          0  524290 /tmp/ibSF7sXt (deleted)
mysqld    2660  mysql    5u  REG    8,2          0  524305 /tmp/ibCCM4u4 (deleted)
mysqld    2660  mysql    6u  REG    8,2          0  524309 /tmp/ibKuAG2E (deleted)
mysqld    2660  mysql    7u  REG    8,2          0  524315 /tmp/ibcLe4Bf (deleted)
mysqld    2660  mysql  11u  REG    8,2          0  524316 /tmp/ibW2n1iQ (deleted)
php        7045    root    0r  REG    8,2        1172  524374 /tmp/sh-thd-1494029191 (deleted)
php        7045    root    2w  REG    8,2 42413952626  657428 /var/spool/at/spool/a0100c017bf37c (deleted)
php        7054    root    0r  REG    8,2        1172  524374 /tmp/sh-thd-1494029191 (deleted)
php        7054    root    2w  REG    8,2 42413952626  657428 /var/spool/at/spool/a0100c017bf37c (deleted)
php      12730    root    0r  REG    8,2        1172  524374 /tmp/sh-thd-1494029191 (deleted)
php      12730    root    2w  REG    8,2 42413952626  657428 /var/spool/at/spool/a0100c017bf37c (deleted)
mysqld    17855  mysql    4u  REG    8,2          0  524384 /tmp/ibxBS5jf (deleted)
mysqld    17855  mysql    5u  REG    8,2          0  524385 /tmp/ibmrNzfL (deleted)
mysqld    17855  mysql    6u  REG    8,2          0  524386 /tmp/ibVDS3ah (deleted)
mysqld    17855  mysql    7u  REG    8,2          0  524387 /tmp/ibx6YTrj (deleted)
mysqld    17855  mysql  13u  REG    8,2          0  524388 /tmp/ibOhb8xQ (deleted)

在對應的目錄下並沒有發現檔案
[root@linuxidc.com WebServer]# ll /var/spool/at/spool/
總用量 0
[root@linuxidc.com WebServer]# kill -9 7045
[root@linuxidc.com WebServer]# kill -9 7054
[root@linuxidc.com WebServer]# kill -9 12730

再次檢視發現沒有php的進程
[root@linuxidc.com WebServer]# lsof -n / |grep deleted
mysqld    2660  mysql    4u  REG    8,2        0  524290 /tmp/ibSF7sXt (deleted)
mysqld    2660  mysql    5u  REG    8,2        0  524305 /tmp/ibCCM4u4 (deleted)
mysqld    2660  mysql    6u  REG    8,2        0  524309 /tmp/ibKuAG2E (deleted)
mysqld    2660  mysql    7u  REG    8,2        0  524315 /tmp/ibcLe4Bf (deleted)
mysqld    2660  mysql  11u  REG    8,2        0  524316 /tmp/ibW2n1iQ (deleted)
mysqld    17855  mysql    4u  REG    8,2        0  524384 /tmp/ibxBS5jf (deleted)
mysqld    17855  mysql    5u  REG    8,2        0  524385 /tmp/ibmrNzfL (deleted)
mysqld    17855  mysql    6u  REG    8,2        0  524386 /tmp/ibVDS3ah (deleted)
mysqld    17855  mysql    7u  REG    8,2        0  524387 /tmp/ibx6YTrj (deleted)
mysqld    17855  mysql  13u  REG    8,2        0  524388 /tmp/ibOhb8xQ (deleted)

檢視空間已經恢復:
[root@linuxidc.com WebtServer]# df -h
檔案系統      容量  已用  可用 已用%% 掛載點
/dev/sda2      49G  4.4G  42G  10%  /
tmpfs        16G    0  16G  0% /dev/shm

本文永久更新連結地址http://www.linuxidc.com/Linux/2017-06/144975.htm


IT145.com E-mail:sddin#qq.com