Debian-Wheezy
Debian Wheezy (testing) df 報告的捲大小
我對 /dev/sda* 引用有點困惑,因為我在測試盒上安裝了 Wheezy 而不是 Squeeze。
fdisk -l 返回:
Disk /dev/sda: 250.1 GB, 250059350016 bytes 255 heads, 63 sectors/track, 30401 cylinders, total 488397168 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x000e9623 Device Boot Start End Blocks Id System /dev/sda1 * 2048 480278527 240138240 83 Linux /dev/sda2 480280574 488396799 4058113 5 Extended /dev/sda5 480280576 488396799 4058112 82 Linux swap / Solaris
這似乎是正確的。但是 df -h /dev/sda(和 /dev/sda1 和 /dev/sda2 和 /dev/sda5)返回:
Filesystem Size Used Avail Use% Mounted on udev 10M 0 10M 0% /dev
/dev/disk/by-id 和 /dev/disk/by-path 下的每個條目都會發生同樣的情況。/dev/disk/by-uuid 下的兩個條目中只有一個會返回正確的捲大小:
df -h /dev/disk/by-uuid/cacdbad6-7e6b-4e80-84ba-e3c77ef48796 Filesystem Size Used Avail Use% Mounted on /dev/disk/by-uuid/cacdbad6-7e6b-4e80-84ba-e3c77ef48796 229G 22G 196G 11% /
/etc/fstab 的內容:
# /etc/fstab: static file system information. # # Use 'blkid' to print the universally unique identifier for a # device; this may be used with UUID= as a more robust way to name devices # that works even if disks are added and removed. See fstab(5). # # <file system> <mount point> <type> <options> <dump> <pass> # / was on /dev/sda1 during installation UUID=cacdbad6-7e6b-4e80-84ba-e3c77ef48796 / ext4 errors=remount-ro 0 1 # swap was on /dev/sda5 during installation UUID=45840d13-ee36-4e77-8e73-16cbdff25eb1 none swap sw 0 0 /dev/sr0 /media/cdrom0 udf,iso9660 user,noauto 0 0 /dev/fd0 /media/floppy0 auto rw,user,noauto 0 0
似乎除 uuid 之外的所有其他引用都指向交換分區。這是因為 Wheezy 正在測試中,是否應該將其報告為錯誤?
df
如果您只是給它設備名稱,則不確定如何知道這一點。在 sda2 的情況下,沒有可用空間,因為它是一個擴展分區,而在 sda5 的情況下,它既不是交換空間,也應該通過free
.絕對有效的是
df -h /
ordf -h /somemountpoint
。在我的機器上短暫試用後,您可以傳遞輸出
df
中列出的任何設備名稱。mount
同一設備/分區的其他(別名)名稱將不起作用。我會說這可能是一個缺失的功能,但不是一個真正的錯誤。
df
僅提供有關已安裝分區的資訊。來自man df
:如果參數是包含已安裝文件系統的磁碟設備節點的絕對文件名,則df顯示該文件系統上的可用空間,而不是包含設備節點的文件系統(始終是根文件系統)上的可用空間。
df
不能用來詢問設備。通常,圍繞已安裝分區工作的基本 un*x 工具會查看
/etc/mtab
已安裝分區。現在有辦法從/proc/mounts
to建立永久符號連結/etc/mtab
。