logo

Sistema de archivos Linux

Un sistema de archivos de Linux es una colección estructurada de archivos en una unidad de disco o una partición. Una partición es un segmento de memoria y contiene algunos datos específicos. En nuestra máquina pueden existir varias particiones de memoria. Generalmente, cada partición contiene un sistema de archivos.

El sistema informático de uso general necesita almacenar datos de forma sistemática para que podamos acceder fácilmente a los archivos en menos tiempo. Almacena los datos en discos duros (HDD) o algún tipo de almacenamiento equivalente. Puede haber las siguientes razones para mantener el sistema de archivos:

  • Principalmente, la computadora guarda datos en el almacenamiento RAM; puede perder los datos si se apaga. Sin embargo, hay RAM no volátil (Flash RAM y SSD) que está disponible para mantener los datos después de la interrupción del suministro eléctrico.
  • Se prefiere el almacenamiento de datos en discos duros en comparación con la RAM estándar, ya que la RAM cuesta más que el espacio en disco. Los costes de los discos duros están bajando paulatinamente en comparación con la RAM.

El linux El sistema de archivos contiene las siguientes secciones:

sistema de archivos en linux
  • El directorio raíz (/)
  • Un formato de almacenamiento de datos específico (EXT3, EXT4, BTRFS, XFS, etc.)
  • Una partición o volumen lógico que tiene un sistema de archivos particular.

¿Qué es el sistema de archivos de Linux?

El sistema de archivos de Linux es generalmente una capa incorporada de un sistema operativo linux Se utiliza para manejar la gestión de datos del almacenamiento. Ayuda a organizar el archivo en el almacenamiento en disco. Gestiona el nombre del archivo, el tamaño del archivo, la fecha de creación y mucha más información sobre un archivo.

Si tenemos un formato de archivo no compatible en nuestro sistema de archivos, podemos descargar software para solucionarlo.

Estructura del sistema de archivos de Linux

El sistema de archivos de Linux tiene una estructura de archivos jerárquica ya que contiene un directorio raíz y sus subdirectorios. Se puede acceder a todos los demás directorios desde el directorio raíz. Una partición normalmente tiene un solo sistema de archivos, pero puede tener más de un sistema de archivos.

Un sistema de archivos está diseñado de manera que pueda administrar y proporcionar espacio para datos de almacenamiento no volátiles. Todos los sistemas de archivos requerían un espacio de nombres que fuera una metodología organizativa y de denominación. El espacio de nombres define el proceso de denominación, la longitud del nombre del archivo o un subconjunto de caracteres que se pueden utilizar para el nombre del archivo. También define la estructura lógica de los archivos en un segmento de memoria, como el uso de directorios para organizar archivos específicos. Una vez que se describe un espacio de nombres, se debe definir una descripción de metadatos para ese archivo en particular.

La estructura de datos debe admitir una estructura de directorios jerárquica; esta estructura se utiliza para describir el espacio en disco disponible y utilizado para un bloque en particular. También tiene otros detalles sobre los archivos, como el tamaño del archivo, la fecha y hora de creación, actualización y última modificación.

Además, almacena información avanzada sobre la sección del disco, como particiones y volúmenes.

Los datos avanzados y las estructuras que representan contienen la información sobre el sistema de archivos almacenado en la unidad; es distinto e independiente de los metadatos del sistema de archivos.

El sistema de archivos Linux contiene una arquitectura de implementación de software del sistema de archivos de dos partes. Considere la siguiente imagen:

Sistema de archivos Linux

El sistema de archivos requiere una API (interfaz de programación de aplicaciones) para acceder a las llamadas a funciones para interactuar con los componentes del sistema de archivos, como archivos y directorios. API facilita tareas como crear, eliminar y copiar archivos. Facilita un algoritmo que define la disposición de los archivos en un sistema de archivos.

Las dos primeras partes del sistema de archivos dado, en conjunto, se denominan Sistema de archivos virtuales Linux . Proporciona un único conjunto de comandos para que el kernel y los desarrolladores accedan al sistema de archivos. Este sistema de archivos virtual requiere que el controlador del sistema específico proporcione una interfaz al sistema de archivos.

Estructura de directorios

Los directorios nos ayudan a almacenar los archivos y localizarlos cuando los necesitemos. Además, los directorios se denominan carpetas, ya que se pueden suponer que son carpetas donde residen los archivos en forma de analogía física con el escritorio. Los directorios se pueden organizar en una jerarquía similar a un árbol en Linux y en varios otros sistemas operativos.

La estructura de directorios de Linux está bien documentada y definida en Linux FHS (Estándar de jerarquía del sistema de archivos). Hacer referencia a esos directorios si el acceso a ellos se logra a través de los nombres secuencialmente más profundos del directorio vinculado por una barra diagonal '/' como /var/spool/mail y /var/log. Estos se conocen como caminos.

