Jak mogę ustalić, które ścieżki są wymagane?

2

Używam Mac OS X Snow Leopard 10.6.8.

Mój komputer Mac ma kilka woluminów z systemem OS X, a każdy wolumin ma kilku użytkowników.

Chcę zminimalizować pracę wymaganą do zapewnienia, że ​​moje ścieżki są odpowiednie zarówno dla zainstalowanego systemu operacyjnego, jak i kolejnych dodatków innych niż Apple poprzez aktualizację /private/etc/paths.

Czy istnieje sposób ustalenia, gdzie znajdują się pliki wykonywalne wymagające ścieżki?

Czy przeniesienie elementów do katalogu na ścieżce jest praktyczne?

Mój /private/etc/pathszawiera:

/usr/bin
/bin
/usr/sbin
/sbin
/usr/local/bin

echo $PATH produkuje:

/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin

Jednak powyższe nie są odpowiednie dla niektórych aplikacji.

Wyszukiwanie nazwanych katalogów sbinpowoduje wiele trafień, w tym:

/usr/local/sbin

Czy różne katalogi akcji powinny być na ścieżce?

Wyszukiwanie katalogów zawierających pliki wykonywalne za pomocą następującego polecenia find daje ponad 8 000 trafień i najwyraźniej nie jest to realne podejście.

find / -perm +0111 -type d
Neville Hillyer
źródło
Zależy to od aplikacji, których chcesz używać - najpierw to wypracuj, a potem zdecyduj, jaką ścieżkę wybrać. Zauważ, że ścieżka onl; y, na którą możesz skopiować powyższe, to / usr / local / bin. Pliki wykonywalne w ... / sbin bywają wyjątkowe i prawdopodobnie wymagają uprawnień zwykłego użytkownika, więc czy chcesz, aby wszyscy ludzie je widzieli?
Mark
To nie jest praktyczne. Instalatorzy nie zawsze mówią, które ścieżki wymagają ustawienia. O ile wiem, nic nie stoi na przeszkodzie, aby jakiś administrator zainstalował się w jednym z kilku katalogów sbin.
Neville Hillyer,
Jak mogę tutaj włączyć natychmiastowe powiadomienie e-mail?
Neville Hillyer,
Instalatorzy nie zawsze mówią, które ścieżki wymagają ustawienia. Nie. Powinny one utworzyć dowiązanie symboliczne /usr/local/bin.
Allan
1
Instalatorzy powinni postępować zgodnie z wymaganiami administratora - jeśli nie, to musisz zapytać, co jeszcze robią źle. Narzędzia wiersza poleceń systemu Unix używają opcji instalacji domyślnej na / usr / local, a administrator musi to zmienić, jeśli chce.
Mark

Odpowiedzi:

1

Po zalogowaniu się do komputera loginwindow.app tworzy środowisko ze zmienną PATH ustawioną na:

/usr/bin:/bin:/usr/sbin:/sbin

ŚCIEŻKA jest dostępna dla wszystkich uruchomionych aplikacji. Po uruchomieniu aplikacji Terminal.app PATH jest dziedziczony przez powłokę, która jest uruchamiana jako powłoka logowania. ŚCIEŻKA jest następnie przetwarzana przez aplikację path_helper w celu wygenerowania ŚCIEŻKI:

/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin

System został zaprojektowany dla pakietu aplikacji lub administratora w celu dodawania ścieżek poprzez tworzenie plików tekstowych ze ścieżkami adsolute w katalogu /private/etc/paths.d. Możesz znaleźć inne pliki wykonywalne znajdujące się w

/private/etc
/usr/lib
/usr/libexec
/usr/local # should have the same hierarchy as /usr
/opt
/opt/local # macports package manager
/sw # fink package manager
/System
/Library

Narzędzia można również znaleźć w bundlesi frameworks.

/Applications/LibreOffice.app/Contents/MacOS # the path to run open office headless
/System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources # the path to the commandline airport utility 

Nie ma ustalonych reguł, a administrator może zaprojektować własny prefiks do instalacji oprogramowania.

Celem administratora jest ustawienie ścieżki globalnej tak małej, jak to możliwe, a następnie rozwinięcie ścieżki zgodnie z potrzebami zgodnie z uprawnieniami użytkownika we własnych plikach startowych.

fd0
źródło