Mam plik ISO o nazwie ubuntu.iso
.
Mogę mount
go za pomocą polecenia: mount ubuntu.iso /mnt
. Po jej montażu, widzę go z outout polecenia df -h
: /dev/loop0 825M 825M 0 100% /mnt
.
Jeśli jednak wykonam polecenie mount -o loop ubuntu.iso /mnt
, otrzymam ten sam wynik.
Jak wiem, urządzenie pętli pozwala nam odwiedzić plik ISO jako urządzenie, myślę, że dlatego dodaliśmy tę opcję -o loop
. Ale mogę odwiedzić mój plik ISO, nawet jeśli wykonam tylko mount ubuntu.iso /mnt
.
Więc nie widzę różnicy między mount
i mount -o loop
.
mount
loop-device
Yves
źródło
źródło
mount ubuntu.iso /mnt
nie konfiguruje urządzenia sprzężenia zwrotnego tylko do odczytu imount /image.squashfs /mnt
nie konfiguruje urządzenia sprzężenia zwrotnegoDIO
(losetup --direct-io=on
).Odpowiedzi:
Obie wersje używają urządzeń pętlowych i dają ten sam rezultat; krótka wersja opiera się na „sprytności” dodanej
mount
w ostatnich latach. wyraźniemount -o loop
mówi,mount
aby użyć urządzenia pętli; pozostawia samo urządzenie pętlimount
, które będzie szukało dostępnego urządzenia, konfigurowało je i używało. (Możesz także określić urządzenie za pomocą npmount -o loop=/dev/loop1
.)Sprytność polega na tym, że po otrzymaniu pliku do zamontowania
mount
automatycznie użyje urządzenia pętli, aby zamontować go w razie potrzeby - tzn. System plików nie jest określony lublibblkid
określa, że system plików jest obsługiwany tylko na urządzeniach blokowych (a zatem urządzenie pętli jest potrzebne do przetłumaczenia pliku na urządzenie blokowe).Sekcja urządzenia pętli na
mount
stronie podręcznika zawiera więcej szczegółów.źródło
util-linux
2.11mount -o loop
uzyskało wsparcie w 2001 r. I myślę, że 2.10 miało to również co najmniej rok wcześniej.-o loop
zostało dodane międzyutil-linux
2,4 a 2,5j; Debian 1.1 miał ten drugi i został wydany w czerwcu 1996 roku. Więc ta opcja jest dostępna w dystrybucji od ponad dwudziestu lat.mount
będzie mogła przełączyć się na ten mechanizm w sposób przezroczysty (przynajmniej przez pierwsze 15 minut, aż okazuje się, że złamał czyjś skrypt i wszyscy muszą wrócić do urządzeń pętlowych) , w przeciwieństwie do tego,mount -o loop
który wciąż wyraźnie prosi o stary (obecny) mechanizm.loop
Urządzenie jest kontrolowany głównie zlosteup
polecenia. Więclosetup -a
daje przegląd o używanych urządzeń pętlowych i załączonych plików.mount
Polecenia można zamontować tylko urządzenie blokowe . Urządzenie pętli może utworzyć wirtualne urządzenie blokowe z pliku (urządzenie znakowe).W rzeczywistości istnieje ogromna różnica między tymi poleceniami, ponieważ w starszych systemach Linux
mount
nie mógł rozpoznać pliku jako poprawnego urządzenia do zamontowania, ale w czasie, gdy polecenie montowania zostało zakończone z dużą ilością funkcji, dlatego może teraz samodzielnie zdecydować spróbuj wywołać komendę losetup i zamontować wynik. Ale jeśli masz cały obraz dysku nie w formacie ISO, ale np. Z MBR na początku, polecenie mount nie mogło go rozpoznać i musisz znaleźć użyteczną partycję (np. Zparted disk_image.raw unit B print
poleceniem) yoursef, a następnie zamontować ją z pełną opcją mount comman tak jak :W tej składni urządzenie pętla nie została określona i zakłada się system wybrać pierwszy wolny (
/dev/loop0
,/dev/loop1
etc) Wśród innych nowych cech polecenie montowania jest to, że nie trzeba określić typ systemu plików zamontowanego urządzenia blokowego (w Twoim przypadku-t iso9660
) jeśli zainstalowano obsługę systemu plików.źródło
Nie ma różnicy między
mount ubuntu.iso /mnt
imount -o loop ubuntu.iso /mnt
.Pierwszy jest obsługiwany w sposób transparentny, jakbyś używał drugiego.
źródło