今天朋友告诉我,他的网站总提示验证码错误;记得网站是用dede做的,应该是空间不足.
上服务器df -lh
看了下,很富裕的说;但是依旧报No space left on device
;
查了下,发现是
linux服务器文件的特殊结构导致的:
- inode是用来记录文件的大小,物理地址,属主,属组,读写权限,时间戳,被硬链接的次数等等元数据的.
- block是用来存储数据的.
查看命令
df -li #inode
df -lh #block
定位问题目录
#查出是哪个目录小文件过多导致的
for i in /*; do echo $i; find $i |wc -l; done
#继续按照目录深入
for i in /home/*; do echo $i; find $i |wc -l; done
用上面的命令很快找出问题产生的原因,是因为{$web_dir}/data/session/生成的session文件过多导致的. 知道了原因,也就好解决了;删除所有session文件,加定时任务清理即可.