En este artículo veremos de forma detallada el sistema de ficheros en Linux y como se distribuyen estos para hacer funcionar este sistema operativo de código libre. Una de las principales diferencias que implementa Linux frente a otros sistemas operativos, es el sistema de ficheros y para llegar a ser buenos usuarios y utilizar de forma correcta el sistema, necesitaremos ver sus características fundamentales.
El sistema de ficheros, particiones, así como sus permisos son parte fundamental de la estructura de un sistema operativo, y no es algo distinto en Linux. Repasaremos de forma concisa estas características para conocer de forma más profunda el funcionamiento de ellos.
Comenzamos por supuesto, por la estructura básica en la que se sostiene el sistema, esta no es otra que el sistema de particiones y el formato de ellas. A diferencia de Windows, Linux no maneja las particiones mediante la asignación de letras para cada unidad, y esto es algo que siempre debemos tener presente.
En este caso tenemos siempre particiones primarias, en donde se instala el sistema operativo, se almacenan ficheros, etc, y particiones lógicas que se utilizan por ejemplo para la memoria virtual. Una agrupación de particiones lógica forma una partición extendida.
Estas particiones y unidades se nombran de una forma distinta respecto de Windows, sin letras y en forma de directorios. Dependiendo de la arquitectura del disco duro que utilicemos podremos tener varias nomenclaturas para ellas:
Básicamente podemos identificar que las interfaces SATA llevan como nombre sdxX y que las unidades IDE llevan como nombre hdxX. Por lo demás la nomenclatura es la misma. Las unidades de almacenamiento SSD y USB también se llamarán como las unidades SATA.
Sabiendo cómo se nombran las particiones, vamos a ver qué sistema de ficheros utilizan estas para almacenar todos los datos del sistema. Sabremos ya que en Windows son de tipo ntfs.
Además del propio sistema de ficheros que utiliza Linux para instalarse, también es compatible con el de otros sistemas como Windows o MAC con el objetivo de facilitar el intercambio de información entre ellos. Será necesario instalar algún que otro paquete extra para añadir esta funcionalidad, concretamente ntfs-3g aunque, en el caso de Ubuntu, ya está disponible de forma nativa ésta.
Además del sistema de fichero nativo, soporta otro tipo de sistema de ficheros para interactuar con ficheros almacenamos en ellos:
En Linux, todos los elementos se tratan como si de ficheros y directorios se tratasen, y esto también incluye los volúmenes y particiones. Para poder utilizar un sistema de ficheros que no sea el propio en donde está instalado el sistema, necesitaremos montarlo previamente. Para ello, cada partición se enlaza mediante la operación de montaje con otra estructura de directorios de la que cuelga, como si de una carpeta se tratara. Actualmente, no es necesario utilizar el terminar para montar particiones típicas como las de Windows o las unidades de almacenamiento extraíble. Eso sí, si tenemos una versión server de Linux, sí que necesitaremos hacer esto de forma manual. Además, forma parte del funcionamiento más básico del sistema y debemos de conocerlo.
La organización de directorios de Linux se lleva a cabo mediante una jerarquía establecida mediante el FHS (Filesystem Hierarchy Estándar) en el que se definen la distribución y nombres de ficheros y directorios de Linux.
La estructura de directorios y ficheros de Linux se organiza en forma de árbol invertido, es decir, desde un directorio principal denominado “/” o directorio raíz, cuelgan absolutamente todos los demás, incluso las particiones cuando son montadas. Los principales directorios que cuelgan de raíz son:
En Linux, cada fichero tiene un propietario, que será casi siempre, el usuario que lo creó. Además, este usuario pertenecerá a un grupo determinado. Nosotros podremos modificar tanto usuarios como grupos cuando queramos, y añadir o borrar los que creamos convenientes.
Visita este tutorial para ver cómo gestionar usuarios y grupos en Linux
Básicamente el sistema asigna permisos sobre un fichero o directorio atendiendo a tres categorías de usuarios distintas:
En cada grupo de letras que hemos comentado, está formada por tres caracteres que en los que podrán distinguiste:
Veámoslo en un par de ejemplos, para ello tendremos que utilizar el comando ls seguido de la opción -l para ver los permisos:
ls -l Fichero.odt -rw-rw-r- - 1 ayudalinux ayudalinux 8123 dic 30 17:56 Fichero.odt
Vemos que al principio se muestran estos tres grupos de caracteres, comenzando por la izquierda:
ls -l drwxr-xr-x 6 ayudalinux ayudalinux 4096 dic 30 17:56 Descargas
En este caso tenemos un directorio, denotado con el carácter “d” al principio de la cadena de permisos. Para el caso de los directorios, los permisos significan lo siguiente:
Los permisos de un fichero estarán condicionados por el directorio que los contengan.
Para modificar los permisos de un fichero o directorio, tendremos que hacer uso del comando “chmod”. Este comando asigna los permisos mediante una notación octal para referirse a los tres grupos de permisos de cada elemento. Dispone también de otra llamada notación nemónica, pero con la primera nos basta para hacerlo todo.
chmod <permisos> fichero
Solamente el propietario del fichero o directorio y el root podrán cambiarle los permisos al elemento. Vamos a ver cómo utilizar la notación de permisos para chmod:
Realmente es muy intuitivo y sencillo de utilizar.
Vamos a verlo con un ejemplo cambiándole los permisos al fichero que antes hemos creado:
chmod 400 Fichero.odt -r- - - - - - - - 1 ayudalinux ayudalinux 8123 dic 30 17:56 Fichero.odt
Solamente tendremos permisos de lectura para el propietario, si ahora abrimos el fichero para editarlo, no podremos hacerlo, aunque seamos el propietario de él.
chmod 777 Fichero.odt -rwxrwxrwx 1 ayudalinux ayudalinux 8123 dic 30 17:56 Fichero.odt
Ahora, por el contrario, absolutamente todo el mundo podrá leer y editar este fichero.
Para finalizar, vamos a ver cómo cambiar el propietario de un fichero o directorio. Para hacer esto utilizaremos los comandos “chown “ y “chgrp”. Como hemos visto en el apartado anterior, cada elemento tendrá un usuario propietario y el grupo al que pertenece éste. Mediante estos comandos podremos modificar estos usuarios para cambiar de manos el fichero. Veamos cómo hacerlo:
chown root Fichero.odt -rwxrwxrwx 1 root ayudalinux 8123 dic 30 17:56 Fichero.odt
chgrp root Fichero.odt -rwxrwxrwx 1 root root 8123 dic 30 17:56 Fichero.odt
Vemos que en los distintos indicadores que representan usuario y grupo del fichero, ahora en lugar de aparecer “ayudalinux” aparece “root”
Pues esto es todo lo que más o menos debe conocer de forma básica del sistema de ficheros en Linux. Es información muy interesante para usuarios que se estén iniciado en el mundo del software libre y quieran tener claro el funcionamiento básico del sistema.
Por supuesto todo esto será aplicable a la interfaz gráfica del sistema, ya que la Shell es solamente un medio más de interacción con el sistema. Esperamos, ante todo, que la información haya sido de utilidad.
Esta web utiliza cookies propias con finalidad funcional y de terceros para realizar el análisis de la navegación de los usuarios, mejorar mis servicios y mostrarte publicidad relacionada con tus preferencias mediante el análisis de tus hábitos de navegación. Si continúa navegando, se considera que acepta su uso.
Leer más