Przeczytałem to na tej stronie i to nie ma sensu.
http://rcsg-gsir.imsb-dsgi.nrc-cnrc.gc.ca/documents/basic/node32.html
Kiedy system UNIX został napisany po raz pierwszy
/bin
i/usr/bin
fizycznie znajdował się na dwóch różnych dyskach:/bin
na mniejszym, szybszym (droższym) dysku i/usr/bin
na większym, wolniejszym dysku. Teraz/bin
jest dowiązaniem symbolicznym do/usr/bin
: są one zasadniczo tym samym katalogiem.
Ale kiedy jesteś ls
w /bin
folderze, ma on znacznie mniej zawartości niż /usr/bin
folder (przynajmniej w moim uruchomionym systemie).
Czy ktoś może wyjaśnić różnicę?
Odpowiedzi:
Co? no
/bin/
nie jest dowiązaniem symbolicznym do/usr/bin
żadnego systemu zgodnego z FHS. Zwróć uwagę, że nadal istnieją popularne Uniksy i Linuxy, które to ignorują - na przykład/bin
i/sbin
są dowiązane symbolicznie do/usr/bin
Arch Linux (powodem jest to, że nie potrzebujesz/bin
trybu ratunkowego / trybu pojedynczego użytkownika, ponieważ po prostu uruchamiasz na żywo PŁYTA CD)./bin
/usr/bin/
zasadniczo
/bin
zawiera pliki wykonywalne, które są wymagane przez system do napraw awaryjnych, uruchamiania i trybu pojedynczego użytkownika./usr/bin
zawiera niepotrzebne pliki binarne.Zwrócę uwagę, że mogą znajdować się na osobnych dyskach / partycjach,
/bin
muszą znajdować się na tym samym dysku co/
./usr/bin
może znajdować się na innym dysku - chociaż należy pamiętać, że ta konfiguracja została przez jakiś czas zepsuta (dlatego np. systemd ostrzega przed tą konfiguracją podczas rozruchu).Dla pełnej poprawności, niektóre jednorożce mogą ignorować FHS, ponieważ uważam, że jest to tylko standard Linux, nie wiem, czy został on jeszcze włączony do SUS, Posix lub jakiegokolwiek innego standardu UNIX, chociaż powinien to być IMHO. Jest to jednak część standardu LSB .
źródło
/bin
to link do/usr/bin
niektórych jednorożców, takich jak (niektóre wydania?) Solaris./usr
pomiędzy dwoma bardzo podobne distro, choć nie będę próbować, chyba że wiesz co robisz i jesteś przygotowany na eksperyment się nie powiedzie w sposób, który sprawia, że komputer nie uruchamia się, lub jeść Twoje dane. Również należy pamiętać, że wiele dużych różnic między 10.04 a 10.10 będzie/usr
/sbin
- Pliki binarne potrzebne do rozruchu, naprawy systemu niskiego poziomu lub konserwacji (uruchom poziom 1 lub S)/bin
- Pliki binarne potrzebne do normalnego / standardowego funkcjonowania systemu na dowolnym poziomie przebiegu./usr/bin
- Pliki binarne aplikacji / dystrybucji przeznaczone dla użytkowników zalogowanych lokalnie/usr/sbin
- Pliki binarne aplikacji / dystrybucji, które obsługują lub konfigurują rzeczy w / sbin./usr/share/bin
- Pliki binarne aplikacji / dystrybucji lub skrypty przeznaczone do uzyskiwania dostępu przez Internet, tj. Aplikacje internetowe Apache*local*
- Pliki binarne nie są częścią dystrybucji; skompilowany lokalnie lub zainstalowany ręcznie. Zwykle nigdy nie ma,/local/bin
ale zawsze jest/usr/local/bin
i/usr/local/share/bin
.źródło
/usr/bin
automatycznie odmontowywany, gdy nie ma zalogowanych użytkowników? Na przykład, gdy LINUX uruchamia się i przedstawia uwierzytelnienie logowania, jest/usr/bin
zamontowany czy nie?Jakaś „aktualizacja” tego problemu:
Ostatnio niektóre dystrybucje łączą
/bin
się/usr/bin
i relatedly/lib
się/usr/lib
. Czasami także(/usr)/sbin
do/usr/bin
(Arch Linux). Tak/usr
ma być dostępne w tym samym czasie co/
.Rozróżnienie między dwiema hierarchiami uważa się za niepotrzebną złożoność. Pomysł był kiedyś
/bin
dostępny tylko podczas rozruchu, ale posiadanie początkowego ramdysku sprawia, że jest to przestarzałe.Wiem, że Fedora Linux (2011) i Arch Linux (2012) idą w tę stronę, a Solaris robi to od dłuższego czasu (> 15 lat).
źródło
W systemie Linux
/bin
i/usr/bin
nadal są osobne, ponieważ często ma się je/usr
na osobnej partycji (chociaż ta konfiguracja czasami psuje się w subtelny sposób). W/bin
to wszystkie polecenia, których będziesz potrzebować, jeśli tylko je/
zamontowałeś.W systemach Solaris i Arch Linux (i prawdopodobnie innych)
/bin
jest dowiązaniem symbolicznym/usr/bin
. Arch również ma/sbin
i/usr/sbin
symlinkuje do/usr/bin
.Na szczególną uwagę, ze stwierdzeniem, że
/bin
jest za „Administrator systemu” poleceń i/usr/bin
jest na polecenia użytkownika to nie prawda (chyba, żebash
ils
są wyłącznie dla administratorów, w takim przypadku trzeba się wiele nauczyć). Polecenia administratora znajdują się w/sbin
i/usr/sbin
.źródło
bin
jest tylko dla administratorów systemu? po tosbin
jest.Istnieje wiele systemów opartych na UNIX. Linux, AIX, Solaris, BSD itp. Oryginalny cytat podaje kontekst historyczny, który dotyczy wszystkich smaków. Jeśli spojrzysz na jeden konkretny system, zobaczysz różne wyniki. Ostatnie zdanie oryginalnego cytatu dotyczy tylko niektórych wersji i dystrybucji.
źródło