
Ich habe versucht, es zu verwenden sudo cd name_of_dir
, erhalte jedoch die Fehlermeldung:
sudo: cd: command not found
Gibt es eine andere Möglichkeit, ein Verzeichnis aufzurufen, das einem anderen Benutzer gehört und über die Berechtigung 700 verfügt?
Antwort1
sudo cd
funktioniert nicht, da der cd
Befehl in die Shell integriert ist. Sie sagen also, Sie sollen Root werden und dann diesen Befehl ausführen. Sie werden Root und dann wird nach dem Befehl nach sudo gesucht, aber es gibt keinen cd
Befehl zu finden.
Die zu verwendende Methode besteht darin, zu dem Benutzer zu wechseln, dem das Verzeichnis gehört. Die Berechtigung 700
bedeutet „Besitzer kann lesen, schreiben und ausführen“.
Wenn also root das Verzeichnis besitzt sudo -i
, ist „password“ und dann cd {dir}
die einzig richtige Methode. Wenn jemand anderes das Verzeichnis besitzt, können Sie trotzdem die 1. Methode verwenden, aber auch mit zu diesem Benutzer wechseln und es dann als dieser Benutzer su {username}
verwenden .cd
Antwort2
sudo -i
öffne die "Root-Konsole" und dann
cd /path/to/directory
( cd
ist ein in die Shell integrierter Befehl und kann daher nicht das Sudo-Ziel sein)
Antwort3
Um ein Stammverzeichnis zu öffnen, können wir eine Root-Shell ausführen, zum Beispiel:
sudo su
# cd /root
Antwort4
Sie können sich auch zum Root-Benutzer erheben, indem Sie:
sudo -s
Anschließend können Sie per cd in ein beliebiges Verzeichnis wechseln, in das normale Benutzer keinen Zugriff haben, etwa:
cd /root
Oder
cd /var/lib/
Wenn Sie fertig sind, geben Sie Folgendes ein:
exit
So melden Sie sich von den Root-Benutzerberechtigungen ab.
Um sich selbst als Root zu ernennen, können Sie die beiden Befehle auch &&
wie unten mit dem Operator kombinieren. Dieser Operator behält auch ihre Ausführungsreihenfolge bei. Erst wenn der aktuelle Befehl erfolgreich ausgeführt wird, darf der nächste Befehl ausgeführt werden:
sudo -s && cd /var/lib
Oder
sudo -s && cd /root