如何在 Linux 中清理 Snap 包的版本 | Linux 中国
发布网友
我来回答
共1个回答
热心网友
本文提供了一种在Linux系统中清理Snap包版本以释放磁盘空间的技巧。Snap包在Ubuntu生态系统中占有重要地位,但其体积通常较大,可能占用大量磁盘空间。为了优化磁盘使用,可以采用以下步骤清理旧的Snap包版本。
首先,Snap相关系统文件存储在/var/lib/snapd目录下。通过使用`du`命令检查目录大小,你可以评估Snap包占用的空间量。此外,使用磁盘使用分析器GUI工具来查看Ubuntu的磁盘使用情况。
Snap设计时保留每个安装的软件包至少一个旧版本。通过运行`snap list -all`命令,可以看到同一软件包被列出两次,版本和修订号不同。要释放磁盘空间,可以删除额外的软件包版本。由于Snap包被标记为“禁用”,无需手动操作,可以使用一个预先编写的bash脚本自动执行此操作。
为了开始,创建并运行一个bash shell脚本,名为`clean-snap.sh`。脚本大致包含以下内容:
保存脚本并运行它。将脚本放置在主目录中,然后在Ubuntu终端中执行命令:
执行脚本后,可以看到旧版本的软件包开始被删除。检查磁盘空间使用情况,会发现目录大小已减少。
定期运行此命令以保持磁盘空间优化。脚本工作原理涉及多个命令,包括`snap list -all`、`awk`、`while`和`read`。这些命令协作运行,从`snap list -all`输出中提取被标记为“禁用”的Snap包名和修订号,然后使用这些信息调用`snap remove`命令来删除相应版本。
一些论坛建议将Snap软件包的保留值设置为2。然而,根据Snap的默认行为,为任何软件包保存两个版本,此设置可能不再必要。总之,通过清理额外的软件包版本,可以有效释放Ubuntu磁盘空间。
如果你使用了这个教程并成功释放了空间,请在评论区分享你的经验。本文由LCTT原创编译,Linux中国荣誉推出。作者:Abhishek Prakash 选题:lujun9972 译者:geekpi 校对:wxy。