在使用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中关于这个文件的说明:
【 来自 https://blog.csdn.net/fan2273/article/details/78211495 】
安装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:
3. 清除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
4. 磁盘扩容
关闭虚拟机,修改设置扩容磁盘,但我查找了网上一些说法,修改参数之后还需要手动分配磁盘等操作,我也没有尝试,如有靠谱方法,欢迎分享~
以上是我试过的一些方法,总结而言就是多尝试,但也不要瞎删除东西,由于我对Linux系统本身并没有太多研究,对一些文件夹还是多在网上搜索下看能否删除或操作。