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/binLokale Binärdateien$HOME/etcHostspezifische Systemkonfiguration für lokale Binärdateien$HOME/gamesBinärdateien für lokale Spiele$HOME/includeLokale C-Header-Dateien$HOME/libLokale Bibliotheken$HOME/lib64Lokale 64-Bit-Bibliotheken$HOME/manLokale Online-Handbücher$HOME/sbinBinärdateien des lokalen Systems$HOME/shareLokale architekturunabhängige Hierarchie$HOME/srcLokaler 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.