W jaki sposób należy dodać pliki wykonywalne zainstalowane w / opt do ścieżki?


11

Czy programy zainstalowane poniżej mogą /optbyć bezpiecznie połączone w symbol /usr/local/bin, który jest już domyślnie w PATH w Ubuntu i innych dystrybucjach Linuksa?

Alternatywnie, czy istnieje jakiś powód, aby utworzyć osobny /opt/bini dodać go do ŚCIEŻKI, jak w tej odpowiedzi: Różnica między katalogami / opt / bin i / opt / X / bin ?

Odpowiedzi:


10

Istnieje różnica między /opti /usr/local/bin. Zatem łączenie plików binarnych między sobą byłoby mylące. Nie mieszałbym ich.

/optsłuży do instalowania dodatkowych pakietów aplikacji , podczas gdy /usr/localkatalog jest przeznaczony dla administratora systemu podczas instalacji oprogramowania lokalnie (za pomocą makei make install). /usr/local/binjest przeznaczony dla plików binarnych z oprogramowania zainstalowanego pod /usr/local.

Zgodnie ze standardem hierarchii plików poprawnym sposobem byłoby dodanie /opt/<package>/bindo $PATHkażdego pakietu. Jeśli jest to zbyt bolesne ( /opt/<package>/binna przykład w przypadku niepoliczalnej liczby katalogów), wówczas (lokalny administrator) możesz utworzyć dowiązania symboliczne /opt/<package>/bindo /opt/binkatalogu. Można to $PATHraz dodać do użytkowników .


Eh, dlaczego? /usr/local/binjest do użytku administratora systemu. Jeśli administrator chce zainstalować oprogramowanie /opti utworzyć dla niego łącza /usr/local, jest to całkowicie budzące grozę.
Gilles „SO- przestań być zły”,

@Gilles Oczywiście, że może, może robić, co chce, jest administratorem systemu. Ale najlepszą praktyką byłoby ich rozdzielenie.
chaos,

Okej, więc wygląda na to, że jest to bardziej kwestia standardowej konwencji niż czegokolwiek innego. Byłem trochę zaskoczony brakiem symetrii „Istnieje różnica pomiędzy /opti /usr/local/bin” w przeciwieństwie do „… pomiędzy /opti /usr/local” lub „… między /opt/bini /usr/local/bin”, ale po dotarciu do końca podejrzewam, że to miało na celu jako sposób na połączenie /opt/bini /opt/.../bin. Jeśli tak, zastanawiam się, czy można poprawić brzmienie.
Kenneth Hanson,

1
@chaos Piszesz to, zgodnie z FHS, /opt/package/bin/a przynajmniej /opt/bin/powinno być dodane do $ PATH. Przeczytałem opublikowane odniesienie i mówi wiele o tym, jak zbudować /opti co tam mieć, ale nie mogłem znaleźć potwierdzenia, że ​​którykolwiek z tych katalogów /optpowinien zostać dodany do $ PATH. Czy mógłbyś wyjaśnić, jak doszedłeś do tego wniosku? Pozdrawiam
ofiara

@vic Ten sam powód, dla którego umieściłeś dowolny inny /whatever/binkatalog w $ PATH - abyś mógł wywoływać pliki wykonywalne bez wpisywania pełnej ścieżki za każdym razem.
Kenneth Hanson
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.