linux的du和df命令

來源:互聯網
上載者:User

linux的du和df命令   今天也有同學問我Linux下查看目錄大小的命令,現在也將前陣子學習到du/df兩個命令總結一下吧。 前陣子測試工作中有遇到過由於磁碟空間滿導致程式無法執行到情況,所以使用了df和du兩個命令。   www.2cto.com   du查看目錄大小,df查看磁碟使用方式。 我常使用的命令(必要時,sudo使用root許可權), 1.查看某個目錄的大小:du -hs /home/master/documents   查看目錄下所有目錄的大小並按大小降序排列:sudo du -sm /etc/* | sort -nr | less 2.查看磁碟使用方式(檔案系統的使用方式):sudo df -h   df --block-size=GB -h是使輸出結果更易於人類閱讀;du -s只展示目錄的使用總量(不分別展示各個子目錄情況),-m是以MB為單位展示目錄的大小(當然-k/-g就是KB/GB了)。 更多資訊,還是man du 和 man df 來獲得吧。   www.2cto.com   du - estimate file space usage Summarize disk usage of each FILE, recursively for directories. df - report file system disk space usage Show information about the file system on which each FILE resides, or all file systems by default. df displays the amount of disk space available on the file system containing each file nameargument. If no file name is given, the space available on all currently mounted file systems is shown.  du du的英文為:disk usage,含義是磁碟空間使用方式,功能是逐級進入指定目錄的每一個子目錄並顯示該目錄佔用檔案系統資料區塊的情況,如果沒有指定目錄,則對當前的目錄進行統計。   www.2cto.com  du的命令各個選項含義如下:  a:顯示全部目錄和其次目錄下的每個檔案所佔的磁碟空間 s:只顯示各檔案大小的總合 b:大小用bytes來表示 x:跳過在不同檔案系統上的目錄不予統計 a:遞迴地顯示指定目錄中各檔案及子孫目錄中各檔案佔用的資料區塊數 ... 使用du進行查看 root@tech163:/home/htmlfile# du 16      ./test 60      ./bbb 84      .  其中第一列是以塊為單位計的磁碟空間容量,第二列列出目錄中使用這些空間的目錄名稱  1)查看目前的目錄包含子目錄的大小 root@tech163:/home/htmlfile# du -sm . 1       . 其中的du -sm . 的“.”是代表目前的目錄。  2)查看目前的目錄以及子目錄的大小 root@tech163:/home/htmlfile# du -h 16K     ./test 60K     ./bbb 84K     . 其中 -h 表示使用K,M,G的人性化形式顯示。  3)看到目前的目錄下的bbb目錄大小,但不想查看其他目錄以及子目錄 root@tech163:/home/htmlfile# du -ch bbb | tail -n 1 60K     total 使用了管道包含了du和tail兩個命令,-c表示最後計算出所列目錄的大小之和。  4)列出目前的目錄下所有目錄和檔案的大小 root@tech163:/home/htmlfile# du -ah bbb 4.0K    bbb/mysql.php 4.0K    bbb/index.htm 4.0K    bbb/p.php 28K     bbb/memcache.php 12K     bbb/.session.php.swp 4.0K    bbb/hello.html 60K     bbb 其中-a表示包含目錄和檔案  5)不換行列出目錄以及子目錄大小的資訊 root@tech163:/home/htmlfile# du -0h 16K     ./test60K       ./bbb84K        .root@tech163:/home/htmlfile# 其中 -0 表示列出一條資訊後不換行,接著輸出第二條資訊。  df 於du不同的是,du是面向檔案的命令,只計算被檔案佔用的空間。不計算檔案系統metadata 佔用的空間。df則是基於檔案系統總體來計算,通過檔案系統中未配置的空間來確定系統中已經分配空間的大小。df命令可以擷取硬碟佔用了多少空間,還剩下多少空間,它也可以顯示所有檔案系統對i節點和磁碟塊的使用方式。  df命令各個選擇的含義如下:  a:顯示全部的檔案系統和各分割區的磁碟使用情形 i:顯示i -nodes的使用量 k:大小用k來表示 (預設值) t:顯示某一個檔案系統的所有分割區磁碟使用量 x:顯示不是某一個檔案系統的所有分割區磁碟使用量 T:顯示每個分割區所屬的檔案系統名稱 ....  使用df進行查看  Filesystem           1K-blocks      Used Available Use% Mounted on /dev/cciss/c0d0p1      2068156    611572   1351528  32% / tmpfs                  1038080         4   1038076   1% /lib/init/rw udev                     10240        64     10176   1% /dev tmpfs                  1038080         4   1038076   1% /dev/shm /dev/cciss/c0d0p9    130700120  44034236  86665884  34% /home /dev/cciss/c0d0p7      2068156     68932   1999224   4% /tmp /dev/cciss/c0d0p8      4132372   1760620   2161840  45% /usr /dev/cciss/c0d0p6      2068156    330104   1632996  17% /var  第一行是檔案系統對應的硬碟分區 第二行是分區包含的資料區塊的資料(1資料庫為1024位元組) 第三四行是已用和未用的資料區塊數組 第五行是普通使用者空間使用的百分比 第六行是檔案系統的安裝點  其中第三四行已用和未用資料區塊相加並不等於第二行總資料區塊,這是因為分區留了少量空間提供給  系統管理員使用。  1) chenyz@gzhouse:~$ df -h 檔案系統              容量  已用 可用 已用% 掛載點 /dev/cciss/c0d0p1     2.0G  598M  1.3G  32% / tmpfs                1014M  4.0K 1014M   1% /lib/init/rw udev                   10M   64K   10M   1% /dev tmpfs                1014M  4.0K 1014M   1% /dev/shm /dev/cciss/c0d0p9     125G   42G   83G  34% /home /dev/cciss/c0d0p7     2.0G   68M  2.0G   4% /tmp /dev/cciss/c0d0p8     4.0G  1.7G  2.1G  45% /usr /dev/cciss/c0d0p6     2.0G  333M  1.6G  18% /var 其中 -h 表示使用K,M,G的人性化形式顯示。   www.2cto.com  2) chenyz@gzhouse:~$ df -ia 檔案系統               Inode (I)已用 (I)可用 (I)已用% 掛載點 /dev/cciss/c0d0p1     262752   60150  202602   23% / tmpfs                 224142      10  224132    1% /lib/init/rw proc                       0       0       0    -  /proc sysfs                      0       0       0    -  /sys procbususb                 0       0       0    -  /proc/bus/usb udev                  224142     770  223372    1% /dev tmpfs                 224142       3  224139    1% /dev/shm devpts                     0       0       0    -  /dev/pts /dev/cciss/c0d0p9    130763968 1972907 128791061    2% /home /dev/cciss/c0d0p7     262752      54  262698    1% /tmp /dev/cciss/c0d0p8     524832   35743  489089    7% /usr /dev/cciss/c0d0p6     262752    4896  257856    2% /var      所謂的 inode 是用來存放檔案及目錄的基本資料,包含時間、檔名、使用者及群組等。在分割扇區時,系統會先做出一堆 inode 以供以後使用,inode 的數量關係著系統中可以建立的檔案及目錄總數。如果要存的檔案大部分都很小,則同樣大小的硬碟中會有較多的檔案,也就是說需要較多的 inode 來掛檔案及目錄

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.