我是靠谱客的博主 活力鸡翅,最近开发中收集的这篇文章主要介绍Linux之/dev/sda占用100%清理(ncdu使用)0 背景1 ncdu使用方法2 空间清理,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
0 背景
开发过程中,发现服务器/dev/sda6占满了,如下
$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 126G 0 126G 0% /dev
tmpfs 26G 2.6G 23G 11% /run
/dev/sda6 160G 152G 54M 100% /
tmpfs 126G 1.1M 126G 1% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 126G 0 126G 0% /sys/fs/cgroup
/dev/sda1 361M 112M 227M 34% /boot
tmpfs 26G 32K 26G 1% /run/user/108
首先我们可以使用下边的指令来腾出一些空间
sudo apt-get autoclean #清理旧版本的软件缓存
sudo apt-get clean #清理所有软件缓存
sudo apt-get autoremove #删除系统不再使用的孤立软件
我们可以使用ncdu来查看文件夹的大小,一个可以替代du命令的工具,ncdu命令是对传统du命令功能上的增强,不需要像du那样输入大量的命令,就可以计算文件及目录大小并可以按照大小或文件名进行排序。
1 ncdu使用方法
安装方法
sudo apt install ncdu
可以使用以下的快捷方式
up, k — 向上移动光标
down, j – 向下移动光标
right/enter — 打开选定的目录
left, <, h — 打开父目录
n — 按文件名排序(升序/降序)
s — 按文件大小排序(升序/降序)
C – 按项目数排序(升序/降序)
d – 删除选定的文件或目录
t — 排序时将目录放在文件前面
g – 以图形方式显示百分比
2 空间清理
通过ncdu工具,我们能定位到系统的/var/lib/docker目录有异常,比较大
其中aufs目录和container目录中保存了docker的一些文件,可以使用下边的命令清理
$ sudo docker system prune -a
WARNING! This will remove:
- all stopped containers
- all networks not used by at least one container
- all images without at least one container associated to them
- all build cache
Are you sure you want to continue? [y/N] y
注意这一步会把没有运行的镜像和容器全部删掉,要谨慎使用
可以看到,清理后/dev/sda6已经有空间了
/dev/sda6 160G 112G 41G 74% /
还可以使用下边的脚本进一步清理日志文件
#!/bin/sh
echo "==================== start clean docker containers logs =========================="
logs=$(find /var/lib/docker/containers/ -name *-json.log)
for log in $logs
do
echo "clean logs : $log"
cat /dev/null > $log
done
echo "==================== end clean docker containers logs =========================="
清理后查看空间
/dev/sda6 160G 102G 50G 68% /
最后
以上就是活力鸡翅为你收集整理的Linux之/dev/sda占用100%清理(ncdu使用)0 背景1 ncdu使用方法2 空间清理的全部内容,希望文章能够帮你解决Linux之/dev/sda占用100%清理(ncdu使用)0 背景1 ncdu使用方法2 空间清理所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复