清理 root:
参考:https://www.f11.cn/os/ubuntu/20806.html
参考:https://blog.csdn.net/comway_Li/article/details/103474855
卸载无用软件:
批量:
sudo apt remove --purge 2048-qt* && sudo apt remove --purge okular* && sudo apt remove --purge featherpad* && sudo apt remove --purge screengrab* && sudo apt remove --purge imagemagick* && sudo apt remove --purge skanlite* && sudo apt remove --purge vlc* && sudo apt remove --purge pulseaudio* && sudo apt remove --purge pavucontrol* && sudo apt remove --purge lximage-qt* && sudo apt remove --purge usb-creator* && sudo apt remove --purge zutty* && sudo apt remove --purge qps* && sudo apt remove --purge quassel* && sudo apt remove --purge vim* && sudo apt remove --purge picom* && sudo apt remove --purge noblenote* && sudo apt remove --purge transmission* && sudo apt remove --purge partitionmanager* && sudo apt remove --purge kcalc* && sudo apt remove --purge texinfo* && sudo apt remove --purge qpdfview* sudo apt autoremove sudo apt autoclean
单个:
sudo apt remove --purge 2048-qt* -y sudo apt remove --purge okular* -y sudo apt remove --purge featherpad* -y sudo apt remove --purge libreoffice* -y sudo apt remove --purge screengrab* -y sudo apt remove --purge imagemagick* -y sudo apt remove --purge skanlite* -y sudo apt remove --purge vlc* -y sudo apt remove --purge pulseaudio* -y sudo apt remove --purge pavucontrol* -y sudo apt remove --purge lximage-qt* -y sudo apt remove --purge usb-creator* -y sudo apt remove --purge zutty* -y sudo apt remove --purge qps* -y sudo apt remove --purge quassel* -y sudo apt remove --purge vim* -y sudo apt remove --purge picom* -y sudo apt remove --purge noblenote* -y sudo apt remove --purge transmission* -y sudo apt remove --purge partitionmanager* -y sudo apt remove --purge kcalc* -y sudo apt remove --purge texinfo* -y sudo apt remove --purge qpdfview* -y sudo snap remove firefox sudo apt autoremove sudo apt autoclean
清除 systemd 日志记录:
Ubuntu 中,也有内核日志数据、系统日志消息以及各种服务的标准输出和错误信息。这种日志记录机制,可以帮助排查系统中发生的情况。
检查日志的大小:
journalctl --disk-usage
清除超过一定天数的旧日志:
sudo journalctl --vacuum-time=3d
输出:
Vacuuming done, freed 3.8G of archived journals from /var/log/journal/a21e7ebb86158cd2b9fc6dbf9df2c6bc. Vacuuming done, freed 0B of archived journals from /var/log/journal.
清理 Nginx 日志:
确定日志位置:
nginx -T | grep -E 'access_log|error_log'
输出:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
error_log /dev/null;
access_log /dev/null;
直接删除即可。
清理 MySQL 日志:
登录 MySQL 执行 FLUSH LOGS; :
mysql -u root -p -e "FLUSH LOGS;"
清理 xrdp 日志:
停止 xrdp 服务:
sudo systemctl stop xrdp
清空日志文件:
sudo cp /dev/null /var/log/xrdp.log
安全地识别并移除 Ubuntu 及其衍生版中的非必要软件包:
这是最关键也最需要谨慎的一步。移除任何软件包前,请务必确认其用途,避免误删系统关键组件。
- 使用
ubuntu-debloater脚本(推荐):这是一个社区维护的自动化脚本,能帮你安全地识别并移除 Ubuntu 及其衍生版中的非必要软件包。- 克隆并进入脚本目录:
git clone https://github.com/lucasgab2230/ubuntu-debloater.git && cd ubuntu-debloater - 赋予执行权限并运行:
chmod +x debloat.sh && sudo ./debloat.sh脚本运行时会列出它将移除的软件包列表,并要求你确认。运行前请仔细阅读列表,确保没有你需要的关键软件。
- 克隆并进入脚本目录:
3. 管理后台服务:禁用不需要的自动启动项
许多服务在后台运行,消耗着内存和CPU。你可以禁用它们。
-
禁用不必要的系统服务:例如,如果你不用蓝牙,可以永久禁用它。
# 查看所有服务及其状态 systemctl list-unit-files --type=service # 禁用并屏蔽蓝牙服务(使其无法被任何操作启动) sudo systemctl mask bluetooth.service
移除旧版本的 Snap 应用程序:
Snap 包的大小稍大于同一应用程序的 DEB 包。此外,Snap 还会保存至少两个旧版本的应用程序,用于备用和回滚。这将占用大量磁盘空间。
查看 Snap 存储的大小:
du -h /var/lib/snapd/snaps
Canonical 公司的 Snapcraft 团队成员 Alan Pope 创建了一个小脚本,用于清理所有旧版本的 Snap 应用:
#!/bin/bash
# Removes old revisions of snaps
# CLOSE ALL SNAPS BEFORE RUNNING THIS
set -eu
snap list --all | awk '/disabled/{print $1, $3}' |
while read snapname revision; do
snap remove "$snapname" --revision="$revision"
done
执行:
chmod +x remove-snaps.sh sudo ./remove-snaps.sh