解决方法:1、如果是磁盘分区“block”或“inode”空间使用率达到“100%”,可通过扩容云硬盘来解决;2、如果是已删除文件因句柄被占用未释放导致相应空间未释放,可用“kill -9 进程编号”命令,通过结束进程释放磁盘空间来解决。
本教程操作环境:linux5.9.8系统、Dell G3电脑。
问题描述
在Linux操作系统云服务器中创建文件时提示空间不足:No space left on device
可能原因
磁盘分区block空间使用率达到100%。
磁盘分区inode空间使用率达到100%。
已删除文件因句柄被占用未释放导致相应空间未释放。
fs.inotify.max_user_watches值耗尽
磁盘分区block空间使用率达到100%
执行以下命令查看磁盘空间。
df -h
如回显信息如下所示说明block空间使用率100%。
解决方案:扩容云硬盘。
磁盘分区inode空间使用率达到100%
执行以下命令查看磁盘空间。
df -i
如回显信息如下所示说明inode空间使用率100%。
解决方案:扩容云硬盘。
已删除文件因句柄被占用未释放导致相应空间未释放
登录服务器,执行df -h查看磁盘block空间使用率为100%。
执行df -i查看磁盘inode空间使用率较低,如下截图所示,本例inode空间使用率为1%。
执行du -sh查看文件占用空间和磁盘可用空间相差较大。
解决方案:
执行以下命令,查找当前分区是否存在未被清除句柄的文件。
lsof |grep delete
执行以下命令,结束进程释放磁盘空间。
kill -9 进程编号
fs.inotify.max_user_watches值耗尽
Linux操作系统云服务器提示空间不足:No space left on device
解决方案:
执行以下命令,编辑/etc/sysctl.conf文件。
vi /etc/sysctl.conf
补充如下信息:
fs.inotify.max_user_watches = 524288
执行以下命令使修改生效。
sysctl -p
Inotify用于监视文件系统事件, 默认情况下可监视的每个真实用户ID创建的文件数量 上限为8192,可以通过执行以下命令获取当前的inotify文件监视限制。
cat /proc/sys/fs/inotify/max_user_watches
如果此限制不足以监视所有文件,必须增加限制以使正常工作。
相关推荐:《Linux视频教程》
Das obige ist der detaillierte Inhalt vonWas soll ich tun, wenn Linux meldet, dass nicht genügend Speicherplatz vorhanden ist?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!