Wenn ich meinen Computer einschalte und mich bei meinem Konto anmelde, kann ich tun, was ich will, und ihn sogar herunterfahren oder neu starten.
Aber wenn ich das Terminal öffne und versuche, den Befehl auszuführen, reboot
muss shutdown
ich Root-Zugriff haben. Warum ist das so?
Mir fallen einige Gründe ein, warum Sie dieses Verhalten beispielsweise für wünschenswert halten könnten, ssh
aber ich bin mir nicht sicher, oder ich übersehe einen Punkt völlig.
Antwort1
Es handelt sich um eine Sicherheitsfunktion.
Wenn Sie die GUI verwenden, sitzen Sie (normalerweise) vor dem Computer, an dem Sie arbeiten. Wenn Sie jedoch ein Terminal verwenden, sind Sie möglicherweise physisch an einem Computer und verwenden einen anderen per Fernzugriff. Möglicherweise haben SievieleTerminalfenster öffnen sich zuvieleverschiedene Maschinen. Was passiert, wenn Sie versehentlich „reboot“ auf der falschen Maschine eingeben? Diese Aktion kann von einer Unannehmlichkeit bis zu einer kompletten Katastrophe reichen.
Durch die Verwendung von sudo werden Sie gezwungen, ein Passwort zu verwenden. Wenn Sie das falsche Passwort eingeben, wird eine Fehlermeldung angezeigt und Sie stellen hoffentlich fest, dass Sie sich im falschen Terminal befinden. Aus diesem Grund ist es sinnvoll, auf jedem Server ein anderes Root-Passwort zu verwenden.
Antwort2
Normalerweise können Sie vom Terminal aus einen Neustart durchführen, indem Sie Strg+Alt+Entf drücken. Das funktioniert aus der Ferne nicht. (Ein Neustart aus der Ferne über die GUI ohne Berechtigungen funktioniert ebenfalls nicht.)