虚拟机用久了空间不足的解决办法

使用VMware虚拟机安装了20.04Ubuntu系统,使用了一段时间后主目录空间越来越小,硬盘扩容之后很快又空间不足,甚至出现了开机卡黑屏的情况。下面总结了4个方案来解决该问题

方案1:磁盘扩容,简单粗暴。

方案2:清空 ~/.cache/vmware/drag_and_drop 下内容。

方案3:清空 ~/.cache/vscode-cpptools 下内容。

方案4:清空 ~/.config/Code/User/workspaceStorage 下内容。

方案1请自行查找资料扩容,比较简单,这里不进行赘述。

方案2详解

        通过以下命令查看每个文件夹大小

du -sh folder_name/*

        发现 ~/.cache/vmware/drag_and_drop 下占了很大的内存将近46G。在vmware虚拟机下安装的ubuntu系统,为了在windows和ubuntu之间拷贝数据方便,所以在vmware上安装了vmware tools。在安装了vmware tool之后,会在ubuntu系统 ~/.cache/vmware/drag_and_drop 路径下创建一些缓存区目录,从windows拷贝文件的时候会先将文件拷贝到这个缓存区目录里面,所以会导致ubuntu的可用空间急速下降。

        因此为了保持ubuntu的空间足够使用需要定期清理 ~/.cache/vmware/drag_and_drop 目录。

里面的文件都能直接删掉,不影响使用。

方案3详解

        通过  du -sh folder_name/* 命令还发现 ~/.cache/vscode-cpptools 下占的内存将近5G。这里是Ubuntu的 vscode 会为每个工程生成一份缓存目录,以及对应的缓存文件我这里大小将近5G 直接删除,为了防止后续继续产生缓存文件,可以通过vscode设置缓存大小。

        因此为了保持ubuntu的空间足够使用需要定期清理 ~/.cache/vscode-cpptools  目录。

里面的文件都能直接删掉,不影响使用。

方案4详解

        使用下面这个命令查找更多隐藏的文件所占的内存空间

du -sh .[!.]* *

 

 

         发现是 ~/.config/Code/User/workspaceStorage 占用了几十个G的内存。查了一下是vscode的缓存,怪不得越用空间越小,使用以下命令删除即可,不影响vscode使用。给我腾出来了十几个G,好家伙。

cd ~/.config/Code/User/workspaceStorage/
rm -rf  *

 注:切记谨慎使用 rm -rf  *。打工不易,别弄丢饭碗

### 解决 Kali Linux 虚拟机高内存使用率的方法 #### 优化启动服务 默认情况下,Kali Linux 启动了许多不必要的后台服务。通过禁用这些不需要的服务,可以显著减少内存占用。可以通过 `systemctl` 命令来查看当前活动的服务并停用那些不必要使用的。 ```bash sudo systemctl list-units --type=service --state=running sudo systemctl disable <serviceName> ``` 这有助于释放宝贵的资源给更重要的应用程序[^2]。 #### 减少图形界面开销 如果主要目的是进行命令行操作或者远程访问,则可以选择安装轻量级桌面环境如 XFCE 或 LXDE 替代默认较重的 GNOME 桌面环境。也可以完全关闭 GUI 并仅保留终端模式工作。 ```bash sudo apt-get install xfce4 echo "exec startxfce4" >> ~/.xinitrc startx ``` 对于无需图形界面的情况: ```bash sudo systemctl set-default multi-user.target ``` 此设置可有效降低因图形化组件带来的额外负担。 #### 使用 Valgrind 进行性能分析 当遇到具体的应用程序导致内存泄漏或其他效率低下问题时,利用 Valgrind 工具可以帮助定位和修复这些问题。Valgrind 提供了一套强大的工具集用于检测内存管理中的错误以及执行详尽的性能剖析。 ```bash valgrind --tool=memcheck --leak-check=yes ./your_program ``` 上述命令能够帮助识别潜在的问题所在,并指导进一步优化措施[^3]。 #### 配置交换空间 适当配置足够的交换分区可以在物理 RAM 不足的情况下提供临时存储区域,防止系统因为缺乏可用内存而崩溃。增加 swap 文件大小是一个简单有效的办法。 创建一个新的swap文件: ```bash fallocate -l 2G /swapfile chmod 600 /swapfile mkswap /swapfile swapon /swapfile ``` 为了持生效,在 `/etc/fstab` 中加入如下行: ``` /swapfile none swap sw 0 0 ``` 调整 swappiness 参数以控制内核何时应该将数据移至交换区: ```bash sysctl vm.swappiness=10 echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf ``` 较低数值意味着优先使用实际RAM而不是swap,这对于提高整体响应时间是有利的[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值