Na przykład jest to pierwszy wiersz mojego /etc/fstab
:
UUID=050e1e34-39e6-4072-a03e-ae0bf90ba13a / ext4 errors=remount-ro 0 1
A oto wynik df -h
polecenia (raportowanie wolnego miejsca na dysku):
honey@bunny:~$ df -T
Filesystem Type 1K-blocks Used Available Use% Mounted on
/dev/vda ext4 30832636 4884200 24359188 17% /
none tmpfs 4 0 4 0% /sys/fs/cgroup
udev devtmpfs 498172 12 498160 1% /dev
tmpfs tmpfs 101796 320 101476 1% /run
none tmpfs 5120 0 5120 0% /run/lock
none tmpfs 508972 0 508972 0% /run/shm
none tmpfs 102400 0 102400 0% /run/user
Czy na podstawie tych dwóch można wydedukować, że
UUID=050e1e34-39e6-4072-a03e-ae0bf90ba13a
reprezentuje,/dev/vda
biorąc pod uwagę, że pierwszą kolumnąfstab
jest<file system>
?Czy byłoby dobrze, gdybym to zmodyfikował
/etc/fstab
?/dev/vda / ext4 errors=remount-ro 0 1
EDYCJA: Jeśli tak (na powyższe pytanie), dlaczego
sudo blkid
polecenie pokazuje inny UUID/dev/vda
?$ sudo blkid /dev/vda: LABEL="DOROOT" UUID="6f469437-4935-44c5-8ac6-53eb54a9af26" TYPE="ext4"
Czego tu brakuje?
Odpowiedź: Wnioskuję (3), że jestem błędem w chmurze mojego hosta. Tak więc, identyfikator UUID zgłaszany przez
blkid
(lubls -l /dev/disk/by-uuid
) powinien być taki sam, jak używany w/etc/fstab
.
filesystems
mount
disk-usage
fstab
to ja
źródło
źródło
sudo blkid
polecenia.sudo blkid
polecenie wyświetla inny UUID dla/dev/vda
. To powoduje moje zamieszanie. :) (Zaktualizowane pytanie.)lrwxrwxrwx 1 root root 9 Jun 18 11:04 6f469437-4935-44c5-8ac6-53eb54a9af26 -> ../../vda
. Jeśli chodzi o inne pytanie, skontaktuję się z hostem w tej sprawie.Odpowiedzi:
Zaletą korzystania z UUID jest to, że jest on niezależny od faktycznego numeru urządzenia, jaki system operacyjny podaje Twojemu dyskowi twardemu.
Wyobraź sobie, że dodajesz kolejny dysk twardy do systemu i z jakiegoś powodu system operacyjny decyduje, że twój stary dysk jest teraz
sdb
zamiastsda
.Twój proces rozruchu zostałby spreparowany, gdyby
fstab
wskazał nazwę urządzenia. Ale w przypadku UUID jest w porządku.Bardziej szczegółowe informacje na temat UUID można znaleźć również na blogu „UUID i Linux: wszystko, co trzeba wiedzieć”
źródło
Państwo może i będzie to prawdopodobnie będzie w porządku, ale najprawdopodobniej będzie to lepiej zostawić UUID.
UUID to dowolne ciągi znaków używane do identyfikacji, w tym przypadku, partycji na urządzeniu blokowym; jest przechowywany z samą partycją i może być przypisany do innej w razie potrzeby (podobnie jak adresy MAC).
Zaletą korzystania z UUID jest to, że nie można go pomylić, podczas gdy
/dev/vda
nie; to mogłoby się zdarzyć, że kończy się na innym dysku w czasie startu, chociaż może to być całkowicie teoretyczny kontekst (np bo masz tylko jeden dysk danego typu).Innym bardziej subtelnym przykładem tego, gdzie użycie nazwy urządzenia może powodować problem, jest niedawne przejście w niektórych systemach na używanie spójnych nazw urządzeń sieciowych . Gdyby to miało miejsce jako aktualizacja i gdzieś użyłeś zakodowanej nazwy urządzenia w skrypcie sieciowym, to by się zepsuło. Równoległym przykładem urządzeń blokowych WRT może być aktualizacja jądra lub udev, która zmienia schemat nazewnictwa.
UUID ma na celu uczynienie tego rodzaju rzeczy możliwymi i bezbolesnymi. Tak więc, podczas gdy można użyć nazwy urządzenia, nie ma przewagę do robienia tak chyba (np) masz system, w którym różne napędy zamienią w. Innymi słowy, jeśli nie masz dobry powód, aby to zrobić, kij z UUID .
źródło
/dev/vda
w/etc/fstab
a donosiblkid
? (Proszę zobaczyć zaktualizowane pytanie, jeśli nie masz.)Możesz zrobić
man fstab
dla dość zwięzłego przeczytania zawartości i semantyki/etc/fstab
pliku. Na moim x86, dość aktualnym serwerze Arch Linux,man fstab
daje mi to:Tak, tak,
/dev/vda
najwyraźniej jest to jedna z wielu nazw dla niektórych urządzeńUUID=050e1e34-39e6-4072-a03e-ae0bf90ba13a
, biorąc pod uwagę, że obie nazwy wydają się montować na „/”.Jeśli spojrzeć w katalogu
/dev/disk/by-uuid/
można zobaczyć linki symboliczne, które wskazują na takie rzeczy jak/dev/sda1
,/dev/sdb1
na moim serwerze. To może być inny sposób na sprawdzenie twojej hipotezy./dev/disk
ma podkatalogiby-id
,by-path
,by-uuid
które wydają się być alternatywne nazwy dla tego samego urządzenia.źródło
/dev/vda
! Zobacz pytanie jeszcze raz.