Linux 根目录爆掉,命令行无法自动补全,怎么办

极力推荐文章:欢迎收藏
Android 干货分享

阅读五分钟,每日十点,和您一起终身学习,这里是程序员Android

本篇文章主要介绍 Android 开发中的部分知识点,通过阅读本篇文章,您将收获以下内容:

一、cannot create temp file for here-document: No space left on device
二、df 查看 Linux 空间使用情况
三、使用 du 命令查看目录文件占用空间大小
四、rf 删除没用文件

一、cannot create temp file for here-document: No space left on device

编译Android 源码时候莫名其妙的报错,各种查找验证发现代码没问题,使用tab自动补全功能 报-bash: cannot create temp file for here-document: No space left on device,于是使用df 看一下根目录爆满。猜想肯定跟空间爆满有关。

二、df 查看 Linux 空间使用情况

使用 df 命令 查看磁盘空间分布情况。
发现/dev/sda4 30G 30G 0 100% / 已经被占满。

wangjie@ubuntu:~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            7.8G  4.0K  7.8G   1% /dev
tmpfs           1.6G  4.7M  1.6G   1% /run
/dev/sda4        30G   30G     0 100% /
none            4.0K     0  4.0K   0% /sys/fs/cgroup
none            5.0M     0  5.0M   0% /run/lock
none            7.8G     0  7.8G   0% /run/shm
none            100M     0  100M   0% /run/user
/dev/sda1        60M  3.4M   56M   6% /boot/efi
/dev/sda3       1.8T  1.1T  582G  66% /home
wangjie@ubuntu:~$ 

三、使用 du 命令查看目录文件占用空间大小

Filesystem下的挂载点 /dev/sda4 爆满,使用du命令定位根目录下的大文件。

root@ubuntu:/home/wangjie# cd /
root@ubuntu:/# du -h --max-depth=1 
3.8M	./lib32
4.0K	./dev
611M	./tmp
4.0K	./srv
1.6G	./usr
du: cannot access ‘./proc/26242/task/26242/fd/4’: No such file or directory
du: cannot access ‘./proc/26242/task/26242/fdinfo/4’: No such file or directory
du: cannot access ‘./proc/26242/fd/3’: No such file or directory
du: cannot access ‘./proc/26242/fdinfo/3’: No such file or directory
0	./proc
55M	./boot
16K	./lost+found
6.7M	./etc
355M	./lib
12M	./sbin
4.2M	./libx32
4.0K	./lib64
0	./sys
4.4G	./opt
22G	./root
4.0K	./mnt

使用du命令发现 root目录下有个22G的大文件。
root 目录下有个22G的文件
然后继续使用du命令,进入root 继续查看22G大文件是什么?
经再次查看发现是之前安装的ccache软件生成的垃圾导致的。

root@ubuntu:~# du -h --max-depth=1 
4.0K	./.aptitude
4.0K	./.InstallAnywhere
22G	./.ccache_sprd9
8.0K	./.ssh
24K	./.oracle_jre_usage
16K	./.git_template
48K	./.java
40M	./.jack-server
1.2M	./.cache
55M	./.ccache
22G	.
root@ubuntu:~#

22G大文件

四、rf 删除没用文件

发现大文件后,发现其缓存内容非必须的,可以使用rm命令删除掉。


然后再查看磁盘大小,测试Tab自动补全功能ok,编译代码ok,发现果然是它导致的。

至此,本篇已结束,如有不对的地方,欢迎您的建议与指正。同时期待您的关注,感谢您的阅读,谢谢!

微信关注公众号:  程序员Android,领福利

原文地址:https://www.cnblogs.com/wangjie1990/p/11321285.html