La siguiente tabla proporciona una lista de directorios de Linux de nivel superior estándar, definido y bien conocido muy breve y sus propósitos:

    / (sistema de archivos raíz):Es el directorio del sistema de archivos de nivel superior. Debe incluir todos los archivos necesarios para iniciar el sistema Linux antes de montar otro sistema de archivos. Todos los demás sistemas de archivos se montan en un punto de montaje estándar y bien definido debido a los directorios del sistema de archivos raíz después de que se inicia el sistema./bota:Incluye la configuración estática del kernel y del cargador de arranque y los archivos ejecutables necesarios para iniciar una computadora con Linux./papelera:Este directorio incluye archivos ejecutables del usuario./desarrollador:Incluye el archivo de dispositivo para todos los dispositivos de hardware conectados al sistema. Estos no son controladores de dispositivos; en cambio, son archivos que indican todos los dispositivos del sistema y brindan acceso a estos dispositivos./etc:Incluye los archivos de configuración del sistema local para el sistema host./lib:Incluye archivos de biblioteca compartidos que son necesarios para iniciar el sistema./hogar:El almacenamiento del directorio de inicio está disponible para los archivos del usuario. Todos los usuarios tienen un subdirectorio dentro de /home./mnt:Es un punto de montaje temporal para sistemas de archivos básicos que se puede utilizar en el momento en que el administrador está trabajando o reparando un sistema de archivos./medios de comunicación:Un lugar para montar dispositivos de medios extraíbles externos, como memorias USB que podrían estar vinculadas al host./optar:Contiene archivos opcionales, como programas de aplicación proporcionados por el proveedor, que deben colocarse aquí./raíz:Es el directorio de inicio de un usuario root. Tenga en cuenta que no es el sistema de archivos '/' (raíz)./tmp:Es un directorio temporal utilizado por el sistema operativo y varios programas para almacenar archivos temporales. Además, los usuarios pueden almacenar archivos temporalmente aquí. Recuerde que los archivos pueden ser eliminados sin previo aviso en cualquier momento en este directorio./sbin:Estos son archivos binarios del sistema. Son ejecutables utilizados para la administración del sistema./usr:Son archivos de solo lectura y que se pueden compartir, incluidas bibliotecas ejecutables y binarios, archivos man y varios tipos de documentación./era:Aquí se guardan los archivos de datos variables. Puede contener elementos como MySQL, archivos de registro, otros archivos de bases de datos, bandejas de entrada de correo electrónico, archivos de datos del servidor web y mucho más.

Características del sistema de archivos de Linux

En Linux, el sistema de archivos crea una estructura de árbol. Todos los archivos están organizados como un árbol y sus ramas. El directorio superior llamado directorio raíz . Se puede acceder a todos los demás directorios de Linux desde el directorio raíz.

Algunas características clave del sistema de archivos Linux son las siguientes:

    Especificación de rutas:Linux no utiliza la barra invertida () para separar los componentes; utiliza barra diagonal (/) como alternativa. Por ejemplo, como en Windows, los datos pueden almacenarse en C: Mis Documentos Trabajo, mientras que, en Linux, se almacenarían en /home/Mi Documento/Trabajo.Partición, directorios y unidades:Linux no utiliza letras de unidad para organizar la unidad como lo hace Windows. En Linux, no podemos saber si nos estamos dirigiendo a una partición, a un dispositivo de red o a un directorio 'ordinario' y una unidad.Sensibilidad entre mayúsculas y minúsculas:El sistema de archivos de Linux distingue entre mayúsculas y minúsculas. Distingue entre nombres de archivos en minúsculas y mayúsculas. Por ejemplo, existe una diferencia entre test.txt y Test.txt en Linux. Esta regla también se aplica a directorios y comandos de Linux.Extensiones de archivo:En Linux, un archivo puede tener la extensión '.txt', pero no es necesario que un archivo tenga una extensión de archivo. Al trabajar con Shell, a los principiantes les crea algunos problemas para diferenciar entre archivos y directorios. Si utilizamos el administrador de archivos gráfico, simboliza los archivos y carpetas.Archivos ocultos:Linux distingue entre archivos estándar y archivos ocultos; la mayoría de los archivos de configuración están ocultos en el sistema operativo Linux. Por lo general, no necesitamos acceder ni leer los archivos ocultos. Los archivos ocultos en Linux están representados por un punto (.) antes del nombre del archivo (por ejemplo, .ignore). Para acceder a los archivos, necesitamos cambiar la vista en el administrador de archivos o usar un comando específico en el shell.

Tipos de sistema de archivos Linux

Cuando instalamos el sistema operativo Linux, Linux ofrece muchos sistemas de archivos como Ext, Ext2, Ext3, Ext4, JFS, ReiserFS, XFS, btrfs, y intercambio .

