歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux管理 >> Linux維護

Linux找回丟失磁盤空間的方法

Linux系統磁盤提示滿了,可是磁盤內文件加起來的大小和被占用的大小不一致,這就是磁盤丟失的情況,那麼是什麼程序占用了磁盤空間?下面小編就給大家介紹下Linux找回丟失磁盤空間的方法。

經常接觸linux的用戶也許會經常遇到這樣的問題:

收到一個磁盤告警,說某某分區已經滿了,然後登錄服務器 df 一看,發現磁盤確實快滿了,然後你就想找到具體是哪個目錄滿了,於是 du -s * 一看,卻發現所有子目錄的大小總和卻和df顯示的總已使用磁盤空間對不上,有時候甚至還相差很多,於是就納悶了:我的磁盤空間去哪了呢?

這裡就列3種情況:

隱藏文件

linux系統把文件名以。(點號)開頭的文件視為隱藏文件,而類似bash裡*這樣的操作符是不會匹配隱藏文件的,所以如果根目錄下有個較大的隱藏文件的話,是不會被du -sh * 統計到的,解決辦法就是: du -sh 。[^.]* 。

非空目錄被mount

一般掛載其他分區的時候都是建議mount到一個空目錄的,那麼如果mount到一個非空的目錄,情況會怎麼樣呢?比如/mnt目錄本來裡面是有文件的,然後執行了sudo mount /dev/sda6 /mnt。其實這個mount命令完全能正常執行,被mount的分區也能正常訪問,只是原先在/mnt裡的文件,現在已經訪問不到了,包括du也看不到大小了,但是磁盤空間卻還是被占著,因為如果你 umount /mnt 以後,原來的文件都還會回來的。

空洞文件

一個文件的大小和所占磁盤空間也不一定完全一致,比如某個程序一直打開著一個叫log的文件在寫,而中間有人用 》 log 命令清除了log的內容,就會產生這樣的文件。

上面就是Linux找回丟失磁盤空間的方法介紹了,主要是文中三種情況平白占用了磁盤空間,磁盤空間滿了可從這些方面著手清理。

Copyright © Linux教程網 All Rights Reserved