SDB:磁盘空间
情况
需要或希望有更多的磁盘空间。
流程
您必须 以 root 用户身份登录才能更改系统分区。
使用 btrfs,使用以下命令检查磁盘空间:
root #
btrfs fi usage /Snapper
首先要检查您的 快照。非常旧的快照会占用大量空间。
如果您从未运行过“snapper rollback”,那么您无法删除快照 1(这是正常的)。如果您运行过,那么您将无法删除您回滚到的快照。您可以在 "findmnt" 输出的顶部查看该快照。
检查您有多少个快照
root #
snapper list如果由于某种原因您有数十个或数百个快照,那么每日清理没有运行。
/etc/cron.daily/suse.de-snapper
这是一个 bash 脚本,您也可以手动运行,但还有其他方法。
随着 snapper 0.5.3 的发布,cron 脚本被 systemd 定时器取代。相关的 systemd 单元是 snapper-cleanup.timer 和 snapper-cleanup.service。相关的配置文件是 /etc/snapper/configs/root,服务调用
/usr/lib/snapper/systemd-helper --cleanup
这也可以通过以下方式调用:
systemctl start snapper-cleanup
这些使用清理算法,您也可以单独调用它们
snapper cleanup <algorithm> (number or timeline or empty-pre-post)
您也可以手动删除特定的快照
snapper rm <n>
或者删除一系列快照
snapper rm <n1>-<n2>
幻影快照
偶尔,未被 snapper 列出的快照仍然存在。使用以下命令检查:
btrfs subvolume list /
据报道,删除未列出快照的两种有效方法是:
- 重新创建缺失的 xml 文件,然后使用 snapper 删除
- 以特定方式删除它们:https://github.com/openSUSE/snapper/issues/24
Systemd journal
您可以使用以下命令检查 journal 的大小:
journalctl --disk-usage
如果您不关心超过两天前的日志条目,您可以
journalctl --rotate journalctl --vacuum-time=2d
您也可以在 /etc/systemd/journald.conf 中设置限制
[Journal] SystemMaxUse=64M
旧内核
在 Tumbleweed 上,旧内核可能会累积。您可以使用以下命令删除它们:
systemctl start purge-kernels
Zypper 缓存
您可以使用以下命令删除 zypper 包和/或元数据缓存:
root #
zypper clean临时文件
有一个 systemd 定时器/服务设置为在启动后 15 分钟运行,调用
root #
/usr/bin/systemd-tmpfiles --clean有两种方法可以检查定时器是否处于活动状态
root #
systemctl list-timers或
root #
systemctl status systemd-tmpfiles-clean.timer