Wenn ich versuche, mit root zu root zu wechseln, sudo -i
erhalte ich die Fehlermeldung /var/tmp/sclDvf3Vx: line 8: -i: command not found
... Funktioniert jedoch, su -
die ich weiterhin verwenden werde. Ich bin auf keinen Fall ein Linux-Systemadministrator, daher ist die Umgebung für mich immer noch ziemlich neblig. Ich denke meine Fragen sind:
- Warum wird der Fehler ausgelöst?
- Was ist der Unterschied zwischen den beiden Befehlen?
- Warum würden Sie eins über das andere verwenden?
Aktualisieren:
Ich verwende die CentOS-Version: CentOS Release 6.6 (Final)
Hier ist die Ausgabe einiger Befehle, die ich ausführen soll, in den Kommentaren unten.
type sudo
::sudo is /opt/centos/devtoolset-1.1/root/usr/bin/sudo
sudo -V
::/var/tmp/sclIU7gkA: line 8: -V: command not found
grep'^root:' /etc/passwd
::root:x:0:0:root:/root:/bin/bash
Aktualisieren:
Dies wurde vor einiger Zeit zu ~ / .bashrc meines Nicht-Root-Benutzers hinzugefügt, da ich C ++ 11-Unterstützung benötigte. Wenn ich es auskommentiere, re-ssh in, kann ich sudo -i ohne Fehler ausführen.
if [ "$(gcc -dumpversion)" != "4.7.2" ]; then
scl enable devtoolset-1.1 bash
fi
alias
für Ihren sudo
Befehl erstellt?
sudo
der nicht der normale sudo-Befehl ist. Da es die Optionen von sudo nicht versteht, ist es eindeutig keine Standardsache. Verwenden Sie /usr/bin/sudo
entweder Ihre lokalen Administratoren oder fragen Sie sie (die Ihnen das wirklich hätten sagen sollen, als sie Ihnen Sudo-Befugnisse verliehen haben).
-
wirklich ein (ASCII) ist-
?