前提:make zImage 2.6.38内核
错误:drivers/media/video/gspca/m5602/m5602_core.c:434:1: fatal error: error writing to /tmp/ccYxZaeC.s: No space left on device
最终解决是删除了一些源文件,可能是linux硬盘不够大就几十G,还有就是把make 过2.6.28的内核,做make clean;
其它处理参考
处理步骤:
1 检查分区使用率
[root@linux ~]# df -lk
Filesystem
/dev/hda2
/dev/hda1
/dev/hda7
none
/dev/hda3
/dev/hda6
分区/var的使用率只有79%,系统有空间可以用
2 检查/var/lock下的文件,删除/var/lock/subsys/nfs后,touch /var/aa,成功创建文件,删除/var/aa
3 发现删除/var/lock下的任意一个文件后
[root@linux /var]#touch /var/aa
[root@linux /var]# touch aa1
touch: creating `aa1': No space left on device
4 将检查扩大到/var下的其他目录,
[root@linux icons]# cd /var/www/icons
[root@linux icons]# mv a.gif /tmp
[root@linux icons]# mv a.png /tmp
[root@linux icons]# df -li
[root@linux icons]# touch aa
[root@linux icons]# touch bb
[root@linux icons]# touch cc
touch: creating `cc': No space left on device -----------只能创建两个文件,当创建第三个文件时,出错
5 怀疑分区/var的inode用尽导致上述问题,检查inode使用率
[root@linux icons]# df -li
Filesystem
/dev/hda2
/dev/hda1
/dev/hda7
none
/dev/hda3
/dev/hda6
发现/var的inode使用率已经达到100%,空余的inode为0
6 分区/var没有配置quota ,平均每个inode的占用空间为:497829k(var size)/128520(inodes)=3.87k,说明分区的最小block为4k,无法增加inode限额。
7 发现/var/spool/clientmqueue下面有太多的文件,共有127679个,占用了127679/128520(inodes)=99.3%的inode
处理方法:确认/var/spool/clientmqueue下的文件已经无用后,删除之。然后/var写入正常。
删除文件后的inode使用情况
[root@linux clientmqueue]# df -li
Filesystem
/dev/hda2
/dev/hda1
/dev/hda7
none
/dev/hda3
/dev/hda6
结论:分区/var的inode全部用尽,free inode为0,导致无法创建新的文件或目录,以后遇到类似的问题要注意