有用戶登錄到Linux系統(tǒng)服務(wù)器上查看的時(shí)候,竟然發(fā)現(xiàn)df和du查出來(lái)的結(jié)果不一樣,du查出來(lái)的“實(shí)際使用空間”明顯比df查出來(lái)的已使用空間要小很多,這是究竟是怎么一回事呢?難道有些空間被隱藏起來(lái)了?下面來(lái)說(shuō)一下df和du命令查出來(lái)的已使用空間不同的解決方法。
方法如下:
首先,我們用df來(lái)查看已使用空間:
從上圖可知,根分區(qū)已使用5456700KB(合約5.20GB)。
然后,我們用du查出根分區(qū)下每個(gè)目錄的大。
排除紅框中的兩個(gè)目錄(因?yàn)樗麄兪菕燧d上去的),所有目錄的總大小為3075332KB(合約2.93GB),比df查出來(lái)足足小了2.27GB。
為什么會(huì)少了這么多空間呢?
其實(shí)是因?yàn)槲覀冎皠h除了一些進(jìn)程正在寫(xiě)入的文件,雖然已經(jīng)被我們刪除了,但只要進(jìn)程還在,那個(gè)文件就不會(huì)被真正地刪除,只是被臨時(shí)存放到系統(tǒng)的某個(gè)地方而已,有點(diǎn)類似于Windows的回收站。
想解決這個(gè)問(wèn)題,最簡(jiǎn)單地就是重啟服務(wù)器了,但是生產(chǎn)環(huán)境一般都不會(huì)輕易重啟的,所以我們可以通過(guò)其他方式來(lái)解決。
先用lsof命令配合grep命令查出哪些是已經(jīng)被刪除,卻依舊占用系統(tǒng)空間的“無(wú)賴”。
上圖紅框中的文件正是我之前刪除的一個(gè)大文件,我現(xiàn)在嘗試去重啟這個(gè)程序(node),我直接kill掉這個(gè)進(jìn)程,因?yàn)槲易隽俗詣?dòng)啟動(dòng),所以我不用手動(dòng)去啟動(dòng)它。
已使用空間一下子下降到3226324KB(合約3.08GB),已經(jīng)很接近du統(tǒng)計(jì)的總空間了。
接下來(lái),我逐個(gè)重啟了其他deleted的文件,最終df查出來(lái)的大小就和du統(tǒng)計(jì)的總空間差不多大了。
到此,就解決了df和du查出來(lái)的結(jié)果不同的文件,趕走了系統(tǒng)里的“無(wú)賴”,索回屬于我們的空間。
df和du命令查出來(lái)的已使用空間不同的解決方法就說(shuō)到這里了,如你們也有此問(wèn)題的可以按照上述的步驟去操作,從而解決問(wèn)題。
分享到:
2015年全國(guó)職稱計(jì)算機(jī)考試教材(2007模 .. 定價(jià):¥225 優(yōu)惠價(jià):¥213 更多書(shū)籍 | |
全國(guó)職稱計(jì)算機(jī)考試速成過(guò)關(guān)系列套裝:W .. 定價(jià):¥133 優(yōu)惠價(jià):¥133.0 更多書(shū)籍 |