Ich habe den Root-Benutzer in Ubuntu aktiviert und möchte Ubuntu als Server ohne DE verwenden. Dazu möchte ich das sudo-Privileg deaktivieren, das dem ersten Benutzer gegeben wurde. Wie kann ich das über die Kommandozeile machen? Ich weiß, dass ich eine GUI verwenden kann, aber wie mache ich das über die Befehlszeile?
Akzeptierte Antwort:
Der betreffende Benutzer hat sudo-Berechtigungen, da er sich im admin
befindet Gruppe. Wie wojox kommentierte, könnten Sie visudo
verwenden und sudo-Berechtigungen aus der Admin-Gruppe entfernen, aber das würde sudo-Fähigkeiten von allen entfernen Mitglieder der Admin-Gruppe, nicht nur der eine Benutzer.
Alternativ können Sie den Benutzer aus der Admin-Gruppe entfernen. Wenn bildschirmorientiert vi
als Befehlszeile genug angesehen wird, führen Sie vigr
aus und löschen Sie den Benutzernamen aus der entsprechenden Zeile.
Versuchen Sie für eine „reine“ Befehlszeilenlösung gpasswd
, da es /etc/group verwaltet und Benutzer zu Gruppen hinzufügen und löschen kann.
[email protected]:~# id -Gn username
username adm dialout cdrom plugdev lpadmin admin sambashare
# ^- the group to remove
[email protected]:~# gpasswd -d username admin
Removing user username from group admin
[email protected]:~# id -Gn username
username adm dialout cdrom plugdev lpadmin sambashare
# ^- username not a member
[email protected]:~# gpasswd -a username admin
Adding user username to group admin
[email protected]:~# id -Gn username
username adm dialout cdrom plugdev lpadmin admin sambashare
Unten ist meine erste Antwort, bevor mir klar wurde, dass es einen weniger dummen Weg gibt.
Wenn Sie dies auf kompliziertere Weise tun möchten, können Sie usermod
verwenden .
Hier ist ein Zitat aus dem usermod
Manpage:
-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]
A list of supplementary groups which the user is also a member of.
Each group is separated from the next by a comma, with no intervening
whitespace. The groups are subject to the same restrictions as the
group given with the -g option.
If the user is currently a member of a group which is not listed, the
user will be removed from the group. This behaviour can be changed via
the -a option, which appends the user to the current supplementary group
list.
Sie müssen also alle Gruppen für den Benutzer außer admin
angeben .
[email protected]:~# id username
uid=1000(username) gid=1000(username) groups=1000(username),4(adm),20(dialout),24(cdrom),46(plugdev),111(lpadmin),119(admin),122(sambashare)
[email protected]:~# usermod -G 4,20,24,46,111,122 username
[email protected]:~# id username
uid=1000(username) gid=1000(username) groups=1000(username),4(adm),20(dialout),24(cdrom),46(plugdev),111(lpadmin),122(sambashare)
Schließlich verstößt es gegen den Geist der Frage, aber man könnte users-admin
eingeben von der Befehlszeile aus, um Benutzer und Gruppen zu ändern.