在 Linux 下你所不知道的 df 命令的那些功能

jopen 9年前發布 | 13K 次閱讀 Linux

問題: 我知道在Linux上我可以用df命令來查看磁盤使用空間。你能告訴我df命令的實際例子使我可以最大限度得利用它嗎?

在 Linux 下你所不知道的 df 命令的那些功能

對于磁盤存儲方面,有很多命令行或基于GUI的工具,它可以告訴你關于當前磁盤空間的使用情況。這些工具用各種人們可讀的格式展示磁盤利用率的詳細信息,比如易于理解的總結,詳細的統計信息或直觀的可視化報告。如果你只想知道不同文件系統有多少空閑的磁盤空間,那么df命令可能是你所需要的。

在 Linux 下你所不知道的 df 命令的那些功能

df命令可以展示任何“mounted”文件系統的磁盤利用率。該命令可以用不同的方式調用。這里有一些有用的 df 命令例子.

用人們可讀的方式展示

默認情況下,df命令用1K為塊來展示磁盤空間,這看起來不是很直觀。“-h”參數使df用更可讀的方式打印磁盤空間(例如 100K,200M,3G)。

$ df -h

Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/ubuntu-root  909G  565G  299G  66% /
none                     4.0K     0  4.0K   0% /sys/fs/cgroup
udev                     3.9G  4.0K  3.9G   1% /dev
tmpfs                    785M  1.2M  784M   1% /run
none                     5.0M     0  5.0M   0% /run/lock
none                     3.9G   63M  3.8G   2% /run/shm
none                     100M   48K  100M   1% /run/user
/dev/sda1                228M   98M  118M  46% /boot

展示Inode使用情況

當你監視磁盤使用情況時,你必須注意的不僅僅是磁盤空間還有“inode”的使用情況。在Linux中,inode是用來存儲特定文件的元數據的一種數據結構,在創建一個文件系統時,inode的預先定義數量將被分配。這意味著,一個文件系統可能耗盡空間不只是因為大文件用完了所有可用空間,也可能是因為很多小文件用完了所有可能的inode。用“-i”選項展示inode使用情況。

$ df -i

Filesystem                Inodes   IUsed    IFree IUse% Mounted on
/dev/mapper/ubuntu-root 60514304 1217535 59296769    3% /
none                     1004417      13  1004404    1% /sys/fs/cgroup
udev                     1000623     552  1000071    1% /dev
tmpfs                    1004417     608  1003809    1% /run
none                     1004417      11  1004406    1% /run/lock
none                     1004417     288  1004129    1% /run/shm
none                     1004417      28  1004389    1% /run/user
/dev/sda1                 124496     346   124150    1% /boot

展示磁盤總利用率

默認情況下, df命令顯示磁盤的單個文件系統的利用率。如果你想知道的所有文件系統的總磁盤使用量,增加“ --total ”選項(見最下面的匯總行)。

$ df -h --total

Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/ubuntu-root  909G  565G  299G  66% /
none                     4.0K     0  4.0K   0% /sys/fs/cgroup
udev                     3.9G  4.0K  3.9G   1% /dev
tmpfs                    785M  1.2M  784M   1% /run
none                     5.0M     0  5.0M   0% /run/lock
none                     3.9G   62M  3.8G   2% /run/shm
none                     100M   48K  100M   1% /run/user
/dev/sda1                228M   98M  118M  46% /boot
total                    918G  565G  307G  65% -

展示文件系統類型

默認情況下,df命令不顯示文件系統類型信息。用“-T”選項來添加文件系統信息到輸出中。

$ df -T

Filesystem              Type     1K-blocks      Used Available Use% Mounted on
/dev/mapper/ubuntu-root ext4     952893348 591583292 312882844  66% /
none                    tmpfs            4         0         4   0% /sys/fs/cgroup
udev                    devtmpfs   4002492         4   4002488   1% /dev
tmpfs                   tmpfs       803536      1196    802340   1% /run
none                    tmpfs         5120         0      5120   0% /run/lock
none                    tmpfs      4017668     60176   3957492   2% /run/shm
none                    tmpfs       102400        48    102352   1% /run/user
/dev/sda1               ext2        233191    100025    120725  46% /boot

包含或排除特定的文件系統類型

如果你想知道特定文件系統類型的剩余空間,用“-t ”選項。你可以多次使用這個選項來包含更多的文件系統類型。

$ df -t ext2 -t ext4

Filesystem              1K-blocks      Used Available Use% Mounted on
/dev/mapper/ubuntu-root 952893348 591583380 312882756  66% /
/dev/sda1                  233191    100025    120725  46% /boot

排除特定的文件系統類型,用“-x ”選項。同樣,你可以用這個選項多次來排除多種文件系統類型。

$ df -x tmpfs

顯示一個具體的掛載點磁盤使用情況

如果你用df指定一個掛載點,它將報告掛載在那個地方的文件系統的磁盤使用情況。如果你指定一個普通文件(或一個目錄)而不是一個掛載點,df將顯示包含這個文件(或目錄)的文件系統的磁盤利用率。

$ df /

Filesystem              1K-blocks      Used Available Use% Mounted on
/dev/mapper/ubuntu-root 952893348 591583528 312882608  66% /

$ df /home/dev

Filesystem              1K-blocks      Used Available Use% Mounted on
/dev/mapper/ubuntu-root 952893348 591583528 312882608  66% /

顯示虛擬文件系統的信息

如果你想顯示所有已經存在的文件系統(包括虛擬文件系統)的磁盤空間信息,用“-a”選項。這里,虛擬文件系統是指沒有相對應的物理設備的假文件系統,例如,tmpfs,cgroup虛擬文件系統或FUSE文件安系統。這些虛擬文件系統大小為0,不用“-a”選項將不會被報告出來。

$ df -a

Filesystem              1K-blocks      Used Available Use% Mounted on
/dev/mapper/ubuntu-root 952893348 591578716 312887420  66% /
proc                            0         0         0    - /proc
sysfs                           0         0         0    - /sys
none                            4         0         4   0% /sys/fs/cgroup
none                            0         0         0    - /sys/fs/fuse/connections
none                            0         0         0    - /sys/kernel/debug
none                            0         0         0    - /sys/kernel/security
udev                      4002492         4   4002488   1% /dev
devpts                          0         0         0    - /dev/pts
tmpfs                      803536      1196    802340   1% /run
none                         5120         0      5120   0% /run/lock
none                      4017668     58144   3959524   2% /run/shm
none                       102400        48    102352   1% /run/user
none                            0         0         0    - /sys/fs/pstore
cgroup                          0         0         0    - /sys/fs/cgroup/cpuset
cgroup                          0         0         0    - /sys/fs/cgroup/hugetlb
/dev/sda1                  233191    100025    120725  46% /boot
vmware-vmblock                  0         0         0    - /run/vmblock-fuse

via: http://ask.xmodulo.com/check-disk-space-linux-df-command.html

譯者:mtunique 校對:wxy

本文由 LCTT 原創翻譯,Linux中國 榮譽推出

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!