Ich habe folgenden Zweifel. In einem Tutorial zu einer Softwareinstallation, der ich folge, heißt es, dass ich die folgenden Befehle ausführen muss (ich mache es in einer SSH- Shell, daher endet diese Liste der Schritte mit dem exit
Befehl):
sudo -s
apt-get update
apt-get install -y build-essential libtool libcurl4-openssl-dev libncurses5-dev libudev-dev autoconf automake screen
exit
Meine Zweifel sind:
Was genau macht der -s
Parameter nach dem sudo
Befehl?
Beim Suchen im Web fand ich Folgendes:
‑S [Befehl] Mit der Option ‑s (Shell) wird die von der Umgebungsvariablen SHELL angegebene Shell ausgeführt, wenn sie festgelegt ist, oder die in der Kennwortdatenbank angegebene Shell. Wenn ein Befehl angegeben wird, wird er zur Ausführung über die Option ‑c der Shell an die Shell übergeben. Wenn kein Befehl angegeben wird, wird eine interaktive Shell ausgeführt
Es scheint mir, dass die sudo -s
einen Befehl mit der Umgebungsvariablen der Shell ausführen.
Dies ist mir jedoch nicht klar: In diesem Fall wird der Befehl mit der Umgebungsvariablen ausgeführt? (es wird nur ausgeführt sudo -s
und nicht sudo -s [command]
).
quelle
sudo
ist es im Allgemeinen gedacht . Ausführen eines Befehls als root, ohne sich manuell als root anmelden zu müssen.sudo -s
ist aufgrund meines begrenzten Wissens und der zufälligen Situation in der Situation drastisch anders. Trotzdem möchten Sie vielleicht meine "bescheidene" Antwort lesen und möglicherweise Ihre 1/2 Jahrzehnt alte Antwort aktualisieren.sudo -s
führt einen Befehl im aktuellen Verzeichnis aus, wie es ein normaler Benutzer tun würde. Zum Beispiel:Natürlich ist die Verwendung
-s
anstelle des Präfixes des Befehls./
möglicherweise nicht so zeitsparend.quelle