Ser un usuario experto o administrador de un entorno de sistema operativo Linux requiere que tengamos un dominio de la gestión de archivos de Linux. Todo lo que se encuentra en el entorno del sistema operativo Linux se considera un archivo, desde archivos y carpetas creados o existentes hasta dispositivos de hardware internos o externos, como dispositivos USB.
La administración de archivos de Linux representa una mayor proporción de las operaciones del sistema operativo Linux y comienza a nivel de carpeta/directorio. Linux se adhiere a una estructura similar a un árbol con un directorio base que conduce a otros subdirectorios o subcarpetas que se utilizan para mantener los archivos creados o ya existentes.
Tabla de Contenidos
Tipos de archivos en Linux
Antes de analizar el manejo de los permisos de archivos en Linux, es importante que presentemos brevemente los tres tipos de archivos que probablemente manejará en Linux.
- Archivos regulares – Estos tipos de archivos son comunes e incluyen archivos de imagen, binarios y de texto.
- Directorios – Estos son archivos responsables del almacenamiento de los nombres de archivo enumerados y otra información de archivo relevante. Los directorios comunes en Linux incluyen el raíz (/) directorio, hogar Hogar/) directorio, papelera (/ papelera) directorio, y arranque (/arranque) directorio.
- Archivos especiales – Estos tipos de archivos incluyen dispositivos físicos reales como teclados externos, discos duros, unidades USB e impresoras. El sistema operativo Linux los enumera como archivos de directorio ordinarios.
Permisos de archivo de Linux
Los permisos de archivos son un problema molesto, especialmente cuando se trata de archivos de secuencias de comandos. Por ejemplo, puede crear fácilmente un archivo de texto con el comando táctil de Linux, editarlo y guardarlo sin ningún problema de permisos de archivos, como se muestra a continuación.
$ touch sample.txt $ nano sample.txt
Sin embargo, si intentamos crear un archivo de secuencia de comandos y lo ejecutamos de inmediato, nos encontraremos con problemas de permisos de archivos.
$ touch test.sh $ ./test.sh
Importancia de los permisos de archivo de Linux
De la demostración de la captura de pantalla anterior, puede parecer injusto que tenga el acceso de usuario correcto al sistema Linux que está utilizando, pero que no pueda crear y ejecutar archivos de script sin encontrarse con el Permiso denegado aviso de error
Dichas barreras de ejecución de archivos existen para evitar la ejecución de secuencias de comandos que podrían poner en peligro la integridad funcional del sistema operativo Linux, a menos que el usuario sea plenamente consciente de las acciones de su sistema operativo.
Cómo cambiar los permisos de archivo de Linux
Ahora abordaremos cómo cambiar varios permisos de archivos en Linux.
Hacer un archivo ejecutable
El primer paso es usar el comando ls para identificar los permisos de archivo predeterminados asociados con el archivo de destino.
$ ls -l test.sh
La porción de salida -rw-rw-r
de lo anterior implica que este archivo tiene permisos de lectura y escritura pero no ejecutable (x)
permiso. Para hacer que este script sea ejecutable tanto para el usuario como para el grupo, usaremos el comando chmod.
$ chmod +x test.sh
Confirmemos que el archivo ahora es ejecutable.
$ ls -l test.sh
Cambiar el permiso del propietario del archivo a solo lectura
Un usuario solo leerá el archivo y no lo escribirá ni lo ejecutará.
$ chmod u-w test.sh
Cambiar el permiso del grupo a solo lectura
Los miembros de un grupo de usuarios solo leerán el archivo y no podrán escribir en él.
$ chmod g-w test.sh
Otorgar permiso de escritura al propietario del archivo
Un usuario podrá escribir en el archivo.
$ chmod u+w test.sh
Cambiar el permiso del grupo para escribir
Los miembros de un grupo podrán escribir en el archivo.
$ chmod g+w test.sh
Solicitud de permisos de archivos múltiples
Supongamos, por ejemplo, que queremos que el propietario del archivo tenga permiso de ejecución y que el grupo asociado tenga permisos de escritura y ejecución, implementaremos el siguiente comando:
$ chmod u+x,g+wr test.sh
Cuando se trata de directorios y desea realizar cambios recursivos en los permisos de archivos, use el comando chmod con la -R
opción.
$ chmod -R u-w,g-w one
En el caso anterior, el usuario y el grupo pueden leer el directorio pero no pueden agregar (escribir) archivos/carpetas.
Con esta breve guía de artículos, ahora debería dominar los permisos de archivos de usuarios y grupos de Linux en relación con la concesión o revocación de permisos de lectura, escritura y ejecución.