简而言之,Snap 填满了驱动器并自行崩溃:
sudo snap remove gnome-logs
>> error: system does not fully support snapd: mkdir /tmp/sanity-mountpoint-390575120:
>> no space left on device
去年,我在服务器上安装了 Snap/Snapd,这些服务器用于存储视频数据,偶尔也用于提供视频数据,但除此之外,没有看到太多动作。它们从 8GB USB 棒运行 ubuntu,并管理几 TB 的 500GB 数据磁盘。在正常运行 255 天后,我通过 ssh 登录了一台服务器,发现 / 驱动器上的空间为 0%。
我无法释放足够的空间来改变apt-get clean
或删除日志/var/log
。 du
显示 snapd 在快照中占用了大约 4GB。更糟糕的是,系统无法删除软件,例如
sudo apt-get remove ubuntu-gnome-desktop
>> Reading package lists... Error!
>> E: Write error - write (28: No space left on device)
>> E: Write error - write (28: No space left on device)
>> E: The package lists or status file could not be parsed or opened.
我遵循了 Unbuntu 的标准 snapd 配置,现在我的服务器不仅无法自动更新,snapd 还阻止我修复问题。甚至 snapd 也无法删除:
sudo apt-get remove snapd
>> Reading package lists... Error!
>> E: Write error - write (28: No space left on device)
>> E: IO Error saving source cache
>> E: The package lists or status file could not be parsed or opened.
>> Running error: system does not fully support snapd: mkdir /tmp/sanity-mountpoint-876453535: no space left on device
答案1
我最终通过清除 snapd 的缓存,然后单独删除每个 snap 来解决这个问题
sudo systemctl stop snapd
cd /var/lib/snapd/
sudo bash
cd /var/lib/snapd/cache
ls -lh
从那里我可以看到缓存文件夹中有 600MB
rm *
现在我终于有喘息的空间了,于是开始运行snap list
并df -h
获取要删除的所有快照列表。现在我可以使用以下命令删除所有快照
sudo snap remove gnome-calculator
sudo apt-get remove snapd
仍然无法完全正常工作,因此我通过编辑修复了 DNS 问题
/etc/resolv.conf
添加
nameserver 8.8.8.8
nameserver 8.8.4.4
更新 DNS 后,我更新了 ubuntu
sudo apt-get update --fix-missing
然后我终于可以跑了
sudo apt-get remove snapd gnome-software-plugin-snap --purge
太棒了!系统现已更新,并且有 1.7 GB 的可用空间。在我的使用情况下,我将远离 snapd。