Wo binäre Programme abgelegt, damit sie immer im Weg sind und leicht gefunden werden können

562
Chris Maes

Ich mache einige Binaries, Skripte usw., die ich leicht installieren möchte (mit meinen eigenen RPM-Paketen ). Da ich möchte, dass sie für alle zugänglich sind, wäre es meine Intuition, sie in / usr / bin zu platzieren.

  • keine Notwendigkeit, PATH zu ändern

Meine ausführbaren Dateien verschwinden jedoch jetzt in einem Pool aller anderen. Wie kann ich alle ausführbaren Dateien, die ich dort abgelegt habe, auf einfache Weise wiederfinden?

Ich dachte an:

  • Ein Unterverzeichnis in / usr / bin (ich weiß, dass ich das nicht tun kann, nur um mein Denken zu veranschaulichen).
  • Ein weiteres Verzeichnis (/ opt / myself / bin), das jede ausführbare Datei mit / usr / bin verknüpft (viel Arbeit).
  • Ein weiteres Verzeichnis (/ opt / myself / bin) und Verknüpfung des Verzeichnisses mit / usr / bin (ist das möglich?).

Was wäre der "beste, Linux-konformeste Weg", um dies zu tun?

1
Mir wurde gerade klar, dass ich diese Frage lieber auf Unix- und Linux-Stack-Überlauf posten sollte ... Ich habe die Frage dort erneut veröffentlicht. Chris Maes vor 10 Jahren 0

2 Antworten auf die Frage

2
ssmy

Die meisten Systeme haben /usr/local/binin PATH. Es ist genau für diesen Zweck gedacht, um lokal installierte Binärdateien anstatt aus den Repositorys zu enthalten. Es gibt auch /usr/local/sbinfür lokal installierte Superuser-Binärdateien.

Siehe Dateisystemhierarchiestandard .

/ usr / local / bin / ist nur für lokale Binärdateien gedacht, nicht wirklich für Binärdateien, die in einem RPM verteilt werden. Chris Maes vor 10 Jahren 0
Ja, aber er möchte sie anscheinend als lokal behandeln, ansonsten verwenden Sie einfach die normalen Verzeichnisse. ssmy vor 10 Jahren 1
1
mtak

Die einfachste Lösung wäre, die systemweite Variable PATH zu ändern. Alle Dateien /etc/profile.dwerden bei der Anmeldung automatisch bezogen, sodass eine Datei hinzugefügt wird, die die PATH-Variable für alle Benutzer ändert.

Führen Sie beispielsweise Folgendes als root aus: cat <<EOF >/etc/profile.d/custom_path.sh export PATH=$PATH:/opt/myself/bin EOF