解決方法: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影片教學》
以上是linux提示空間不足怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!