InicioLinuxUnix para Newbies - Capitulo 9: Usuarios y Grupos

Unix para Newbies - Capitulo 9: Usuarios y Grupos

Linux12/19/2011

No estudiás informática? Sos un user regular de win? Igual te interesaría usar Unix? Con ésta serie de threads planeo presentarles el mundo Unix, con explicaciones sencillas. Supondré que ya tienen el sistema operativo instalado () o funcionando (quizás desde un Live CD?).

Nótese que este tutorial es para empezar DE CERO con algún sistema Unix. Si ya tienen conocimientos básicos, se van a aburrir y no les va a servir.

Capítulos anteriores:










Hora de seguir avanzando, aunque imagino que la gente que hace rato seguía las lecciones ya no necesita leer esto .

Es hora de hablar de grupos y de usuarios.

Cuentenme, se acuerdan cómo chequear con qué usuario están conectados?

Bueno, se las perdono por mi larga ausencia.

Por lo general el prompt les indica usuario@servidor:path$, pero en caso de que no, tenemos el comando id:

dijo:$ id[/quote]



Mi usuario es law, y estoy en los grupos law, adm, dialout, cdrom, plugdev, netdev, lpadim, admin, sambashare y vboxusers.

Para qué sirven los usuarios?

Para que varias personas puedan usar el mismo servidor, compartiendo (o no) recursos, para que puedan trabajar simultaneamente y acceder a sus archivos. En el caso de usuarios más avanzados, para probar distintas funcionalidades, para correr procesos, etc.

Y los grupos? Para qué los quiero?

Se acuerdan de los permisos que vimos en el capítulo 6?



Miren el archivo 1.jpg:

dijo:-rw-r--r-- 1 law law 386457 2010-06-10 10:31 1.jpg[/quote]

Repasando rapidamente, eso es un archivo (porque la línea empieza con -). El dueño (law) tiene permisos de lectura y escritura, no de ejecución. Los usuarios del grupo law tienen permiso sólo de lectura. El resto de los usuarios tienen permiso sólo de lectura.

Los grupos sirven para limitar los permisos de los usuarios, utilizando el segundo set de permisos, los de grupo. Puedo hacer que mis archivos estén disponibles a usurios del grupo1 para leer y escribir pero que el resto de usuarios sólo puedan leer.

Ejercicio: Cómo quedarían los permisos de 1.jpg si quisiera hacer eso?

Listando usuarios y grupos

Digamos que quiero crear el usuario user1 que esté en el grupo group1. Empecemos por lo básico. Cómo se si existen?

Los usuarios se almacenan en un archivo llamado passwd, que está en el directorio /etc:



Se lee así:

dijo:usuario:passwd:uid:gid:gecos:homedir:shell[/quote]

Entonces...

El primer usuario se llama root
Tiene el password definido (sino veríamos un ! en vez de la x)
Su id de usuario es 0
Su grupo principal tiene id 0
Su gecos (información extra para identificar al usuario) sólo dice root
Su home directory es /root
Su shell default es /bin/bash

Nota: No se dejen engañar por el nombre del archivo! El archivo passwd no contiene ningún password. Éstos se encuentran en el /etc/shadow, y están encriptados.

Entonces, para saber si existe user1 tenemos dos opciones:

dijo:
$ id user1
$ grep user1 /etc/group[/quote]



Definitivamente user1 no existe.

Ahora para group1. Los grupos están almacenados en el archivo group que también está en /etc:



Y este lo leemos como...

dijo:grupo:password:gid:users[/quote]

El primer grupo:

Se llama root
No tiene password
Su id de grupo es 0
No tiene usuarios asignados a él

Podemos ver que law pertenece al grupo adm.

Existe el grupo group1? Cómo confirmarían que no?

Ya que sabemos que no existen, vamos a crearlo.

Creando grupos

Primero y principal tendremos que ser super usuarios para crear grupos y/o users. Pasemos a root:



El comando a usar será groupadd.

Ejercicio: Cómo puedo encontrar las instrucciones para ese comando?

Agregamos group1:

dijo:# groupadd group1[/quote]



Group1 agregado!

Ahora digamos que quiero agregar group5, con el gid 1005.

Ejercicio: Cómo compruebo que ningún otro grupo tenga el gid 1005?

El comando será:

dijo:# groupadd -g 1005 group5[/quote]



Pero qué perfección!

Pero.... oops, yo quería que tenga uid 505 en vez de 1005, me equivoqué!

Modificando y borrando grupos

El comando groupmod es muy útil en estos casos.

dijo:# groupmod -g 505 group5[/quote]

Lograría lo que necesitamos:



Y para borrarlos?

dijo:# groupdel group5[/quote]



Pasemos a los usuarios.

Creando usuarios

El mecanismo es similar al de crear grupos, el comando se llama useradd.

dijo:# useradd group1[/quote]



Una consulta al manual del useradd nos cuenta cómo manipular cada uno de sus atributos:

-u uid
-g gid
-G gid de grupos adicionales
-d homedir
-m -d homedir (crea el homedir si no existe)
-s shell

Entonces... Cómo crearías a user2 para que tenga uid 3333, pertenezca al grupo group1, su homedir sea /home/user2 (que no está creado) y use /bin/bash?

Modificar y borrar usuarios

El comando usermod me permite modificar usuarios. Utiliza las mismas opciones y argumentos que el useradd.

Notaron que cuando creé a user1 creó un grupo del mismo nombre y lo asignó a él? Vamos a cambiar a user1 al grupo law:

# usermod -g 1000 user1



Ahora quiero que su grupo principal sea law pero que también pertenezca al group1:

# usermod -G 1001 user1



Y para borrar:

# userdel user1



Nota: recuerden que para crear un password se usa el comando passwd. Root puede cambiar el password a cualquier usuario.

Cambiar a otro usuario

Para cambiar de un usuario a otro se utiliza el comando su (switch user). Lo vimos más arriba, para cambiar a root como law usé

$ su -

El - indica que quiero que el usuario root se conecte con su propio entorno, y no con el del usuario law.

Para cambiar de un usuario a otro voy a necesitar el password del usuario, sino no podré hacerlo.

Ejercicio: Crear un grupo test, con gid 1001. Un usuario test con gid 3333. Ponerle el password test.

Para pasar del usuario law al usuario test:

$ su - test




Les recomiendo que miren el manual para useradd, userdel, usermod, groupadd, groupdel, groupmod, group, passwd y su para una lista completa de todo lo que pueden hacer con ellos.

Acepto dudas, comentarios, respuestas a los ejercicios, críticas, etc en los comments.

Espero verlos pronto!



Y si, soy una naba que escribió mal su propio usuario . s/Ramanthan/Ramanathan/g
Datos archivados del Taringa! original
26puntos
608visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
2visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

R
Ramanathan🇦🇷
Usuario
Puntos0
Posts23
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.