Ich versuche, das Linux-Dateisystem zu verstehen, und eine der Fragen lautet:
1- Warum gibt es mehrere Ordner für ausführbare Dateien: /usr/bin
, /usr/sbin/
und /usr/local/bin
? Gibt es Unterschiede zwischen ihnen?
2- Wenn ich eine ausführbare Datei habe und sie meinem System hinzufügen möchte, welcher der dritten Speicherorte ist für mich der beste?
Antwort1
- Führen Sie es
man hier
von der Befehlszeile aus, um die Antwort auf Ihre erste Frage zu erhalten. - Es kommt darauf an. Siehe/usr/bin vs. /usr/local/bin unter Linux
Antwort2
Es heißt Filesystem Hierarchy Standard und die grausamen Details finden SieHier
Allgemein:-
/usr/bin
ist für Benutzerprogramme.
/usr/sbin
ist für Systemprogramme gedacht – solche, die von Administratoren, aber nicht von allgemeinen Benutzern verwendet werden.
Beide oben genannten beginnen mit /usr
und der Standard besagt, dass diese auf einem gemeinsam genutzten Server (beispielsweise mit NFS) gehostet und von den verschiedenen Hosts in einem Netzwerk aufgerufen werden können. Die Varianten ohne /usr
(also /bin
und /sbin
) sind für wichtige Programme gedacht, die das System zum Booten benötigt (da die Dateien im /usr
Baum nicht verfügbar sind, wenn sie sich auf einer NFS-Freigabe befinden).
/local/bin
sind für lokal kompilierte Benutzerprogramme.
Wenn Sie über eine ausführbare Datei verfügen, die nicht mit dem Paketmanager des Systems installiert wurde, sollten Sie diese vermutlich dort ablegen, /usr/local/bin
wenn sie von vielen Benutzern verwendet werden soll, oder Sie können sie in Ihrem Home-Verzeichnis belassen, wenn sie nur von Ihnen selbst verwendet werden soll.