Gestion de usuarios y grupos
El sistema operativo GNU/Linux es un sitema multiusuario, es decir múltiples usuarios pueden acceder al sistema. Para que esto sea posible cada usuario cuenta con una cuenta de usaurio. La manera de gestionar los usuarios es gestionando estas cuentas de usuario.
Al mismo tiempo los usuarios son mejor gestionables dividiéndolos en grupos lo que se conoce como grupos de usuarios o grupos.
En este artículo se describirá brevemente la administración básica de usuarios y grupos en el sistema operativo GNU/Linux.
Usuarios
Es una cuenta que tiene acceso a la computadora, el nivel de control de esta dependerá del tipo de cuenta asignada al usuario. La cuenta root, es el usuario que tiene por defecto todos los permisos y control completo sobre el computador y está presente por defecto.
Existen también las cuentas de usuarios estándar y administradores, cuyo control del computador se diferencia principalmente en que un usuario estándar no puede hacer cambios significativos, en cambio un administrador si.
Grupos
Los grupos son una forma de clasificar cuentas de usuarios, existen grupo de administradores y de usuarios estándar, es posble asignar cuentas de usuario a distintos grupos y a la vez crear grupos según convenga. Un usuario puede ser miembro de muchos grupos.
Administrando usuarios y grupos
Existen diversas herramientas para hacerlo, desde herramientas de línea de comandos hasta interfaces gráficas de usuario. Sin embargo, las herramientas de línea de órdenes están presentes por defecto.
Comprobando usuarios
Algunos comandos de utilidad a continuación:
$ whoami
muestra en la pantalla el nombre del usuario logueado en la terminal acutal.
$ users
muestra los usuarios logueados actualmente.
groups
muestra los grupos a los que el usuario actual pertenece.
Convertirse en root
Pueden existir muchas cuentas en el sistema, pero podemos convertirnos en el usuario root o adquirir sus permisos, una forma de hacerlo esescribiendo en una terminal:
su
También funcionaría:
sudo su
A continuación escribiendo la contraseña de root.
Es mejor no usar la cuenta root a menos que sea muy necesario, en cambio es posible usar cualquier orden antecediendo la ordén sudo que luego de introducir la contraseña de superusuario nos dará los privilegios de root temporalmente, esto para evitar hacer daños al sistema no desados.
UID y GID
Cada usuario tien asignado un ID o identifiación de ahí viene UID (User ID), el archivo /etc/passwd contiene una lista mas detallada con la información de cada usuario, si abrimos este archivo podremos comprobar el UID del usuario actual buscando por el nombre del usuario, la línea de un usuario por ejemplo se ve así:
runno:x:1000:1000:runno,,,:/home/runno:/bin/bash
Esta línea describe al usuario runno que tiene un UID=1000, en derivados de Debian, los usuarios creados manualmente empiezan a contarse desde 1000, si se añadiría otro usuario manualmente su UID sería 1001, si se añade otro sería 1002 y así sucecivamente, esto por que los UID de 0 a 99 están reservados para el uso del sistema. Si vemos el mismo archivo nos daremos cuenta que el UID del usuario root es 0. A partir del kernel 2.2 el límite de usuarios posibles es 65536.
Luego del UID se especifíca /home/runno que es la carpeta home del usuario runno, después también se especifíca la shell por defecto que este usuario usa y es bash ya que se muestra /bin/bash.
El GID es similar al UID sólo que especifíca el ID de un grupo, el archivo '/etc/group' específica a más detalle el ID de cada grupo y también los usuarios miembros.
Añadir y quitar Usuarios
el comando userradd es el que se usa por defecto para añadir un nuevo usuario al sistema tiene varias opciones que se pueden ver con useradd --help, en el ejemplo siguiente crearemos un usuario estándar.
# useradd nuevousuario1
Aparecerá un pequeño modo interactivo en donde sólo es necesario introducir la contraseña del nuevo usuario y luego se creará un usuario llammado nuevousuario1 y también se creará una carpeta home para este usuario en /home/, además por defecto este usará la shell bash, y tampoco tendrá fecha de expiración, pero todo ello se puede cambiar después.
El comando userdel es el contrario de useradd, y borra un usuario existente, este tiene tres opciones: -r: para borrar todos los archivos que pertenecen a este usuario incluyendo su mismo directorio home. -f: Si se combina con -r forzará el borrado de los archivos incluso si el usuario está actualmente logueado. -h: muestra ayuda. El siguiente ejemplo borrará al usuario veiymar incluyendo sus archivos propios.
# userdel veiymar -r