Introducción
En cualquier sistema operativo multiusuario como Linux, los permisos de archivo son una característica de seguridad crítica. Controlan quién puede leer, escribir o ejecutar archivos, asegurando que los usuarios solo puedan acceder a los datos a los que están autorizados. Comprender cómo gestionar estos permisos es una habilidad fundamental para cualquier usuario, desarrollador o administrador de sistemas de Linux.
En este laboratorio, obtendrá experiencia práctica con los comandos esenciales para gestionar los permisos de archivo. Aprenderá a:
- Crear un nuevo archivo usando el comando
touch. - Modificar los permisos de archivo usando el comando
chmodcon notación numérica (octal). - Cambiar el propietario y el grupo de un archivo usando el comando
chown. - Verificar los cambios usando el comando
ls -l. - Establecer permisos estándar para un directorio.
Al finalizar este laboratorio, se sentirá cómodo con los principios básicos de los permisos de archivos y directorios en Linux.
Crear Archivo de Prueba con el Comando touch /tmp/testfile
En este paso, comenzará creando un archivo vacío que utilizaremos para el resto del laboratorio. El comando estándar para crear un archivo vacío en Linux es touch. Este comando crea el archivo si no existe, o actualiza su marca de tiempo de modificación si ya existe.
Crearemos nuestro archivo de prueba en el directorio /tmp, que es una ubicación estándar para archivos temporales.
Ejecute el siguiente comando en su terminal para crear un archivo llamado testfile:
touch /tmp/testfile
El comando no producirá ninguna salida si tiene éxito. Opcionalmente, puede verificar que el archivo se ha creado listándolo con ls /tmp/testfile.
Establecer Permisos con el Comando chmod 644 /tmp/testfile
En este paso, aprenderá a cambiar los permisos del archivo que acaba de crear. El comando chmod (change mode, cambiar modo) se utiliza para este propósito. Los permisos se pueden establecer utilizando notación simbólica o numérica (octal). Aquí, utilizaremos el método numérico, que es muy común.
En la notación numérica, los permisos se representan mediante un número de tres dígitos, correspondientes al propietario (owner), al grupo (group) y a los otros usuarios (other users), respectivamente. Cada permiso tiene un valor:
4para lectura (r)2para escritura (w)1para ejecución (x)
Estableceremos los permisos a 644, que es una configuración muy común para archivos. Esto se traduce en:
- Propietario:
6(4+2) -> lectura y escritura (rw-) - Grupo:
4-> solo lectura (r--) - Otros:
4-> solo lectura (r--)
Ahora, ejecute el siguiente comando para aplicar estos permisos a su archivo de prueba:
chmod 644 /tmp/testfile
Este comando no producirá ninguna salida. En un paso posterior, verificaremos que los permisos se hayan aplicado correctamente.
Cambiar Propietario con el Comando chown root:root /tmp/testfile
En este paso, cambiará la propiedad del archivo. El comando chown (change owner, cambiar propietario) se utiliza para cambiar el usuario y/o el grupo propietario de un archivo. La sintaxis es chown usuario:grupo nombre_archivo.
Cambiar el propietario de un archivo a otro usuario (como root) es una operación privilegiada que requiere derechos administrativos. Deberá utilizar el comando sudo para ejecutar chown con los permisos necesarios. En este entorno LabEx, el usuario labex puede usar sudo sin contraseña.
Cambiemos el propietario y el grupo de /tmp/testfile a root. Ejecute el siguiente comando:
sudo chown root:root /tmp/testfile
Una vez más, un comando exitoso no producirá ninguna salida. Esta acción asegura que el archivo ahora sea propiedad del usuario administrativo del sistema.
Verificar con el Comando ls -l /tmp/testfile
En este paso, verificará todos los cambios que ha realizado hasta ahora. El comando ls -l proporciona un formato de "listado largo" (long listing) que muestra información detallada sobre los archivos, incluyendo permisos, propietario, grupo, tamaño y fecha de modificación.
Ejecute el siguiente comando para inspeccionar /tmp/testfile:
ls -l /tmp/testfile
Debería ver una salida similar a esta (la fecha y hora variarán):
-rw-r--r-- 1 root root 0 Oct 22 15:13 /tmp/testfile
Analicemos esta salida:
-rw-r--r--: Estos son los permisos del archivo. El primer carácter-indica que es un archivo regular.rw-muestra que el propietario (root) tiene permisos de lectura y escritura. El siguienter--muestra que el grupo (root) tiene permiso de solo lectura. Elr--final muestra que todos los demás usuarios también tienen permiso de solo lectura. Esto coincide con el644que estableció.root root: Esto muestra el propietario y el grupo del archivo, que cambió aroot.
Ahora ha creado con éxito un archivo, ha establecido sus permisos y ha cambiado su propiedad.
Asegurar Directorio con el Comando chmod 755 /tmp/testdir
En este paso final, establecerá los permisos en un directorio. Los permisos de directorio son similares a los permisos de archivo, pero el bit de ejecución (x) tiene un significado especial: otorga la capacidad de entrar al directorio y acceder a los archivos dentro de él.
Una configuración de permisos común y segura para directorios es 755. Desglosémoslo:
- Propietario:
7(4+2+1) -> lectura, escritura y ejecución (rwx). El propietario puede listar, crear/eliminar archivos y entrar al directorio. - Grupo:
5(4+1) -> lectura y ejecución (r-x). Los miembros del grupo pueden listar archivos y entrar al directorio, pero no pueden crear ni eliminar archivos. - Otros:
5(4+1) -> lectura y ejecución (r-x). Otros usuarios también pueden listar archivos y entrar al directorio.
Al comienzo de este laboratorio se creó para usted un directorio llamado /tmp/testdir. Ahora, aplíquele los permisos 755 usando el comando chmod.
chmod 755 /tmp/testdir
Puede verificar el cambio con ls -ld /tmp/testdir. La bandera -d es importante para listar los detalles del directorio en sí, no su contenido.
Resumen
¡Felicidades por completar este laboratorio! Ha practicado con éxito las habilidades fundamentales para gestionar los permisos de archivos y directorios en un entorno Linux.
En este laboratorio, aprendió a:
- Crear un archivo vacío con
touch. - Usar
chmodcon códigos numéricos (octales) como644para archivos y755para directorios para controlar el acceso. - Usar
sudo chownpara cambiar el propietario y el grupo de un archivo. - Usar
ls -lpara inspeccionar y verificar los permisos y la propiedad de los archivos.
Estos comandos son herramientas esenciales para asegurar sus archivos y mantener un sistema bien organizado. Dominarlos es un paso clave para volverse competente con Linux.



