在使用Linux系统较长时间之后,尤其是运行占内存较大的软件之后会产生磁盘空间不足的情况,仅仅依靠删除文件和清空回收站难以根本解决问题,多番尝试之后整理了以下方法,不是研究原理,仅尝试效果,如有错误欢迎指正,为同受该问题苦恼的同志们提供些参考。

  1. 删除缓存

    sudo apt-get autoclean //清理旧版本的软件缓存

    sudo apt-get clean //清理所有软件缓存

    sudo apt-get autoremove //删除系统不再使用的孤立软件

    sudo apt-get install deborphan -y //清除Linux下孤立的包

    sudo apt-get remove --purge 软件名 //删除软件

    dpkg -l |grep ^rc|awk ‘{print $2}’ |sudo xargs dpkg -P

  2. 删除./.cache

    a. 查找占用空间大的文件对应删除

     sudo -i                                //进入root模式
    
     du -h max-depth=1            //查看各文件占用的内存
    
     cd ./目录名称                      //进入占用内存大的文件下查看情况
    
     逐级排查,即进入逐步进入占用空间大的文件夹,然后删除,
    
     比如我这里找到./cache/Vmware/frag_and_drop文件夹占用很大,查看CSDN中关于这个文件的说明:
    

在这里插入图片描述

    安装VM tools之后,可以通过拖拽的方式把文件拉入虚拟机之中。但每一次拖拽,其实都是现在cache文件夹里面生成一个同样的文件,并使用cp拷贝的方式将其拷贝到拖拽放置的目录中。因此,如果不进行清理的话,cache文件夹中产生的文件,并不会自动删除或者释放。该文件夹位于用户目录下/home/xxxx/.cache/vmware/drag_and_drop。

删除方法:

① rm –f 文件名

② 直接进入在页面进入页面主文件夹,ctrl+h显示出隐藏文件夹,然后就可以看见.cache文件夹,然后进入文件夹找到文件删除即可。

注意删除完一定要清空回收站,还可以运行以下命令:

sudo rm -fr /root/.Trash/

b. 直接删除cache缓存的三种方式

    sudo  -i 进入root模式

    仅清除页面缓存(PageCache)

         echo 1 > /proc/sys/vm/drop_caches

    清除目录项和inode

         echo 2 > /proc/sys/vm/drop_caches

    清除页面缓存,目录项和inode

         echo 3 > /proc/sys/vm/drop_caches

    详情理论参照网上博主的CSDN:

        <https://www.cnblogs.com/lanqingzhou/p/8059339.html>

        <https://blog.csdn.net/u012660464/article/details/78923011>
  1. 清除arp缓存

       arp -n|awk '/^[1-9]/ {print "arp -d "$1}' | sh
    
       for((ip=2;ip<255;ip++));do arp -d 192.168.0.$ip &>/dev/null;done
    
  2. 磁盘扩容

     关闭虚拟机,修改设置扩容磁盘,但我查找了网上一些说法,修改参数之后还需要手动分配磁盘等操作,我也没有尝试,如有靠谱方法,欢迎分享~
    

以上是我试过的一些方法,总结而言就是多尝试,但也不要瞎删除东西,由于我对Linux系统本身并没有太多研究,对一些文件夹还是多在网上搜索下看能否删除或操作。

作者:一只在大海里游的屁屁虾
链接:https://www.jianshu.com/p/3779744ed9c8
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

Logo

更多推荐