Jaki jest cel / usr / libexec?


28

Pliki wykonywalne są przechowywane w /usr/libexecsystemach uniksopodobnych. FHS mówi (sekcja 4.7. /usr/libexec : Binaries run by other programs (optional)":

/usr/libexeczawiera wewnętrzne pliki binarne, które nie mają być wykonywane bezpośrednio przez użytkowników ani skrypty powłoki. Aplikacje mogą korzystać z jednego podkatalogu w /usr/libexec.

W systemie Mac OS X rootless-initprogram wywoływany launchdbezpośrednio po uruchomieniu jest przechowywany w /usr/libexec. Dlaczego miałby być przechowywany, /usr/libexecskoro jest samodzielnym plikiem wykonywalnym, który może być przechowywany w /usr/binlub /usr/sbin? inita inne programy, które nie są wywoływane bezpośrednio przez skrypty powłoki, są również przechowywane w folderach takich jak [/usr]/{bin,sbin}.

Odpowiedzi:


14

Jest to kwestia wsparcia - dostawcy platformy nauczyli się z wieloletniego doświadczenia, że ​​jeśli PATHdomyślnie umieścisz pliki binarne , ludzie zaczną polegać na ich obecności i będą zależeć od konkretnych argumentów i opcji, które obsługują.

Z drugiej strony, jeśli coś jest włożone /usr/libexec/, jest to wyraźne wskazanie, że jest to uważane za wewnętrzny szczegół implementacji, a wywoływanie go bezpośrednio jako użytkownika końcowego nie jest oficjalnie obsługiwane.

Mimo to nadal możesz zdecydować się na bezpośredni dostęp do tych plików binarnych, po prostu nie uzyskasz wsparcia ani sympatii od dostawcy platformy, jeśli przyszłe uaktualnienie zepsuje prywatne interfejsy, których używasz.


7

Myślę, że jest nowszy niż init- chodzi o to, jak powiedziano, aby mieć pliki wykonywalne (więc nie powinny być w nim /usr/lib), których nikt by się nie spodziewał $PATH.


3

OS X nie jest zgodny ze standardem FHS. Ma własną hierarchię systemu plików (podobną do hierarchii systemu plików FreeBSD). Strona hierpodręcznika stanowi:

libexec/ system daemons & system utilities (executed by other programs)


3

libexecjest przeznaczony dla demonów systemowych i narzędzi systemowych wykonywanych przez inne programy. Oznacza to, że pliki binarne umieszczone w tym katalogu z przestrzenią nazw są przeznaczone do konsumpcji innych programów i nie są przeznaczone do bezpośredniego uruchamiania przez użytkowników.

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.