Sin señal de entrada
Sistema de archivos Linux

Entendamos cada uno de estos sistemas de archivos en detalle:

1. Sistema de archivos Ext, Ext2, Ext3 y Ext4

El sistema de archivos Ext significa Sistema de archivos extendido . Fue desarrollado principalmente para SO MINIX . El sistema de archivos Ext es una versión anterior y ya no se utiliza debido a algunas limitaciones.

ext2 es el primer sistema de archivos de Linux que permite gestionar dos terabytes de datos. Ext3 se desarrolla a través de Ext2; Es una versión mejorada de Ext2 y contiene compatibilidad con versiones anteriores. El principal inconveniente de Ext3 es que no admite servidores porque este sistema de archivos no admite la recuperación de archivos ni las instantáneas de disco.

ext4 El sistema de archivos es el sistema de archivos más rápido entre todos los sistemas de archivos Ext. Es una opción muy compatible para los discos SSD (unidad de estado sólido) y es el sistema de archivos predeterminado en la distribución de Linux.

2. Sistema de archivos JFS

JFS significa Sistema de archivos registrado , y es desarrollado por IBM para AIX Unix . Es una alternativa al sistema de archivos Ext. También se puede utilizar en lugar de Ext4, donde se necesita estabilidad con pocos recursos. Es un sistema de archivos útil cuando la potencia de la CPU es limitada.

mecanografiado de bucle foreach

3. Sistema de archivos ReiserFS

ReiserFS es una alternativa al sistema de archivos Ext3. Tiene un rendimiento mejorado y funciones avanzadas. Anteriormente, ReiserFS se usaba como sistema de archivos predeterminado en SUSE Linux, pero luego cambió algunas políticas, por lo que SUSE volvió a Ext3. Este sistema de archivos admite dinámicamente la extensión del archivo, pero tiene algunos inconvenientes en el rendimiento.

4. Sistema de archivos XFS

El sistema de archivos XFS se consideró JFS de alta velocidad, desarrollado para el procesamiento de E/S en paralelo. La NASA todavía usa este sistema de archivos con su servidor de alto almacenamiento (servidor de más de 300 terabytes).

5. Sistema de archivos Btrfs

Btrfs significa Sistema de archivos de árbol B . Se utiliza para tolerancia a fallas, reparación de sistemas, administración divertida, configuración de almacenamiento extensa y más. No es una buena opción para el sistema de producción.

6. Intercambiar sistema de archivos

El sistema de archivos de intercambio se utiliza para la paginación de la memoria en el sistema operativo Linux durante la hibernación del sistema. Un sistema que nunca entra en estado de hibernación debe tener un espacio de intercambio igual a su tamaño de RAM.

¿Qué es el montaje en el sistema de archivos de Linux?

En Linux, el 'a montar' , un término de sistema de archivos, se refiere a los primeros días de la informática, cuando un disco extraíble o un paquete de cintas debían montarse físicamente en un dispositivo de unidad correcto. En el paquete de discos, el sistema de archivos lógicamente sería montado por el sistema operativo para que los contenidos estén disponibles para que los programas de aplicación, el sistema operativo y los usuarios puedan acceder a ellos después de ubicarlos físicamente en la unidad.

Simplemente, un punto de montaje es un directorio creado como componente del sistema de archivos. Por ejemplo, el sistema de archivos de inicio se coloca en el directorio /home. Los sistemas de archivos se pueden colocar en puntos de montaje en muchos sistemas de archivos no raíz, pero es menos común.

  • El sistema de archivos raíz de Linux se monta en el directorio / (directorio raíz) muy temprano dentro de la secuencia de inicio.
  • Posteriormente, los programas de inicio de Linux montan varios sistemas de archivos, ya sea rc en SystemV o mediante systemd en las nuevas versiones de Linux.
  • El montaje del sistema de archivos durante el inicio lo maneja el archivo de configuración, es decir, /etc/fstab .
  • Una manera fácil de entender que fstab es la abreviatura de 'tabla del sistema de archivos' , y es una lista de sistemas de archivos que se van a montar, sus opciones y puntos de montaje designados que pueden ser necesarios para sistemas de archivos particulares.

Los sistemas de archivos se pueden montar en un punto/directorio de montaje disponible con la ayuda del comando mount. En otras palabras, cualquier directorio que se aplique como punto de montaje no debería tener otros archivos y debería estar vacío. Linux no evitará que los usuarios monten un sistema de archivos en uno que ya esté disponible o en un directorio que incluya archivos. Se cubrirá el contenido real y solo será visible el contenido del sistema de archivos recién montado si montamos cualquier sistema de archivos en cualquier sistema de archivos o directorio existente.