Yanıtlar:
df(1)
Komut size dosya veya dizin üzerinde cihazı söyleyecektir:
df /work
İlk alan, dosya veya dizinin açık olduğu aygıta sahiptir.
Örneğin
$ df /root
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda1 1043289 194300 795977 20% /
Cihaz bir mantıksal birim ise, mantıksal birimin hangi blok cihazların açık olduğunu belirlemeniz gerekir. Bunun için şu lvs(8)
komutu kullanabilirsiniz :
# df /usr
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/orthanc-usr
8256952 4578000 3259524 59% /usr
# lvs -o +devices /dev/mapper/orthanc-usr
LV VG Attr LSize Origin Snap% Move Log Copy% Convert Devices
usr orthanc -wi-ao 8.00g /dev/sda3(0)
Son sütun size usr
, hacim grubundaki orthanc
( /dev/mapper/orthanc-usr
) mantıksal hacmin cihazda olduğunu gösterir /dev/sda3
. Bir cilt grubu birden çok fiziksel birimi kapsayabildiğinden, listelenen birden fazla aygıtınız olduğunu görebilirsiniz.
Diğer bir mantıksal blok aygıtı türü, md (Birden Çok Aygıt ve sanırım meta disk olarak adlandırılır) /dev/md2
. Bir md cihazının bileşenlerine bakmak için, kullanabilir mdadm --detail
veya/proc/mdstat
# df /srv
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/md2 956626436 199340344 757286092 21% /srv
# mdadm --detail /dev/md2
...details elided...
Number Major Minor RaidDevice State
0 8 3 0 active sync /dev/sda3
1 8 19 1 active sync /dev/sdb3
Bunu görebilirsiniz /dev/md2
üzerindedir /dev/sda3
ve /dev/sdb3
cihazlar.
Blok aygıtlarının iç içe geçebilecek başka yöntemleri vardır (sigorta, geridöngü dosya sistemleri), altta yatan blok aygıtını belirlemek için kendi yöntemlerine sahip olur ve aşağı doğru çalışmanız için birden çok katmanı yuvalayabilirsiniz. Her davayı olduğu gibi kabul etmeniz gerekecek.
df
çok ağırlamayı oldu.
lvdisplay
ya lvs
da arkadaşın olacak.
Bir komut dosyası için şunları kullanabilirsiniz:
$ df -P <pathname> | awk 'END{print $1}'
Bu POSIX uyumludur.
Ubuntu’nun modern dağıtımında, dosya / dizininiz ve cihaz arasında ilave bir katman (cihaz eşleyici) vardır. /dev/mapper
gerçek özel cihazlara işaret eden sembolik bağlar içerir. Örneğin, geçerli dizinde çalışıyorum:
$ df . | grep '^/' | cut -d' ' -f1
/dev/mapper/kubuntu--vg-root
$ ls -l /dev/mapper/kubuntu--vg-root
lrwxrwxrwx 1 root root 7 Nov 22 18:02 /dev/mapper/kubuntu--vg-root -> ../dm-1
Böylece cihazın tam yolunu programlı olarak almak için kullanabilirsiniz:
$ realpath $(df . | grep '^/' | cut -d' ' -f1)
Benim durumum hangisi basar:
/dev/dm-1
realpath
GNU coreutils'in bir parçasıdır.
df
hala mapper
yolu gösterecektir .
findmnt -T /work