Montowanie urządzenia - rola / dev, / media i / mnt oraz komenda mount [zamknięte]

18

Mam kilka ściśle powiązanych pytań dotyczących tego, co dzieje się po włożeniu płyty CD. Pliki na płycie CD /media/Ubuntu\ 11.04\ i386/, ale z tego, co widziałem, /dev/cdromsą również zaangażowane.

  1. Jaka jest różnica między /dev, /mediai /mnt? Oto, co znalazłem w Internecie, ale wciąż nie mam pojęcia:

    • /dev - ten folder zawiera pliki urządzeń
    • /media - jest to punkt montowania urządzeń wymiennych
    • /mnt - jest to tymczasowy punkt montowania
  2. Jaki jest cel mount? Innymi słowy, jeśli urządzenie jest reprezentowane przez system operacyjny jako plik urządzenia /dev, dlaczego nie można uzyskać do niego dostępu bezpośrednio z pliku urządzenia bez montażu?

    Czy uchwyt jest używany tylko do urządzenia pamięci, a nie do urządzenia innego niż pamięć, takiego jak karta graficzna, karta sieciowa, kamera, ...?

  3. Gdzie plik urządzenia jest /dev zamontowany pod, pod /mediaczy pod /mnt? Pamiętam, że widziałem oba, ale jestem ciekawy, kiedy zamontować?

  4. Odkryłem, że moja płyta CD została automatycznie zamontowana /media/Ubuntu 11.04 i386. Wydaje mi się, że plik urządzenia na płycie CD jest /dev/cdrom, ale nie mogę go potwierdzić, przeglądając /dev/cdromi /media/Ubuntu 11.04 i386:

    $ ls -l /media/Ubuntu\ 11.04\ i386/
    total 3522
    -r--r--r-- 1 Tim Tim     143 2011-04-27 13:04 autorun.inf
    ...
    $ ls -l /dev/cdrw
    lrwxrwxrwx 1 root root 3 2011-05-28 15:12 /dev/cdrw -> sr0
    $ ls -l /dev/cdrom
    lrwxrwxrwx 1 root root 3 2011-05-28 15:12 /dev/cdrom -> sr0
    

    Jak mogę dowiedzieć się, który plik urządzenia jest dla mojej płyty CD?

StackExchange dla wszystkich
źródło
Podzielmy to, jest wiele pytań. Na niektóre z nich odpowiada komentarz @Gilles, inne należy opisać w instrukcji obsługi dystrybucji.
vonbrand,
@vonbrand Te pytania są jednak bardzo ściśle powiązane. Nie zgadzam się z jego zamknięciem, ponieważ ma odpowiednie odpowiedzi. Trochę zredagowałem pytanie i głosowałem, aby je ponownie otworzyć.
Gilles „SO- przestań być zły”

Odpowiedzi:

12

Tutaj jest wiele pytań i postaram się na nie odpowiedzieć. Jestem pewien, że ci bardziej kompetentni niż ja będę w stanie ci pomóc. (Byłbym wdzięczny, gdyby ci ludzie też mogli mi pomóc.)

W * nix wszystko jest plikiem. Na przykład dysk CD-ROM jest plikiem.

  • /dev- Tutaj znajdziesz urządzenia fizyczne oraz rzeczy, których normalnie nie pomyślałbyś jako urządzenia takie jak / dev / null .
  • /media& /mntsą katalogami, w których możesz zamontować fizyczne urządzenie, takie jak CD-ROM, partycja HDD, pamięć USB itp.

Celem mount(i odwrotnie umount) jest umożliwienie dynamicznego montażu urządzeń. Chodzi mi tutaj o to, że być może będziesz chciał zamontować urządzenie tylko w pewnych okolicznościach, a innym razem nie będzie ono łatwo dostępne. Podczas naprawy systemu możesz chcieć zamontować cały system plików w katalogu / mnt. Od czasu do czasu możesz chcieć zamontować obraz płyty (np. Foo.iso). Itp.

Możesz zdecydować się na zamontowanie urządzenia w / dev na / media lub / mnt. Istnieją mniej lub bardziej poprawne sposoby na zrobienie tego. Na przykład z pytania mówisz:

/ media to punkt montowania urządzeń wymiennych

/ mnt jest to tymczasowy punkt montowania

To prawie poprawne. Przeczytaj tutaj, aby dowiedzieć się, jak / media i / mnt powinny być używane zgodnie ze standardem hierarchii systemów plików . Robię to całkiem niepoprawnie, decydując się na użycie / media, kiedy w rzeczywistości powinienem używać / mnt przez większość czasu. Warto również zauważyć, że wewnętrzny dysk twardy z powiązanymi partycjami może być nazywany, nieco myląco, nośnikiem wymiennym.

Jestem tutaj na OS X, więc nie mogę teraz sprawdzić (BSD robi rzeczy nieco inaczej w odniesieniu do napędów optycznych), ale / dev / cdrom to plik urządzenia na twoim CD-ROM. Tak jak / dev / cdrw. Widzisz „->” w danych ls -lwyjściowych w swoim pytaniu? Oznacza to, że zarówno / dev / cdrom, jak i / dev / cdrw są symbolicznie powiązane z / dev / sr0. „ sr ” to nazwa sterownika urządzenia; „sr0” to nazwa pliku urządzenia.

