Ubuntu Stream 8 提高存储效率实用指南

一 快速定位空间占用来源
- 查看整体磁盘使用情况:运行 df -h,快速确认根分区或家目录所在分区的使用率,判断磁盘空间是否接近满载。
- 分析目录占用情况:使用 du -sh /path 查看指定目录总大小;如需定位大文件,可执行 sudo find / -type f -size +100M -exec ls -lh {} ;。
- 交互式扫描磁盘:安装并使用 ncdu(例如:sudo apt-get install ncdu;ncdu /),可更高效地找出占用空间最多的目录和文件。
二 系统级清理与维护优化
- 包管理缓存与无用依赖清理:执行 sudo apt clean(清空已下载的软件包缓存)、sudo apt autoclean(清理过期缓存索引)、sudo apt autoremove(移除不再需要的依赖包和旧组件)。
- 旧内核清理:先通过 dpkg -l | grep linux-image 列出已安装内核,并确认当前运行内核(uname -r),再删除不再使用的旧内核,例如:sudo apt purge linux-image-5.15.0-xx-generic(请替换为实际版本号)。
- systemd 日志轮转与压缩:可设置日志保留策略,例如 sudo journalctl --vacuum-time=7d(仅保留最近 7 天日志)或 sudo journalctl --vacuum-size=1G(日志总量限制在 1GB 内);如需长期控制日志增长,可进一步配置 /etc/logrotate.conf 中的 rotate、compress 等规则。
- 临时文件与用户缓存清理:可清理 /tmp(如:sudo rm -rf /tmp/),同时清理用户缓存 **rm -rf ~/.cache/;缩略图缓存 rm -rf ~/.cache/thumbnails/*。
- Snap 版本管理:通过 snap list --all 查看所有已安装修订版,删除旧版本可使用:sudo snap remove --revision (请谨慎操作,避免误删当前正在使用的修订版)。
三、可视化工具与重复文件清理分析
- 图形化空间分析:使用 磁盘占用分析器(Baobab/Disk Usage Analyzer) 或 系统监视器(System Monitor),可以更直观地查看磁盘占用情况并手动执行清理。
- 重复文件清理:借助 FSLint 或 FDUPES 查找并删除重复文件,减少重复存储带来的空间浪费。
四 扩容与系统架构优化
- 扩展磁盘容量:当存在可用空间时,可使用 GParted 调整分区;如果系统已采用 LVM,则可以直接扩展逻辑卷;在虚拟机环境中,也可以先在宿主机侧扩容虚拟磁盘,再扩展分区与文件系统。
- 运行时优化:根据实际业务需求调整 swappiness(降低系统频繁使用交换分区的倾向),并为不同工作负载选择合适的 I/O 调度器,从而减轻磁盘压力并提升响应效率。
- 容器与数据库场景优化:定期清理 Docker 中未使用的容器、镜像和卷;对于 MySQL/MariaDB,可执行 OPTIMIZE TABLE 等维护命令,以优化存储占用和访问性能。
五 自动化管理与操作注意事项
- 建议将常用清理命令整理为脚本,并结合 cron 定期执行,例如每周自动清理日志和缓存,同时保留必要的系统快照或数据备份。
- 删除旧内核前务必先确认当前正在使用的内核版本(uname -r),避免误删关键内核导致系统无法正常启动。
- 清理 /tmp 和用户缓存时,应注意不要影响正在运行的程序;对于重要数据,建议先完成备份,再进行批量删除或系统清理操作。
