Co jest lepsze dla zainstalowanych aplikacji: / usr / bin lub katalog domowy użytkownika?

9

Nie jest dla mnie do końca jasne, czy lepiej byłoby zainstalować aplikację GUI w /usr/binmoim katalogu domowym. Przeczytałem ten artykuł i ten , ale tak naprawdę nie mówi o filozofii korzystania z tych różnych katalogów. Czy polecenia powinny być traktowane inaczej niż aplikacje GUI?

TheAmpersand
źródło

Odpowiedzi:

11

Jest /usr/binto główny katalog komend wykonywalnych w systemie.

/usr/local:

  • Używany przez administratora systemu podczas lokalnej instalacji oprogramowania.
  • Przed
    aktualizacją oprogramowania systemowego należy zabezpieczyć go przed nadpisaniem .
  • Może być używany do programów i danych, które można udostępniać między grupą hostów, ale których nie można znaleźć /usr.

Oprogramowanie zainstalowane lokalnie musi być umieszczone w nim /usr/local, /usrchyba że jest instalowane w celu zastąpienia lub aktualizacji oprogramowania w / usr.

Więcej tutaj .

dastergon
źródło
7

Nie ma szczególnego powodu, aby różnicować polecenia GUI i CLI.

/usr/binnależy do systemu operacyjnego, więc nawet jeśli nic nie stoi na przeszkodzie, abyś był rootem, nie powinieneś tutaj niczego umieszczać. Ten katalog jest przeznaczony dla osób dystrybuujących oprogramowanie zintegrowane z systemem operacyjnym i odpowiednio obsługujących / unikających konfliktów nazw.

/usr/local/binjest wspólnym katalogiem dla oprogramowania budowanego lokalnie. Jeśli możesz pisać tutaj, możesz po prostu użyć tego katalogu.

/opt/<name>/bindotyczy oprogramowania nienależącego do systemu operacyjnego. Jest to dobra lokalizacja dla wspólnego oprogramowania.

Twój katalog domowy należy do ciebie, więc możesz swobodnie umieścić pod nim wszystko, co chcesz, ale nie jest to najlepsza lokalizacja, jeśli inne osoby muszą uruchomić Twój program.

jlliagre
źródło
1
Czy więc jedyna różnica między / usr / local / bin i / opt / foo / bin gdzie / jak zostało zainstalowane oprogramowanie? A więc z reguły każde oprogramowanie, które ręcznie instaluję, powinno przejść do pierwszego, a cokolwiek zainstalowanego z menedżera pakietów skończy się później? EDYCJA: Wygląda na to, że tak. link
TheAmpersand
Tak. Zauważ, że lokalnie zbudowane oprogramowanie może również przejść do / opt / local / bin. Pozwala to uniknąć problemu z / usr / local, który może być zapisywalny, podczas gdy / usr może być zamontowany tylko do odczytu.
jlliagre
3

Nie instaluj niczego ręcznie w /usr/bin. Całość /usr, jak również /bin, /libi /sbinsą zarezerwowane dla oprogramowania dostarczonego przez dystrybucję. Istnieje wyjątek: /usr/localprzeznaczony dla programów instalowanych przez administratora systemu i nie dotykany przez menedżerów pakietów (z wyjątkiem tworzenia kilku katalogów). (Dotyczy to Linuksa, inne warianty unixowe mogą mieć menedżerów pakietów, w których instalują oprogramowanie /usr/local.)

/usr/localWybór pomiędzy miejscem w twoim katalogu domowym i wybór należy do ciebie. Jeśli chcesz, aby program był dostępny dla wszystkich użytkowników, włóż go /usr/local. Jeśli chcesz, aby był dostępny tylko dla Ciebie, zainstaluj go w swoim katalogu domowym.

Nie ma znaczenia, czy program ma GUI.

Gilles „SO- przestań być zły”
źródło
1
/optjest również czasami stosowany w instalacjach lokalnych, chociaż podział na /usr/locali /optnie jest jasny.
Faheem Mitha
2

Jeśli ma to sens (lub jest wymagane), aby użytkownik mógł zastąpić pliki binarne aplikacji, należy je zainstalować w katalogu osobistym użytkownika. W przeciwnym razie można go zainstalować w publicznym katalogu tylko do odczytu, takim jak /usr/bin.

Ignacio Vazquez-Abrams
źródło
0

Do użytku globalnego możesz zainstalować go w / usr / bin, ale nikt tego nie zaleca.

Aby korzystać z niektórych aplikacji jako określonego użytkownika (powinno być bardziej bezpieczne, gdy jest uruchamiany jako 1 użytkownik), zainstaluj ją w katalogu osobistym określonego użytkownika.

Mirra
źródło