Ich habe meine sudoers-Datei so konfiguriert, dass sie einen Befehl ohne Passwort und ohne Login-Terminal ausführt, aber wenn ich den Befehl ausführe, erhalte ich den folgenden Fehler:
"sudo: sorry, you must have a tty to run sudo"
Sol:Meine Sudoers-Konfiguration war, die Datei ohne Passwort und ohne tty auszuführen. Es besteht also die Möglichkeit, dass meine /etc/sudoers-Datei (oder jede andere darin enthaltene Datei) Folgendes enthält:
Defaults requiretty
Diese Konfiguration bewirkt, dass das sudo-Verhalten immer ein steuerndes Terminal erfordert. Das heißt, SUDO soll von einem Login-Terminal ausgeführt werden. Da dies keinen wirklichen Sicherheitsvorteil bietet, kann es sicher entfernt oder kommentiert werden.
Starten Sie nach dem Entfernen oder Kommentieren den sshd-Dienst neu
service sshd restart
Red Hat hat den Fehler geschlossen, indem die erforderliche Standardeinstellung von sudoers entfernt wurde.
Wenn Sie das Problem auf der Serverseite nicht beheben können, führen Sie als Umkehrung den Befehl mit
aus-t
oder
-tt
Optionen für ssh, das ein Pseudo-Terminal auf der entfernten Seite erstellt.