Ich bin dabei, "leiningen" zu installieren, ein Bash-Skript für die Programmiersprache clojure, das sehr nützlich ist, aber ich bin mir nicht sicher, wo es angebracht ist, ein ausführbares Skript unter Linux einzugeben System dauerhaft und stabil verfügbar.
Ich denke nicht, dass irgendwo in / home Sinn macht, aber ich weiß nicht, welches Verzeichnis / welche Verzeichnisse dafür verwendet werden sollen.
/ usr / teilen?
Antworten:
(Hinweis:
~
übersetzt wie/home/user
in diesem Beitrag)Persönlich stelle ich alle meine maßgeschneiderten Systemskripte
/usr/local/bin
und alle meine persönlichen Bash-Skripte ein~/bin
. Sehr wenige Programme, die ich selbst installiere, befinden sich in einem/usr/local/bin
Verzeichnis, sodass es nicht sehr überladen ist und sich$PATH
auf den meisten meiner Computer bereits in der Variablen befand.Zum Hinzufügen
/usr/local/bin
zu Ihrem Systempfad (falls noch nicht vorhanden) fügen Sie Folgendes hinzu/etc/profile
:So fügen
~/bin
Sie dem Pfad Ihres Benutzers Folgendes hinzu~/.bash_profile
:Manchmal enthält die Standarddatei
.bash_profile
eine if-Anweisung, die automatisch hinzugefügt wird~/bin
,$PATH
wenn sie vorhanden ist. Erstellen Sie also die~/bin
und öffnen Sie ein neues Terminal, um zu prüfen, ob Ihre dies bereits tut.quelle
export
eine Variable nicht mehrmals erforderlich (und wahrscheinlich ist Ihr System bereitsPATH
für den Export markiert , sodass Sie dies überhaupt nicht selbst tun müssen)./ usr / local / ist wirklich der richtige Ort, während / opt wirklich für Anwendungen von Drittanbietern ist; "/ opt ist für die Installation von Add-On-Anwendungssoftwarepaketen reserviert." Dies ist Teil des Filesystem Hierarchy Standard.
Weitere Informationen zu / opt finden Sie unter http://www.pathname.com/fhs/pub/fhs-2.3.html .
Für / usr / local / ist dies "vom Systemadministrator zu verwenden". Vergiss nur nicht, was da drin ist - dokumentiere es.
quelle
/usr/local
- wie der Name schon sagt - dies für den lokalen Administrator gilt und/opt
für Dinge, die nicht offiziell vertrieben werden, wie kommerzielle Software von Drittanbietern, die durch einen ähnlichen Prozess verwaltet werden (möglicherweise durch ein Upgrade von ersetzt oder gelöscht) Upstream), aber nicht vom Paketmanager der Distribution verwaltet oder möglicherweise tatsächlich als RPM oder.deb
Pakete verteilt, aber nicht gemäß den Richtlinien und Konventionen der Distribution organisiert und verpackt./usr/local
späteren Zeitpunkt im Dokument.Historisch gesehen würden Sie so etwas wie / opt verwenden. Alles ist in Ordnung, solange es in $ PATH für die Benutzer, die es haben sollen, aktualisiert wird (daher ist alles in / home eine schlechte Idee).
quelle
/usr/share/clojure
Es scheint ein üblicher Ort zu sein, um die Binärdateien und Bibliotheken von clojure abzulegen - warum ich es nicht weiß, scheint es eine Selbstverständlichkeit zu sein/usr/local/share/clojure
-, alsosite
scheint es in Ordnung , ein Unterverzeichnis für diese Bash-Skripte zu erstellen .Der allgemeine Punkt ist, dass es sinnvoller ist, Skripte nach Funktionen zu organisieren und nicht alle Bash-Skripte an derselben Stelle zu haben.
quelle
/usr/share
. Zuallererstshare
bedeutet dies architekturunabhängige Dateien (dh die von allen Architekturen gemeinsam genutzt werden). Aus diesem Grund gehören Bibliotheken und ausführbare Dateien nicht in einshare
Verzeichnis. Zweitens, außer von/usr/local
nichts anderem, als dass der Distributionspaket-Manager jemals schreiben sollte/usr
./usr/local
Ich glaube, es gibt einige Verwirrung um die Bedeutung von "lokal".So wie ich es verstehe, bedeutet "lokal" nicht "von / auf dem lokalen Computer", sondern "spezifisch für den lokalen Computer", der von / auf dem lokalen Computer stammen kann oder nicht.
quelle