如何解决Linux系统Tail命令提示No space left on device问题

2025-04-07 18:13:35
推荐回答(2个)
回答1:

原因与解决方法一,磁盘inode被用光导致
/data目录下无法创建文件
> touch a
touch: cannot touch `a': No space left on device

磁盘只使用了61%
> df -h

Filesystem Size Used Avail Use% Mounted on
...
/dev/sda5 817G 466G 310G 61% /data
...
inode被用光
> df -i

Filesystem Inodes IUsed IFree IUse% Mounted on
...
/dev/sda5 54378496 54378496 0 100% /data
...

解决办法:删除无用文件,释放inode

解决方法二,硬盘有空间但还是提示此错误
# tail -f ../logs/catalina.out
tail: cannot watch `../logs/catalina.out': No space left on device
df -h 查看有剩余空间
df -i 查看inode也有剩余空间
最终解决:
# vim /etc/sysctl.conf
添加以下:
fs.inotify.max_user_watches = 32768
生效:
# sysctl -p /etc/sysctl.conf
再次测试:
# tail ../logs/catalina.out
正常输出,成功。

回答2:

硬盘空间不足 使用df -h命令查看还有没有剩余空间或者哪个挂载点还有空闲容量 复制到有容量的挂在目录就行啦
硬盘空间不足 使用df -h命令查看还有没有剩余空间或者哪个挂载点还有空闲容量 复制到有容量的挂在目录就行啦