Jak ustalić, na jakim systemie plików istnieje katalog?

12

Mam udział NFS, który jest współużytkowany przez około dwa inne komputery. Niedawno zdałem sobie sprawę, że jeden z serwerów nie udostępnia katalogu i zachowuje pliki dla siebie. Czy istnieje sposób, aby sprawdzić, czy udział NFS jest zamontowany w katalogu, w którym myślę, że się znajduje?

Naftuli Kay
źródło
mount -ldziała;)
Naftuli Kay

Odpowiedzi:

19

Może szukasz

df .

Kiedy jesteś w katalogu, którego chcesz poznać punkt montowania?

Straphka
źródło
1
+1, jeśli dodasz mount -ldo swojej odpowiedzi;)
Naftuli Kay
@TK Kocheran Polecenie mount to inny sposób, aby się tego dowiedzieć, ale prawdopodobnie powinieneś wykonać polecenie „mount -l | grep XXX”, aby trochę przefiltrować dane wyjściowe i nadal możesz mieć niejednoznaczne dane wyjściowe (jeśli masz katalogi o podobnych nazwach ). Polecenie df powie ci, gdzie jest zamontowany bieżący katalog i jakiego typu, więc nie ma dwuznaczności w tej metodzie. Ale wynik powinien być taki sam ...
Johan
Zobacz także niedawną dyskusję na temat listy mailingowej grupy austin, która wymienia przypadki narożne, w których może nie działać.
Stéphane Chazelas
8

Pomysł Straphka na użycie df będzie działał dobrze, jeśli dodasz kilka flag, takich jak -T, który pokazuje typ systemu plików (i być może -P dla kompatybilności z POSIX-em). I na dodatek możemy użyć awk do filtrowania danych wyjściowych, więc wypisujemy tylko kolumnę typu wyjściowego.

df -PTh . | awk '{print $2}'

lub jeśli chcesz sprawdzić katalog o nazwie smb / media / w swoim katalogu domowym.

df -PTh ~/smb/media/ | awk '{print $2}'
Johan
źródło
4

Możesz użyć tego:

stat -f -c %T .

Wyprowadza nfs, ext2/ext3lub coś innego.

guettli
źródło
3

Możesz także użyć lsblkpolecenia.

Ponadto, jeśli chcesz wiedzieć szczegółowo:

$ df -T (file system type)
$ df -h (Humana readable format)

Twoje pytanie mount -ljest odpowiedzią, jak powiedzieli inni.

tak
źródło
2

Komenda

stat <file-spec> --printf=%m

Zrób sztuczkę.

Mark Luijendijk
źródło