System plików Linux

13

Jakie są konwencje lokalizacji plików w systemie Linux? Do tej pory udało mi się wydedukować:

/ proc (odniesienia do uruchomionych procesów)

/ dev (odniesienia do całego sprzętu)

/ etc (pliki konfiguracyjne)

/ home (home)

/ mnt (zamontowane urządzenia)

/ media (urządzenia wymienne, takie jak dyski CD, dyski USB)

... ale inne części są nadal niejasne, na przykład:

Gdzie mogę umieścić pobrane źródło?

/ usr / src

/ usr / local / src

Gdzie mam umieścić skompilowane programy?

/kosz

/ usr / bin

/ usr / local / bin

Jaka jest różnica między / bin i / sbin ?

Czym różnią się rozkłady?

Zdaję sobie sprawę, że to nie jest jedno pytanie, ale wydaje mi się, że na wszystkie należy odpowiedzieć łącznie. Mam nadzieję, że inni też są zdezorientowani.

rozdymka tygrysia
źródło

Odpowiedzi:

14

Możesz przeczytać Standard systemu plików ; to przydatne odniesienie.

Twój katalog domowy to miejsce, do którego powinna pójść większość. Udawaj, że nie jesteś administratorem systemu; udawaj, że jesteś kolejną osobą z kontem w systemie. W swoim katalogu domowym /home/pufferfishmożesz np. Robić co chcesz. /home/pufferfish/bin, /home/pufferfish/libi /home/pufferfish/srcwszystkie są konwencjonalnymi wyborami, ale tak naprawdę to nie ma znaczenia .

W przypadku skompilowanych programów, niezależnie od tego, którego katalogu / katalogów używasz, upewnij się, że / one są / znajdują się na PATH, abyś mógł je uruchomić bez wpisywania całej ścieżki skryptu lub pliku wykonywalnego.

Rozkłady tak naprawdę nie różnią się zbytnio. Odkryłem, że menedżer pakietów na jednym może instalować pliki binarne /usr/bin, podczas gdy niektóre biblioteki mogą iść gdzie indziej, a inny system może instalować rzeczy w innym miejscu. Zasadniczo muszę za każdym razem przeprowadzać badania, aby dowiedzieć się, dokąd zmierzają.

Nikhil Chelliah
źródło
6

Tak się składa, że ​​w uniksowym świecie systemu operacyjnego istnieje standard o nazwie Fileystem Hierarchy Standard, który wyjaśnia najlepsze praktyki stosowane przez większość dostawców Uniksa. Jest to dobra lektura i warto ją przejrzeć, jeśli spędzasz dużo czasu w środowisku * nix.

Hierarchia systemu plików Standard

Odpowiedzi na twoje pytania:

Zarówno / usr / src i / usr / local / src działają. Twój wybór. Just keep jest spójny.

/ bin jest dla wymaganych poleceń dla użytkowników. NIE umieszczałbym tam niestandardowych plików binarnych.

/ sbin jest przeznaczony do binarnych plików systemowych (zwykle rzeczy sysadmin). Zawiera rzeczy do rozruchu i narzędzia fs.

/ usr / bin to miejsce, w którym znajduje się większość poleceń użytkownika i zwykle okaże się, że większość systemów zarządzania pakietami Linux umieszcza tutaj pliki binarne lub przynajmniej dowiązania symboliczne do plików binarnych.

/ usr / local / bin to bezpieczne miejsce na umieszczenie własnego skompilowanego kodu, który jest unikalny dla tej maszyny.

Mark Turner
źródło
6

Może powinieneś spojrzeć na te:

alternatywny tekst

alternatywny tekst

n00ki3
źródło
3

/ usr / local / dotyczy oprogramowania skompilowanego w tym systemie. Jest podobny do / usr /, tylko że nie został zainstalowany z pakietów.

/ sbin / vs / bin / (and / usr / sbin / vs / usr / bin): s oznacza superużytkownika. Programy, na których normalni użytkownicy nie powinni się przejmować i często nie powinny mieć uprawnień do uruchamiania

Tadeusz A. Kadłubowski
źródło