/media/Ubuntu 11.04 i386jest po prostu obrazem .iso, który został automatycznie zamontowany w /media.

Mam nadzieję, że to trochę pomoże.

boehj
źródło
1
Dzięki! Nadal zastanawiam się, jakie są różnice między „punktem montowania urządzeń wymiennych” a „tymczasowym punktem montowania”?
StackExchange dla wszystkich
2
W działaniu są takie same. Teoretycznie różnica polega na tym, że te same urządzenia wymienne mogą pojawiać się wielokrotnie i jeśli to możliwe, fajnie jest mieć je zamontowane w tym samym katalogu. Za każdym razem, gdy wkładasz dysk CD, miło jest mieć ten dysk CD w unikalnej ścieżce, takiej jak „/ media / My_CD_Title”. Twoja karta pamięci aparatu może być „/ media / SD_Card”. W przeciwieństwie do tego, tymczasowy punkt montowania prawdopodobnie będzie miał tę samą ścieżkę, ale montujesz na nim różne dyski w zależności od potrzeb i tylko twoja wiedza na temat tego, co tam zamontowałeś identyfikuje dysk, ponieważ jest w tym samym miejscu, co OSTATNI dysk tymczasowy .
Caleb
1
Podczas gdy /mntmoi administratorzy systemów zwykle używają - powiedzmy, że gdy chcemy przywrócić kopię zapasową lub migrować partycję na nowy dysk, tworzymy (na przykład) /mnt/homebackupi montujemy obraz dysku kopii zapasowej w tym punkcie montowania, kopiujemy utracone pliki z powrotem do /home, a następnie zwolnić punkt montowania.
Shadur
10

Odpowiedź od boehj wyjaśnia podstawy sztuk w grze tutaj. Chciałbym dodać tylko różnicę między urządzeniem a zamontowanym systemem plików. Faktem jest, że można uzyskać bezpośredni dostęp do węzła urządzenia. Na przykład możesz użyć, dd if=/dev/sda of=/dev/sdbaby drugie urządzenie ATA było dokładną kopią pierwszego, lub możesz cat /dev/sr0 > mycd.isozgrać płytę CD i zrobić z niej obraz ISO.

Różnica polega na tym, że gdy montujesz urządzenie w lokalizacji, tworzysz ścieżkę w strukturze katalogów, która uzyskuje dostęp do urządzenia za pomocą sterownika systemu plików. Sterownik systemu plików obsługuje wszystkie specjalne rzeczy, które muszą się zdarzyć, takie jak buforowanie, indeksowanie, wyszukiwanie itp., Aby urządzenie z surowym dyskiem mogło wyświetlać się ze wszystkimi wygodami systemu plików.

Caleb
źródło
Dzięki! Czy partycje i systemy plików na urządzeniu pamięci masowej są również uważane za urządzenia? Czy oni sami mają sterowniki, oprócz tego, że urządzenie magazynujące je posiada?
StackExchange dla wszystkich
Tak, partycje można adresować jako urządzenia, podobnie jak wszystkie urządzenia pamięci masowej (cokolwiek przez to rozumiesz). Całe urządzenie będzie działać pod jednym sterownikiem sprzętowym, ale oczywiście każda partycja może mieć swój własny system plików, więc komenda mount może używać różnych sterowników jądra do obsługi różnych systemów plików.
Caleb
1
łał. cat /dev/sr0 > mycd.iso- Nigdy o tym nie myślałem.
asgs
1
Dzięki za zwrócenie mojej uwagi na cati ddponownie: węzły urządzeń. Całkowicie przeoczyłem te rzeczy.
boehj
2

Opierając się na odpowiedzi boehj, mountjest używany za kulisami podczas uruchamiania, aby sprawdzić, /etc/fstabgdzie każda istniejąca partycja, o której powinna wiedzieć, powinna zostać zamontowana w rzeczywistym systemie plików.

W przeciwieństwie do - na przykład - Windows, gdzie nie dostaniesz dużo wyboru poza to, co litera dysku partycji dostaje pozwala to żadnego urządzenia lub partycji należy zamontować w dowolnym miejscu w drzewie systemu plików, jeśli sobie tego życzą - na przykład, uniwersytet komputery w sieci będą zazwyczaj tylko /bin/i /liba kilka tymczasowe ścianki działowe montowane na miejscu, podczas gdy/usr/ (zawierające prawie całe oprogramowanie, które nie jest wymagane w fazie rozruchu) i /home/(zawierające katalogi domowe wszystkich użytkowników) byłyby montowane z centralnie dostępnego NFS serwer.

Jest również odpowiedzialny za cicho montażu różnych tymczasowych i wirtualnych systemów plików, takich jak /dev/shm/, /sys/, /dev/pts/, i na bardziej nowoczesnych systemów /run/. Są szanse, że rzadko, jeśli kiedykolwiek zrobisz coś z nimi bezpośrednio, ale wiele programów polega na tym, że istnieją za kulisami. Spójrz na wynik samego mountpolecenia lub /etc/fstab- możesz nauczyć się czegoś interesującego.

Shadur
źródło