Arch Linux 清理
sudo pacman -R $(pacman -Qdtq)
1. 清理包缓存
Arch Linux 使用 pacman 作为包管理器,pacman 会在 /var/cache/pacman/pkg/ 目录中存储下载的包文件。这些包文件会占用大量磁盘空间,因此定期清理包缓存是非常重要的。
列出包缓存中的包
ls /var/cache/pacman/pkg/ | less
移除所有未安装的包
sudo pacman -Sc
移除所有包文件
sudo pacman -Scc
自动清理包缓存
可以使用 pacman-contrib 包中的 paccache 工具来自动清理包缓存。
sudo pacman -S pacman-contrib
paccache -r
配置 Systemd 定时器自动清理
在 /etc/systemd/system/paccache.timer 中创建以下内容的文件:
[Unit]
Description=清理旧的 pacman 包缓存
[Timer]
OnCalendar=monthly
Persistent=true
[Install]
WantedBy=multi-user.target
然后启用定时器:
sudo systemctl daemon-reload
sudo systemctl enable --now paccache.timer
2. 移除未使用的包
随着时间的推移,系统中可能会积累一些不再使用的包。这些未使用的包被称为孤儿包,可以使用以下命令列出并移除它们。
列出未使用的包
pacman -Qtdq
移除未使用的包
sudo pacman -R $(pacman -Qtdq)
3. 清理 home 目录缓存
用户目录中的缓存文件位于 ~/.cache 目录中,这些缓存文件也可能会占用大量磁盘空间。定期清理这些缓存文件可以帮助释放空间。
4. 移除旧的配置文件
应用程序的配置文件通常存储在 ~/.config/ 目录中。一些旧的或不再使用的应用程序可能会留下配置文件,这些文件可以手动清理。
5. 查找并移除垃圾文件
为了进一步清理系统,可以使用 rmlint 工具来查找和移除重复文件、空文件、空目录以及断开的符号链接。
安装 rmlint
sudo pacman -S rmlint
使用 rmlint 查找和移除垃圾文件
rmlint <path>
# 比如我想清理 ~/.cache 下的重复文件
cd ~/.cache
rmlint .
./rmlint.sh