Gestión de Permisos y Usuarios en la Terminal Linux
Clase 12 de 23 • Curso de Introducción a la Terminal y Línea de Comandos
Resumen
Con el comando chmod podemos cambiar los permisos de los archivos de dos formas, una es usando los símbolos (rwx) y otra es con el sistema octal.
Cómo cambiar los permisos de un archivo (chmod)
Es bastante sencillo cambiar los permisos de forma simbólica. Para esto, hay que escribir después del comando chmod
el símbolo del usuario, luego el operador y por último el permiso que quieres agregar o quitar.
chmod [simboloDelUsuario][operador][permiso] [archivoParaCambiarSusPermisos]
| owner | group | others | | --- | --- | --- | | u (de user) | g | o |
| Operador | Función | | --- | --- | | + | Añade un permiso | | - | Quita un permiso | | = | Asigna un permiso |
Observa los permisos del siguiente archivo:
Supongamos que queremos añadirle permiso de escritura al grupo, entonces tenemos que escribir lo siguiente:
chmod g+w ProyectoExplosivo.txt
Puedes cambiar varios permisos de varios usuarios al mismo tiempo, por ejemplo, si quisieras agregar el permiso de escritura y ejecución al grupo y a otros, sería así:
chmod go+wx [archivo]
Y si quieres permisos diferentes para cada usuario, solo sepáralos por comas:
chmod u+r,g=w [archivo]
En ese comando se le añadió el permiso de lectura al dueño y de escritura al grupo. No agregues espacio en las comas o provocarás un error.
También puedes cambiar los permisos usando su forma octal, por ejemplo el conjunto de permisos rwxr-xr-x
en su forma octal es 755.
chmod 755
Cómo gestionar usuarios (whoami | su)
A veces podemos tener una crisis existencial y no recordar quienes somos, pero en vez de asistir a un terapueta le podemos preguntar a la terminal. El comnando whoami
, literalmente "¿Quien soy yo?", te muestra cual es el usuario que se está ejecutando, esto es porque a veces podemos olvidar con cual usuario estamos trabajando.
Cuando listamos los archivos con ls -l
la tercera columna muestra el nombre del usuario que es propietario del archivo y la cuarta columna muestra el grupo que tiene control sobre el archivo.
Para el ejemplo, aparece "miguelangel" en ambas columnas porque ese es el usuario que estamos usando y porque el grupo al que pertenece el usuario se llama igual "miguelangel".
Para cambiar de usuario se usa el comando su
Switch User, seguido del usuario al que quieres cambiar, en este caso vamos a cambiar al superusuario root.
su root
Cuando ejecutes este comando te pedira que coloques su contraseña.
Y aqui una advertencia: el superusuario root (sí, ese es el nombre técnico) tiene poder para hacer y deshacer con el sistema operativo, puedes eliminar cosas que no deberías eliminar y puede hacer mucho desastre. Usa los privilegios del root con cuidado.
Volviendo al tema, observa la nueva información de la terminal.
Ahora te indica antes del arroba que eres el usuario root, y al final de la información te coloca un numeral en vez de un signo de peso, eso significa que tienes altos privilegios en la terminal.
También te puedes dar cuenta que ya la virgulilla no está a pesar de que estás en la misma ruta, eso es porque el home del root no es ese, si quieres ver el home del root ejecuta esto:
cd ~; pwd
Ahora comencemos con lo bueno, vamos a crear un archivo con root y a listarlo a ver que pasa.
touch ArchivoRoot.txt; ls -l
Ahora si intentamos borrar ese archivo con otro usuario que no sea root no vamos a poder porque no tiene los permisos para hacerlo.
¿Qué hacer en caso de olvidar una contraseña?
Si estás usando Windows Subsystem for Linux (wsl) y se te olvidó la contraseña del root. Sigue estos pasos:
- Abre el cmd de windows y ejecuta este comando
wsl --user root
. Esto hará que se inicie en la terminal wsl con el usuario root. - Luego ejecuta el comando
passwd root
el cual te permitirá cambiar la contraseña del usuario root.
Ya con esto puedes volver a la terminal de wsl y volver a ejecutar el comando su root
.
Cambiar el propietario (chown)
Puede que no te quieras hacer responsable de tus archivos, así que se los quieres dejar a alguien más. Para eso usa el comando chown
Change Owner. La sintaxis es muy simple:
chown [usuarioAlQuePertenecerá] [archivo]
En la cuarta columna sigue diciendo root, pero eso es porque ese es el nombre del grupo.
Tabla de comandos whoami, su y chmod
| Comando | Función | | --- | --- | | whoami | Muesta el usuario con el que se está trabajando | | su | Switch User Cambia al usuario al que le especifiques | | chmod | Cambia los permisos de un archivo | | chown | Change Owner Cambia el propietario de un archivo |
Ejercicios de práctica
Recuerda que si haces mucho desastre puedes borrar casi lo que sea con el usuario root y ten mucho cuidado con lo que borras.
- Crea un archivo llamado "ArchivoPoderoso.txt", luego dale los permisos r-xrwxr-xr-x usando la forma simbólica del comando chmod.
- Crea un archivo con el usuario root llamado "pelota.txt", luego dale los permisos rwxr-x--x usando la forma numérica del comando chmod y luego cambia el propietario a tu usuario principal con chown.
- Crea un archivo con un nombre bonito y asígnale los permisos --------- usando su forma simbólica.
Contribución creada con los aportes de: Miguel Gonzalez.