溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

查找linux系統(tǒng)中大文件的方法

發(fā)布時(shí)間:2020-08-10 16:46:21 來源:ITPUB博客 閱讀:136 作者:不一樣的天空w 欄目:關(guān)系型數(shù)據(jù)庫(kù)

http://blog.csdn.net/bobo0915/article/details/51980650

可以用下面的命令查找到系統(tǒng)中哪一個(gè)文件夾有問題然后逐層查看就可以找到是哪一個(gè)文件了

命令是

首先切換到根目錄
cd /
du -sh ./*
du -sh ./* | sort

然后找到最大的文件夾
逐層就可以找到是哪一個(gè)文件夾最大是否是有問題的,一般這樣就可以確定目標(biāo)文件是哪一個(gè)了

==========================

問題:磁盤空間只使用了56%仍有剩余空間,但是建立文件和建立文件夾就是提示設(shè)備沒有空間了。

分析:在磁盤上建立文件的時(shí)候需要兩個(gè)條件:
        1.磁盤空間,
        2.需要有inode  任何一個(gè)滿了都回提示設(shè)備沒有空間。
此處具體原因是由于磁盤的inode分配完了,導(dǎo)致提示磁盤滿。


可以使用df -ia查看磁盤詳細(xì)信息。

[root@~]# df -ia  
       文件系統(tǒng)               Inode (I)已用 (I)可用 (I)已用% 掛載點(diǎn)  
       /dev/sda3            4928640   89934 4838706    2%  /  
       proc                       0       0       0    -   /proc  
       sysfs                      0       0       0    -   /sys  
       devpts                     0       0       0    -   /dev/pts  
       /dev/sda1              50200      35   50165    1%  /boot  
       tmpfs                  35352       1   35351    1%  /dev/shm  
       none                       0       0       0    -   /proc/sys/fs/binfmt_misc  
       /dev/drbd0            251392  251392       0  100%  /data  

以上查看到(I) 使用了100%   

解決:刪除一些無用的文件或者文件夾,釋放inode。

關(guān)于磁盤空間中索引節(jié)點(diǎn)爆滿的問題還是挺多的,自己本想寫寫處理方案,但是看到了網(wǎng)友們文采不錯(cuò),對(duì)于此問題的處理方法都比較妥當(dāng),就借過來跟大家分享下:

一、發(fā)現(xiàn)問題:
  在一臺(tái)配置較低的Linux服務(wù)器(內(nèi)存、硬盤比較?。┑?data分區(qū)內(nèi)創(chuàng)建文件時(shí),系統(tǒng)提示磁盤空間不足,用df -h命令查看了一下磁盤使用情況,發(fā)現(xiàn)/data分區(qū)只使用了66%,還有12G的剩余空間,按理說不會(huì)出現(xiàn)這種問題。

二、分析問題:
  后來用df -i查看了一下/data分區(qū)的索引節(jié)點(diǎn)(inode),發(fā)現(xiàn)已經(jīng)用滿(IUsed=100%),導(dǎo)致系統(tǒng)無法創(chuàng)建新目錄和文件。


inode譯成中文就是索引節(jié)點(diǎn),每個(gè)存儲(chǔ)設(shè)備(例如硬盤)或存儲(chǔ)設(shè)備的分區(qū)被格式化為文件系統(tǒng)后,應(yīng)該有兩部份,
一部份是inode,而inode呢,就是用來存儲(chǔ)這些數(shù)據(jù)的信息,這些信息包括文件大小、屬主、歸屬的用戶組、讀寫權(quán)限等。
另一部份是Block,Block是用來存儲(chǔ)數(shù)據(jù)用的。inode為每個(gè)文件進(jìn)行信息索引,所以就有了inode的數(shù)值。操作系統(tǒng)根據(jù)指令,能通過inode值最快的找到相對(duì)應(yīng)的文件。
 而這臺(tái)服務(wù)器的Block雖然還有剩余,但inode已經(jīng)用滿,因此在創(chuàng)建新目錄或文件時(shí),系統(tǒng)提示磁盤空間不足。

三、查找原因:
 /data/cache目錄中存在數(shù)量非常多的小字節(jié)緩存文件,占用的Block不多,但是占用了大量的

四、解決方案:
   1、刪除/data/cache目錄中的部分文件,釋放出/data分區(qū)的一部分inode,特別要留意那些spool出來的文件,這種文件一般會(huì)占用比較多的節(jié)點(diǎn),因?yàn)楸容^小而且零碎,同時(shí)要多留意日志文件信息等

  2、用軟連接將空閑分區(qū)/opt中的newcache目錄連接到/data/cache,使用/opt分區(qū)的inode來緩解/data分區(qū)inode不足的問題:
  ln -s /opt/newcache /data/cache

  3、更換服務(wù)器,用高配置的服務(wù)器替換低配置的服務(wù)器。很多時(shí)候用錢去解決問題比用技術(shù)更有效,堆在我辦公桌上5臺(tái)全新的 DELL PowerEdge 2950 服務(wù)器即將運(yùn)往IDC機(jī)房。一般不建議


關(guān)于磁盤的inode滿100%--i節(jié)點(diǎn)大爆發(fā)

http://blog.sina.com.cn/s/blog_79d1f5e00100qywq.html

原因:
    通常是發(fā)現(xiàn)磁盤沒有滿但是無法寫入文件。提示“no space left on device”,用df -i 查看,應(yīng)該會(huì)發(fā)現(xiàn)相應(yīng)的分區(qū)是100%,一般都是crontab的job有問題,造成/var/spool/clientmqueue中產(chǎn)生許多的零碎文件。

處理方法:
  用rm -rf *會(huì)不能刪除,并會(huì)有相應(yīng)的提示,大意是參數(shù)太多。
  可以用多種方法,這里提及一個(gè)我隨便寫的,在/var/spool/clientmqueue/下執(zhí)行命令:“l(fā)sattr ./|awk -F"/" '{print $3}'|xargs -i rm -rf {}”用lsattr列出./下面的文件名的屬性,用awk取出名字,然后rm -rf

  還有一個(gè)方法比較普遍的使用:“find /var/spool/clientmqueue/ -type f -exec rm {} \;”或者在/var/spool/clientmqueue/目錄下“find ./ -exec rm {} \;”
  將crontab中沒有定向輸出的行都在最后加上“> /dev/null 2>&1”,在刪除的過程中操作。或者先停止crontab,加上重定向。








向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI