目录

Debian系统瘦身

以下是几种Debian系统瘦身的方法:

用命令清除日志、无用软件包

清理系统缓存和日志文件

  • 清理APT缓存:APT在安装和更新软件时会将下载的包保存在缓存目录中,这些缓存文件会占用大量空间。可以使用以下命令清理:

    sudo apt-get clean

    该命令会清理APT缓存目录中的所有已下载的包文件,释放磁盘空间。

  • 清理旧日志文件:系统日志文件会随着时间的推移而不断增长,占用大量磁盘空间。可以使用以下命令来清理旧的日志文件:

    sudo journalctl --vacuum-time=7d

    该命令会删除7天前的日志文件,可以根据需要调整日志保留时间。

  • 清空系统日志文件内容:如果只是想清空系统日志文件内容,保留文件本身,可以使用以下命令:

    truncate -s 0 /var/log/messages

    这条命令会将指定的日志文件内容清空,但保留文件的元信息。

删除不需要的软件包

  • 删除无用的依赖包:使用apt-get autoremove命令可以自动删除不再使用的依赖包和已被卸载软件包的残留文件,减少系统中无用的文件:
    sudo apt-get autoremove
    该命令会删除那些经apt-get自动安装的依赖包,而不会删除用户手动安装的依赖包。
  • 删除指定软件包:如果知道某些软件包不再需要,可以使用以下命令卸载它们及其依赖:
    sudo apt-get remove <package-name>
    如果还需要删除软件包的配置文件,可以使用purge命令:
    sudo apt-get purge <package-name>

手动定位大文件夹或文件

在Debian系统中,可以使用以下命令来显示某个文件夹下的每个文件夹和文件的大小,并按降序排列:

du -sh * | sort -rh

命令解释:

  1. du 命令用于估算文件或文件夹的磁盘使用情况。

    • -s 选项用于显示文件夹的总大小,而不显示其子文件夹的详细信息。

    • -h 选项用于以人类可读的格式显示文件夹大小(例如,使用KB,MB,GB等单位)。

  2. * 通配符表示当前目录下的所有文件和文件夹。

  3. sort 命令用于排序输出结果。

    • -r 选项用于反向排序,即从大到小排列。

    • -h 选项用于人类可读的排序,以便正确地处理文件夹大小的单位。

运行这个命令后,你将看到当前目录下所有文件和文件夹的大小,并按照从大到小的顺序排列。

清理docker文件夹 一个是/var/lib/docker/containers文件夹下的容器日志,通常名称为****-json.log

truncate -s 0 /var/lib/docker/containers/*/*-json.log

或者一劳永逸,以通过修改 Docker 的全局配置来限制日志文件的最大大小保留数量。编辑/etc/docker/daemon.json,修改:

{ 
    "log-driver": "json-file", 
    "log-opts": { "max-size": "100m", "max-file": "3" } }

Docker 清理命令: 顺便运行 docker system prune 也可以清理掉过期的镜像、停止的容器和未使用的网络,这也是释放 /var/lib/docker 空间的好习惯。

  • 清理无用镜像: docker image prune -a 这会删除所有没有容器正在运行的镜像。
  • 清理停止的容器: docker container prune
  • 清理孤儿卷(最隐蔽的空间杀手): 很多时候镜像删了,但容器产生的数据卷还留在磁盘上。docker volume prune

这个文件夹位于/var/lib/docker/overlay2。随着时间增长,有可能容量会暴增。