He activado el usuario raíz en ubuntu y quiero usar ubuntu como servidor sin DE. Para esto, quiero deshabilitar el privilegio sudo otorgado al primer usuario. ¿Cómo puedo hacer esto desde la línea de comando? Sé que puedo usar una GUI, pero ¿cómo hacerlo desde la línea de comandos?
Respuesta aceptada:
El usuario en cuestión tiene privilegios sudo porque está en el admin
grupo. Como comentó wojox, podrías usar visudo
y eliminar los privilegios de sudo del grupo de administración, pero eso eliminaría las capacidades de sudo de todos miembros del grupo de administración, no solo el usuario.
Como alternativa, puede eliminar al usuario del grupo de administración. Si está orientado a la pantalla vi
se considera línea de comando suficiente, ejecute vigr
y elimine el nombre de usuario de la línea correspondiente.
Para una solución de línea de comandos "pura", pruebe gpasswd
, ya que administra /etc/group y puede agregar y eliminar usuarios de grupos.
[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
A continuación, mi primera respuesta antes de darme cuenta de que había una forma menos tonta de hacerlo.
Si desea una forma más complicada de hacer esto, puede usar usermod
.
Aquí hay una cita del usermod
página man:
-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.
Por lo tanto, debe especificar todos los grupos para el usuario excepto admin
.
[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)
Finalmente, viola el espíritu de la pregunta, pero uno podría escribir users-admin
desde la línea de comandos para modificar usuarios y grupos.