linux make时提示No space left on device,如何解决?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux make时提示No space left on device,如何解决?相关的知识,希望对你有一定的参考价值。
Ubuntu 9.04,磁盘空间足够。
make 执行时提示了以下
debug_client_parser.cpp:1040: fatal error: error writing to /tmp/ccrCYCAe.s: No space left on device
我看了/tmp的属性,说126kb以用,934kb可用,是不是这问题?
如何解决呢?
希望高人指点,谢谢。
重点在如何解决。第一条回答你别反问我怎么够用,我知道不过用。回答直接一点,别扭来扭去,相你那扭曲的心里。
umount /tmp
this may help.shit..
tmp没有空间了。要么重定向你的tmp目录,要么去删除掉tmp下的一些不用的东西。还可以取消代码往tmp目录的写入。一般都是没用的 参考技术A mkdir /home/papaya/tmp
export TMPDIR=/home/papaya/tmp
上面两条命令结束后,重新编译就不会报错了,如果还报错,赶紧去看看你的/home/papaya/tmp目录下面空间够不够用,不够用,把没用的东西删掉一些。 参考技术B /tmp这么小?怎么够用?
No space left on device 解决Linux系统磁盘空间满的办法
由于当初安装系统时设计不合理,有些分区分的过小,以及网络通讯故障等造成日志文件迅速增长等其他原因都可能表现为磁盘空间满,造成无法读写磁盘,应用程序无法执行等。
(以/home空间满为例):
1. 定期对重要文件系统扫描,并作对比,分析那些文件经常读写
#ls –lR /home >;files.txt
#diff filesold.txt files.txt
通过分析预测空间的增长情况,同时可以考虑对不经常读写文件进行压缩,以减少占用空间。
2. 查看空间满的文件系统的inodes消耗
#df – i /home
如果还有大量inode可用,说明大文件占用空间,否则是可能大量小文件占用空间。
3. 找出占用空间较大的目录
查看/home 占用的空间
#du –hs /home
查看/home 下占用空间超过1000m
#du |awk ‘$1>;2000‘
4. 找出占用空间较大的文件
#find /home –size +2000k
5. 找出最近修改或创建的文件
先touch一个你想要的时间的文件如下:
# touch -t 08190800 test
#find /home -newer test -print
6. 删除系统日志等
删除生成 core,mbox等文件
#find / -name core|xargs rm –rf
删除日志
#rm -rf /var/log/*
7. 对分区做链接
在有空间的分区,对没有空间分区做链接
#ln -s /home /usr/home
8.找出耗费大量的空间的进程
根据不同的应用,找出对应的进程。分析原因。
9.检查并修复文件系统
#fsck –y /home
10.重起机器
有了以上的十招,应该可以解决大部分问题,但关键还是安装时要规划好分区。另外发现磁盘满时,不能急,小心操作,认真分析原因,然后小心应对。需要注意,以上十招不需要顺序执行,有的可能一招封喉,有的可能需要数招并用,删除操作一定要小心。如果还不行,只有采取增加硬盘,重新安装系统等"硬"办法了。
还可以:
cd \
du -h --max-depth=1|grep G|sort -n
找到最大的那个目录后进入该目录
再运行du -h --max-depth=1|grep G|-n
如果没有结果可以运行 du -h --max-depth=1|grep M|sort -n
找出来以后看是否有用的文件
没用就删掉
以上是关于linux make时提示No space left on device,如何解决?的主要内容,如果未能解决你的问题,请参考以下文章