Ich habe eine ausführbare Datei für den Perforce-Versionskontrollclient (p4
). Ich kann es nicht in /opt/local
platzieren weil ich keine Root-Rechte habe. Gibt es einen Standardspeicherort, an dem es unter $HOME
abgelegt werden muss ?
Hat die Dateisystemhierarchie eine Konvention, die besagt, dass lokale ausführbare Dateien/Binärdateien in $HOME/bin
platziert werden müssen ?
Ich konnte keine solche Konvention finden, die im Wikipedia-Artikel für die FHS erwähnt wird.
Wenn es tatsächlich eine Konvention gibt, müsste ich den Pfad zu $HOME/bin
explizit angeben Verzeichnis oder wo auch immer sich der bin
befindet Verzeichnis ist?
Akzeptierte Antwort:
Wenn eine nicht vom System installierte und verwaltete Binärdatei systemweit für mehrere Benutzer zugänglich sein muss, sollte sie im Allgemeinen von einem Administrator in /usr/local/bin
abgelegt werden . Es gibt eine vollständige Hierarchie unter /usr/local
die im Allgemeinen für lokal kompilierte und installierte Softwarepakete verwendet wird.
Wenn Sie der einzige Benutzer einer Binärdatei sind, installieren Sie sie in $HOME/bin
ist der geeignete Ort, da Sie es selbst installieren können und Sie der einzige Verbraucher sind. Wenn Sie ein Softwarepaket aus dem Quellcode kompilieren, ist es auch angebracht, eine teilweise oder vollständige lokale Hierarchie in Ihrem $HOME
zu erstellen Verzeichnis. Die vollständige lokale Hierarchie würde so aussehen.
$HOME/bin
Lokale Binärdateien$HOME/etc
Hostspezifische Systemkonfiguration für lokale Binärdateien$HOME/games
Binärdateien für lokale Spiele$HOME/include
Lokale C-Header-Dateien$HOME/lib
Lokale Bibliotheken$HOME/lib64
Lokale 64-Bit-Bibliotheken$HOME/man
Lokale Online-Handbücher$HOME/sbin
Binärdateien des lokalen Systems$HOME/share
Lokale architekturunabhängige Hierarchie$HOME/src
Lokaler Quellcode
Beim Ausführen von configure
, sollten Sie Ihre lokale Hierarchie für die Installation definieren, indem Sie $HOME
angeben als Präfix für die Installationsvorgaben.
./configure --prefix=$HOME
Jetzt, wenn make && make install
ausgeführt werden, werden die kompilierten Binärdateien, Pakete, Manpages und Bibliotheken in Ihrem $HOME
installiert Lokale Hierarchie. Wenn Sie nicht manuell ein $HOME
erstellt haben lokale Hierarchie, make install
erstellt die vom Softwarepaket benötigten Verzeichnisse.
Nach der Installation in $HOME/bin
, können Sie entweder $HOME/bin
hinzufügen zu Ihrem $PATH
oder rufen Sie die Binärdatei mit dem absoluten $PATH
auf . Einige Distributionen enthalten $HOME/bin
in Ihren $PATH
standardmäßig. Sie können dies entweder durch echo $PATH
testen und sehen, ob $HOME/bin
vorhanden ist, oder legen Sie die Binärdatei in $HOME/bin
ab und Ausführen von which binaryname
. Wenn es mit $HOME/bin/binaryname
zurückkommt , dann ist es standardmäßig in Ihrem $PATH.