Dlaczego musisz utworzyć katalog, aby móc zamontować udział?


11

Dlaczego musisz utworzyć katalog, aby móc zamontować w nim udział?

Np .: Nigdy nie zrozumiałem, dlaczego mkdir jest tutaj potrzebny:

mkdir /Volumes/foo
mount -t afp afp://username:pass@pretendco.com/foo /Volumes/foo

Odpowiedzi:


3

W systemach uniksowych i uniksopodobnych, które obejmują Mac OS X, systemy plików są logicznie bardzo różne od tego, jak działają w systemie Windows. Nie ma czegoś takiego jak dysk C lub D itp. Istnieje tylko jeden system plików, który jest ułożony jako hierarchia (struktura drzewa). Ten system plików może składać się z jednego dysku fizycznego lub kilku dysków fizycznych w maszynie. Może również składać się z pamięci i udziałów z innego komputera za pośrednictwem protokołów takich jak NFS, CIFS itp. Ponieważ nie ma żadnych napędów jako takich, musisz mieć gdzieś w systemie plików, do którego możesz podłączyć lub zamontować tę dodatkową pamięć, aby utworzyć katalog, a następnie podłącz tam inny system plików.

Na przykład systemy Linux mają katalog / mnt lub hierarchię / mnt z katalogami takimi jak cdrom itp. W takim przypadku nie musisz najpierw tworzyć katalogu, możesz użyć jednego z nich, ale nie jest to wymagane, ponieważ punkt podłączenia może znajdować się w dowolnym miejscu w systemie plików. Ta korzyść może być naprawdę użyteczna, jeśli potrzebujesz więcej miejsca, ponieważ możesz dodać kolejny dysk, przenieść dane na niego, a następnie zamontować go w miejscu, w którym znajdował się stary katalog, a wszystko będzie działać bez żadnych zmian.


Dzięki za wykrycie tego. Nie sprawdziłem, kiedy sprawdziłem wiadomość. Poprawny post.
Sean Preston

w porządku, zabiłem mój komentarz :)
lImbus

5

Ponieważ nikt nie przesłał łaty, aby dodać opcję --create-dir do zamontowania? :)


Jestem pewien, że zachowanie NEXTSTEP było takie, jak w przypadku opcji --create-dir. Ostatnią godzinę spędziłem na wyszukiwaniu dowodów w Internecie, ale niestety bez powodzenia!
Adrian Smith

Druga łatka
brzmiałaby:

5

Dzieje się tak, ponieważ podczas montowania katalogu mówisz do swojego systemu: „Zachowuj się tak, jakby pliki w <udział sieciowy> znajdowały się naprawdę w <folderze lokalnym>”. Jeśli system nie ma tego folderu lokalnego, nie może tam umieścić tych plików sieciowych.


2

najbardziej niepokojące jest to, że IMHO tworzy gdzieś link NIE potrzebuje touch/ mkdir, a mount (nawet jeśli -bindlokalnie) potrzebuje.

Ale prawdopodobnie znajduje się w tej samej sekcji, co „dlaczego twarde linki są domyślne, gdy wszyscy potrzebują tylko dowiązań symbolicznych i muszą ln -s.


2

Wpis katalogu musi zostać utworzony w / volume (w tym konkretnym przykładzie), zanim jądro będzie mogło podłączyć się do ścieżki katalogu.


1
Technicznie to nieprawda. System plików można zamontować w dowolnym miejscu w hierarchii - standardową praktyką jest montowanie go w / Volumes / (i jest to wykonywane automatycznie przez system operacyjny), ale zdarza się, że montowanie go w określonym miejscu ma sens.
Chealion

Och, chodziło mi tylko o tomy w tym konkretnym przypadku. :) Nie ogólnie.
MikeyB

To ma więcej sensu. :-)
Chealion
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.