国产91精品在线播放,欧美精品在线免费,日韩中文字幕在线有码视频网

上海校區切換校區
圖片

行業新聞

如何解決 Linux 中“磁盤空間不足”的問題

發布時間: 2018-01-04


明明有很多剩余空間,但 Linux 系統依然提示沒有空間剩余。為什么會這樣呢?Linux 偶爾會有一些令人沮喪的模糊的錯誤消息出現,而這就是其中一種。不過這種錯誤通常都是由某幾種因素導致的。

通過 du 和 df 檢查磁盤空間

在開始行動前,最好先檢查一下是否磁盤上是否確實還有空間剩余。雖然桌面環境的工具也很不錯,但命令行上的工具更直接,要好的多。


Linux Filesystem du

首先讓我們看看 du 命令。用它來檢查問題磁盤所在的掛載點目錄。本文假設出問題的分區掛載點為根目錄。

  1. sudo du -sh /


Linux Filesystem df

由于它要遍歷磁盤中的所有文件,因此需要花費一點時間。現在再讓我們試試 df。

  1. sudo df -h

把根目錄和在其中掛載的文件系統加在這條命令的后面。比如,若你的有一個獨立的磁盤掛載到 /home,那么除了根目錄之外,你也需要把它加進來。使用空間的總和應該跟你 du 命令得到的結果接近。否則的話,就說明可能有已刪除文件的文件被進程占用。

當然,這里主要專注點在于這些命令的結果是否要小于磁盤的大小。如果確實小于磁盤大小,那么很明顯有很多地方不對勁。

相關使用 Agedu 分析硬盤空間使用狀況 [1]

可能的原因

這里列出了一些產生這種情況的主要原因。若你發現 du 和 df 的結果之間有差別,那么可以直接檢查第一項原因。否則從第二項原因開始檢查。

已刪除文件被進程所占用

有時,文件可能已經被刪掉了,但有進程依然在使用它。在進程運行期間,Linux 不會釋放該文件的存儲空間。你需要找出這個進程然后重啟這個進程。


Check processes for deleted files

使用下面命令來定位進程。

  1. sudo lsof / | grep deleted

這應該會列出出問題的進程了,然后重啟該進程。

  1. sudo systemctl restart service_name

i 節點不夠了


Linux check filesystem inodes

文件系統中有一些稱為 “i 節點inode” 的元數據,其用來保存文件的相關信息。很多文件系統中的 i 節點數量是固定的,因此很可能 i 節點已經耗盡了而文件系統本身還沒有用完。你可以使用 df 來檢查。

  1. sudo df -i /

比較一下已用的 i 節點和總共的 i 節點數量。如果沒有可用的 i 節點了,那么很不幸,你也無法擴充 i 節點。刪除一些無用的和過期的文件來釋放一些 i 節點吧。

環塊

最后一個很常見的問題就是壞的文件系統塊。除非另有標記,否則操作系統很可能會認為這些塊都是可用的,這會導致文件系統損壞或者硬盤壞死。最好是使用帶 -cc 標志的 fsck 搜索并標記出這些塊。記住,你不能使用正在使用的文件系統(LCTT 譯注:即包含壞塊的文件系統)中的 fsck 命令。你應該會要用到 live CD。

  1. sudo fsck -vcck /dev/sda2

很明顯,這里需要使用你想檢查的磁盤路徑取代命令中的磁盤位置。另外,要注意,這恐怕會花上很長一段時間。


希望這些方案能解決你的問題。這種問題在任何情況下都不是那么容易診斷的。但是,在運氣好的情況下,你可以把文件系統清理干凈并讓你的硬盤再次正常工作。

?


上一篇: phpMyAdmin被曝存在嚴重CSRF漏洞可對數據庫造成破壞

下一篇: 紅帽踐行容器健康指數 欲將新品全部容器化

在線咨詢 ×

您好,請問有什么可以幫您?我們將竭誠提供最優質服務!

<menuitem id="vlare"></menuitem>

    <ul id="vlare"><rp id="vlare"><optgroup id="vlare"></optgroup></rp></ul>

  • 主站蜘蛛池模板: 晋中市| 开化县| 莎车县| 荆州市| 陈巴尔虎旗| 始兴县| 玉龙| 盐城市| 绥棱县| 宝坻区| 泰来县| 太白县| 思南县| 耒阳市| 仙桃市| 龙井市| 阿尔山市| 中西区| 湾仔区| 商河县| 宣汉县| 乡宁县| 项城市| 西充县| 泰州市| 扶绥县| 祥云县| 比如县| 洛浦县| 甘孜| 榆中县| 宣汉县| 崇信县| 大关县| 始兴县| 玉树县| 杭锦后旗| 古蔺县| 舟曲县| 行唐县| 通山县|