GNU/Linux >> LINUX-Kenntnisse >  >> Linux

/usr/bin vs. /usr/local/bin Unter Linux?

Warum gibt es so viele Orte, an denen man eine Binärdatei in Linux ablegen kann? Es gibt mindestens diese fünf:

  1. /bin/
  2. /sbin/
  3. /usr/bin/
  4. /usr/local/bin/
  5. /usr/local/sbin/

Und auf meiner Office-Box habe ich für einige davon keine Schreibberechtigung.

Welche Art von Binärdatei gehört in welche dieser bin s?

Akzeptierte Antwort:

  1. /bin (und /sbin ) waren für Programme gedacht, die auf einem kleinen / sein mussten Partition vor dem größeren /usr , etc. Partitionen wurden gemountet. Heutzutage dient es meistens als Standardspeicherort für Schlüsselprogramme wie /bin/sh , obwohl die ursprüngliche Absicht z. Installationen auf kleinen eingebetteten Geräten.

  2. /sbin , im Unterschied zu /bin , wird für Systemverwaltungsprogramme (normalerweise nicht von normalen Benutzern verwendet) vor /usr benötigt montiert ist.

  3. /usr/bin ist für von der Distribution verwaltete normale Benutzerprogramme.

  4. Es gibt ein /usr/sbin mit der gleichen Beziehung zu /usr/bin als /sbin muss /bin sein .

  5. /usr/local/bin ist für normale Benutzerprogramme nicht vom Paketmanager der Distribution verwaltet, z.B. lokal kompilierte Pakete. Sie sollten sie nicht in /usr/bin installieren da zukünftige Distributions-Upgrades sie ohne Vorwarnung ändern oder löschen können.

  6. /usr/local/sbin , wie Sie an dieser Stelle wahrscheinlich erraten können, befindet sich in /usr/local/bin als /usr/sbin nach /usr/bin .

Außerdem gibt es noch /opt Das ist für monolithische Nicht-Distributionspakete, obwohl verschiedene Distributionen Gnome und KDE dort platziert haben, bevor sie richtig integriert wurden. Im Allgemeinen sollten Sie es für große, schlecht benommene Pakete von Drittanbietern wie Oracle reservieren.


Linux
  1. Wie behandelt Linux mehrere aufeinanderfolgende Pfadtrennzeichen (/home////username///file)?

  2. Linux – Zusammenführen von /usr/bin und /usr/sbin in /bin (gnu/linux)?

  3. Was ist der Unterschied zwischen #!/usr/bin/env bash und #!/usr/bin/bash?

  4. cmake --version zeigt auf /usr/bin/cmake, während cmake auf /usr/local/bin zeigt

  5. Wann sollte ich /dev/shm/ verwenden und wann sollte ich /tmp/?

Linux – /sbin/init existiert nicht?

Was bedeuten /usr/sbin, /usr/local/sbin und /usr/local/bin?

Wann muss ich #!/bin/bash und wann #!/bin/sh verwenden?

Unterschied zwischen /bin und /usr/bin

Was ist /usr/bin/[?

#!/bin/sh vs. #!/bin/bash für maximale Portabilität