清理日志
查看 journal 日志占用的硬盘空间
journalctl -x --disk-usage
一次性清理 journal 日志
journalctl --vacuum-size=10M # 清理日志到只剩下 10M
journalctl --vacuum-time=1d # 清理一天前的日志
清理 apt-get 缓存
apt-get clean
apt-get autoclean
清理登录日志
这个文件是记录错误登录的日志,如果有人每天试你的密码来暴力破解你的 ssh,那你的这个文件就会很大。
echo "" > /var/log/btmp
echo "" > /var/log/auth.log
删除残余的配置文件
通常Debian/Ubuntu删除软件包可以用两条命令
sudo apt-get remove <package-name>
sudo apt-get purge <package-name>
找出系统上哪些软件包留下了残余的配置文件
dpkg --list | grep "^rc"
其中第一栏的rc表示软件包已经删除(Remove),但配置文件(Config-file)还在. 现在提取这些软件包的名称.
dpkg --list | grep "^rc" | cut -d " " -f 3
删除这些软件包
dpkg --list | grep "^rc" | cut -d " " -f 3 | xargs sudo dpkg --purge
Docker清理
容器清理
docker container prune #仅删除停止运行的容器
docker rm -f $(docker ps -aq) #删除所有容器(包括停止的、正在运行的)
docker container rm -f $(docker container ls -aq) #同上
镜像清理
docker image rm $(docker image ls -q) #删除所有镜像。但正在被容器使用的镜像无法删除
数据卷清理
docker volume rm $(docker volume ls -q) #删除不再使用的数据卷
缓存清理
docker builder prune #删除 build cache
一键清理
docker system df
命令,类似于 Linux
上的 df
命令,用于查看 Docker
的磁盘使用情况
TYPE列出了 Docker
使用磁盘的 4 种类型:
- Images :所有镜像占用的空间,包括拉取下来的镜像,和本地构建的。
- Containers :运行的容器占用的空间,表示每个容器的读写层的空间。
- Local Volumes :容器挂载本地数据卷的空间。
- Build Cache :镜像构建过程中产生的缓存空间(只有在使用 BuildKit 时才有,Docker 18.09 以后可用)。
最后的 RECLAIMABLE 是可回收大小。
docker system prune
: 可以用于清理磁盘,删除关闭的容器、无用的数据卷和网络,以及 dangling 镜像(即无 tag 的镜像)。docker system prune -a
: 清理得更加彻底,可以将没有容器使用 Docker镜像都删掉。 注意,这两个命令会把你暂时关闭的容器,以及暂时没有用到的 Docker 镜像都删掉了。