Linux服务器磁盘空间占满问题

2019-11-21 23:05栏目:网络操作
TAG:

上面大家一同来看风流潇洒篇有关Linux服务器磁盘占满难题化解(/dev/sda3 满了卡塔 尔(阿拉伯语:قطر‎,希望逾越此类难题的人能带给扶持。

 

明天下班某电商技巧部leader发掘个难题,说她们服务器硬盘满了。把日志文件都删掉了,可硬盘空间还是满。于是df -h查看了下相继挂载点的情景(如下图卡塔尔国。

澳门新葡亰平台游戏 1

/dev/sda3吞并了百分之百,那么大家du -s -h ./*看下目录的据有景况(如下图卡塔 尔(英语:State of Qatar)。

 

 

 在专业中,我们或然会境遇那样的标题,发掘有些磁盘空间快满了,于是,找到一些不算的大文件将其除去后,开采磁盘空间依旧未有自由掉,那是怎么来头呢?怎么着解决呢?下边来重现一下全勤进度:

查看磁盘空间景况

 [@74.114 var]# df -h
澳门新葡亰平台游戏,Filesystem            Size  Used Avail Use% Mounted on
/dev/xvda2            9.7G  284M  8.9G   4% /
/dev/xvda1            251M   13M  226M   6% /boot
none                  1.1G     0  1.1G   0% /dev/shm
/dev/xvda10            97G   60G   33G  65% /home
/dev/xvda3            3.9G  2.7G  1.1G  72% /usr
澳门新葡亰平台官网,/dev/xvda5            3.9G  3.6G   77M  98% /var

var分区快满了,找到大文件,并删除

[@74.114 var]# cd /var
[@74.114 var]# du –sh *
3.3G    account
111M    cache
53M     log
0       mail
156K    run
344K    spool

[@74.114 var]# rm –rf account/*

df –h 看一下,却长久以来是/var 为98%,一点都没释放。

[@74.114 var]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/xvda2            9.7G  284M  8.9G   4% /
/dev/xvda1            251M   13M  226M   6% /boot
none                  1.1G     0  1.1G   0% /dev/shm
/dev/xvda10            97G   60G   33G  65% /home
/dev/xvda3            3.9G  2.7G  1.1G  72% /usr
/dev/xvda5            3.9G  3.6G   77M  98% /var

但du –sh * 却呈现未有大文件了

[@74.114  ~]# cd /var && du –sh *
120K    account
111M    cache
53M     log
0       mail
156K    run
344K    spool

质疑1:应该是删除的内容依然被进度占用,内部存款和储蓄器没释放,所以用lsof |grep – I deleted 看了大器晚成晃,开掘如下:

[@74.114 account]# lsof |grep -i deleted
listserve  4833           blty    0u      CHR      136,2                    4 /dev/pts/2 (deleted)
listserve  4833           blty    1u      CHR      136,2                    4 /dev/pts/2 (deleted)
listserve  4833           blty    2u      CHR      136,2                    4 /dev/pts/2 (deleted)
Billing_P 16989           blty    0u      CHR      136,0                    2 /dev/pts/0 (deleted)
Billing_P 16989           blty    1u      CHR      136,0                    2 /dev/pts/0 (deleted)
Billing_P 16989           blty    2u      CHR      136,0                    2 /dev/pts/0 (deleted)
Billing_P 16990           blty    0u      CHR      136,0                    2 /dev/pts/0 (deleted)
Billing_P 16990           blty    1u      CHR      136,0                    2 /dev/pts/0 (deleted)
Billing_P 16990           blty    2u      CHR      136,0                    2 /dev/pts/0 (deleted)

意识时billing程序占用没释放,所以交换项目高管将Billing_P停掉,重启,依然未有自由别的空间。无果
预计2:删除的公文是accout目录下的pacct文件,应该是由psacct爆发和保管,重启这些顺序后是还是不是会OK呢?解决

[@74.114 account]# /etc/init.d/psacct restart

最终看一下磁盘空间,磁盘空间释放鸟~~

[@74.114 var]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/xvda2            9.7G  284M  8.9G   4% /
/dev/xvda1            251M   13M  226M   6% /boot
none                  1.1G     0  1.1G   0% /dev/shm
/dev/xvda10            97G   60G   33G  65% /home
/dev/xvda3            3.9G  2.7G  1.1G  72% /usr
/dev/xvda5            3.9G  100M   3.6M  4% /var

 小建议:

以往管理有关难点时,假如开采du 和df 大小不平等的情事,能够由此lsof 查看,恐怕能够找到一些产出难点的缘由,假设依然找不到问题,在同意的情况下不要紧试一下重启服务,大概难题就减轻了。
重启服务得不到化解的气象下,能够通过卸载磁盘分区来试着肃清。
在调控删除某个文件前,最棒分明好那么些文件被什么服务使用,先停掉那个服务再删除,那样就比很少现身空间释放不了的状态了

 

linux磁盘挂载点目录占用情形(图卡塔 尔(英语:State of Qatar)

挂载点下的目录之和远低于4.5G,那么是何等占用了硬盘呢?

以下为该问题的解答:

在apache/tomcat服务在运作状态下,清空了运转服务的日记,进而招致了/dev/sda3 满了的标题。一般情况下,大好些个服务(包罗剧本卡塔尔国在运作时,是无法去除当前正在写入的日志文件的。

原理解析:

  1. 当前access.log日志正在被apache进度占用。

2. 因此rm命令删除access.log,实际只删除了文件名(该日志文件应用记数不为0,由此空间不会被放飞卡塔 尔(阿拉伯语:قطر‎。

3. 透过rm命令删除了access.log后,apache照旧写日记到access.log中,当展开apache进度时,已经通过access.log定位到该公文的inode了,正是说再写日记是不通过access.log,由此纵然去除了access.log,apache依旧写日记到access.log所在的inode节点,所以以致硬盘空间扩展。

4. 因为除去了access.log,所以我们就找不到该公文了,du也查不到,就能够并发硬盘满了但看不到究竟是什么样文件占用的。

(写的不甚详细,不精通的权族再google下。卡塔尔

不留余地办法:

重启该日记文件的相干服务或程序,如:为apache日志文件则重启apache(如下图,重启后才硬盘空间占用平常卡塔 尔(英语:State of Qatar)。

澳门新葡亰平台游戏 2

版权声明:本文由澳门新葡亰平台游戏发布于网络操作,转载请注明出处:Linux服务器磁盘空间占满问题