快捷搜索:

您的位置:澳门新葡4473网站 > 项目 > Linux服务器磁盘空间占满问题

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

发布时间:2019-10-11 07:06编辑:项目浏览(59)

    上边我们一同来看一篇有关Linux服务器磁盘占满难题一举成功(/dev/sda3 满了),希望超过此类问题的人能推动扶持。

     

    明日收工某电商手艺部leader开掘个难点,说他们服务器硬盘满了。把日记文件都删掉了,可硬盘空间如故满。于是df -h查看了下一一挂载点的场景(如下图)。

    图片 1

    /dev/sda3据为己有了百分百,那么大家du -s -h ./*看下目录的挤占情状(如下图)。

     

     

     在职业中,我们或然会遇上这么的主题材料,开掘有些磁盘空间快满了,于是,找到一些没用的大文件将其除去后,开掘磁盘空间依旧尚未自由掉,那是如何原因吗?怎样消除呢?上面来再次出现一下整整进程:

    翻看磁盘空间景况

     [@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磁盘挂载点目录占用情形(图)

    挂载点下的目录之和远低于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(如下图,重启后才硬盘空间占用不奇怪)。

    图片 2

    本文由澳门新葡4473网站发布于项目,转载请注明出处:Linux服务器磁盘空间占满问题

    关键词: