Jak ogólnie postępujesz dla instalacji pakietów w systemie Linux, dla pakietów, które nie są częścią repozytoriów twojej dystrybucji?
Po mojej stronie jestem przyzwyczajony do instalacji w / opt. Ale odtąd widziałem ten dokument w Internecie: http://www.pathname.com/fhs/ . Teraz jestem zdezorientowany: podobno / usr / local również byłby możliwy.
Jaka jest różnica między nimi? Jakieś najlepsze praktyki, którymi możesz się podzielić?
Dzięki
SirFabel
Odpowiedzi:
/usr/local
/opt
źródło
Podobnie jak dodatkowe interesujące informacje: Pierwotnym znaczeniem
/usr/local
jest to, że jeśli/usr
jest podłączony do sieci (pojedynczy/usr
współużytkowany na wielu komputerach),/usr/local
byłby oddzielnym systemem plików lokalnym dla komputera (partycja na dysku lokalnym).Podczas gdy na ten temat, nawet jeśli jest to nie na temat pytania: jeśli istnieje wiele komputerów o różnych architekturach, naturalnie byłby jeden
/usr
dla każdego łuku, ale/usr/share
byłby jeszcze inny osobny system plików współdzielony między architekturami (stąd „udostępnij”) .źródło
Sposób, w jaki to robię, jest taki, że jeśli wymaga on przedrostka LUB jest to pakiet binarny, wybieram opcję / opt (która jest w zasadzie sposobem na system Solaris). Jeśli kompiluję ze źródła / usr / local, to właśnie idę.
źródło
Umieszczam wszystko w prywatnym katalogu, a następnie używam GNU stow .
Więc zainstaluję pakiet X.ver do
/BASE/stow/X.ver
. GNU stow następnie połączyć wszystkie pakiety (z dowiązania) do/BASE/bin
,/BASE/lib
itpKonflikty i usuwanie pakietów są znacznie łatwiejsze do rozwiązania.
źródło
Oto jak interpretuję standard FHS:
/ usr / local jest przeznaczony do plików budowanych lokalnie lub instalowanych lokalnie, bez względu na to, czy są spakowane, czy nie, które w jakiś sposób staną się częścią tego wystąpienia systemu operacyjnego.
/ opt to miejsce do instalowania „obcych” pakietów nie stanowiących części systemu operacyjnego.
Tak długo, jak korzystasz z plików tylko w jednym systemie, w którym je budujesz, / usr / local jest w porządku i dlatego jest domyślnym katalogiem podstawowym dla zdecydowanej większości oprogramowania typu open source.
Jeśli planujesz redystrybuować swój pakiet, zaleciłbym użycie niestandardowego katalogu podstawowego, takiego jak / opt / myPackage.
źródło
Solaris bardzo często korzystał / optował. Wiele współczesnych dystrybucji Linuksa oczekuje teraz pakietów w / usr / local /. Pomysł jest taki sam - miejsce do umieszczenia oprogramowania, które sprawia, że ta maszyna robi to, co robi, w przeciwieństwie do systemu operacyjnego. Jest to mniej więcej analogiczne do „Program Files” w systemie Windows.
Wybierz jeden i trzymaj się go. Łatwo jest symlink / opt do / usr / local.
źródło
Jeśli ponownie skompilujesz oprogramowanie dostarczone przez dystrybucję systemu operacyjnego, aby skorzystać z kilku zalet architektury specyficznych dla twojego własnego komputera, użyj / usr / local.
Jeśli dodasz oprogramowanie z innych źródeł niż dystrybucja systemu operacyjnego, włącz je w opcji / opt.
źródło