![linux df 和 OSError: [Errno 28] 設備上沒有剩餘空間](https://rvso.com/image/1253293/linux%20df%20%E5%92%8C%20OSError%3A%20%5BErrno%2028%5D%20%E8%A8%AD%E5%82%99%E4%B8%8A%E6%B2%92%E6%9C%89%E5%89%A9%E9%A4%98%E7%A9%BA%E9%96%93.png)
我有一個奇怪的不一致之處(儘管我可能只是錯過了一些非常基本的東西)。在運行一些在我的 I 磁碟上產生小檔案的腳本時,我不斷收到此錯誤:
OSError: [Errno 28] No space left on device
但是當我運行 df -h 時,我得到:
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 15G 12G 2.2G 85% /
udev 502M 144K 502M 1% /dev
none 502M 0 502M 0% /dev/shm
none 502M 72K 502M 1% /var/run
none 502M 0 502M 0% /var/lock
none 502M 0 502M 0% /lib/init/rw
那麼我的磁碟空間是否不足?
感謝您的任何意見!
答案1
您可能沒有索引節點了。嘗試df -i
。
答案2
這可能有幾個原因:
- 一個進程目前正在寫入一個大文件,因此磁碟使用統計資料在文件關閉之前不會更新。在這種情況下,您必須透過運行來檢查已使用的總空間
sudo du -k /你的/路徑
- 有一個或多個已刪除的檔案仍在被某個進程使用,因此 df 實用程式在計算總磁碟使用量時不會考慮它們;你可以透過運行找到這些文件
須藤 lsof / | grep 刪除
- 檔案系統耗盡了 inode,您可以透過執行來檢查
sudo df -i /你的/路徑