El comando groupdel de Linux se usa para eliminar un grupo. Este es un comando muy poderoso, así que utilícelo con cuidado. Es un comando común de Linux y puede usarlo en todas las distribuciones de Linux, como Ubuntu, CentOS, Debian, Fedora, etc.
Veamos algunos ejemplos de eliminación de un grupo en Linux usando el comando groupdel.
Grupo de eliminación de Linux sin usuarios
Para el ejemplo, ya he creado algunos grupos y un usuario de prueba. Veamos el ejemplo simple para eliminar un grupo que no tiene usuarios.
root@localhost:~# getent group test_users1 test_users1:x:1005: root@localhost:~# root@localhost:~# groupdel test_users1 root@localhost:~# getent group test_users1 root@localhost:~#
Eliminación de un grupo con usuarios
He creado un grupo test_users
y agregó journaldev
usuario a ello. Confirmemos esto usando el getent
y id
comandos.
root@localhost:~# getent group test_users test_users:x:1004:journaldev root@localhost:~# root@localhost:~# id journaldev uid=1002(journaldev) gid=1003(journaldev) groups=1003(journaldev),27(sudo),1004(test_users),1007(test_users_pwd) root@localhost:~#
Veamos qué sucede cuando eliminamos este grupo.
root@localhost:~# groupdel test_users root@localhost:~# id journaldev uid=1002(journaldev) gid=1003(journaldev) groups=1003(journaldev),27(sudo),1007(test_users_pwd) root@localhost:~# getent group test_users root@localhost:~#
El grupo se elimina y se quita de la lista de grupos de usuarios.
¿Podemos eliminar un grupo de sistemas usando el comando groupdel?
¿Podemos eliminar un grupo de nivel de sistema usando el comando groupdel?
Intentemos eliminar sudo
group usando el comando groupdel y vea qué sucede.
root@localhost:~# groupdel sudo root@localhost:~# id journaldev uid=1002(journaldev) gid=1003(journaldev) groups=1003(journaldev),1007(test_users_pwd) root@localhost:~# getent group sudo root@localhost:~#
Parece que pudimos eliminar el grupo de usuarios "sudo". Veamos qué sucede con los privilegios de superusuario del usuario.
root@localhost:~# su - journaldev journaldev@localhost:~$ journaldev@localhost:~$ ls /root ls: cannot open directory '/root': Permission denied journaldev@localhost:~$ sudo ls /root [sudo] password for journaldev: journaldev is not in the sudoers file. This incident will be reported. journaldev@localhost:~$
Parece que los privilegios de sudo también se eliminan, lo cual es obvio porque eliminamos el grupo "sudo".
Eliminación del grupo principal de un usuario
Cuando creamos un nuevo usuario, también se crea y se le asigna un nuevo grupo con el mismo nombre. Esto se llama el grupo principal del usuario.
Veamos si podemos eliminar el grupo principal del usuario.
root@localhost:~# groupdel journaldev groupdel: cannot remove the primary group of user 'journaldev' root@localhost:~#
Veamos la opción de ayuda para ver si hay alguna forma de superar este mensaje de error.
root@localhost:~# groupdel -h Usage: groupdel [options] GROUP Options: -h, --help display this help message and exit -R, --root CHROOT_DIR directory to chroot into -f, --force delete group even if it is the primary group of a user root@localhost:~#
El resultado indica claramente que podemos usar la opción -f para eliminar el grupo principal del usuario.
root@localhost:~# groupdel -f journaldev root@localhost:~# id journaldev uid=1002(journaldev) gid=1003 groups=1003 root@localhost:~#
Pudimos eliminar el grupo principal del usuario. Pero, el "gid =1003" todavía se muestra en la información del usuario. Entonces, no entiendo cuál es el caso de uso de esta característica.
Valores de salida del comando groupdel de Linux
Si está utilizando el comando groupdel en un script de shell, es mejor conocer los valores de salida para verificar si el comando se ejecutó correctamente o si se produjo algún error.
Valor de salida | Descripción |
0 | éxito |
2 | sintaxis de comando no válida |
6 | el grupo no existe |
8 | no se puede eliminar el grupo principal de usuarios |
10 | no se pueden actualizar los archivos de información del grupo |
Conclusión
El comando groupdel de Linux es muy poderoso y también puede eliminar grupos del sistema. Si está utilizando este comando para eliminar un grupo, tenga mucho cuidado porque es irreversible y puede crear problemas importantes si el grupo tiene muchos usuarios.
Referencia
- página del manual de groupdel