Introducción al sistema de archivos de Linux

  

Hay miles de archivos en el sistema de la computadora. Si no lo clasifica, se volverá complicado e incómodo de usar. El sistema de archivos puede ordenar todo tipo de archivos muy bien. La siguiente serie pequeña le dará una introducción detallada al sistema de archivos de Linux, aprendamos juntos.

Para las computadoras, los llamados datos son una secuencia de 0 y 1. Dicha secuencia se puede almacenar en la memoria, pero los datos en la memoria desaparecerán con el apagado. Para guardar los datos durante mucho tiempo, almacenamos los datos en un CD o disco duro. De acuerdo con nuestras necesidades, generalmente guardamos los datos por separado en una unidad pequeña, como un archivo (también llamado pequeño, relativo a todos los datos). Pero si los datos solo pueden organizarse en archivos, pero no pueden clasificarse, los archivos seguirán siendo caóticos. Cada vez que buscamos un archivo, tenemos que revisar un archivo y un archivo, lo cual es demasiado problema. Un sistema de archivos es una forma lógica de un archivo que almacena archivos individuales de forma más clara.

Introducción a rutas y archivos

Los archivos se organizan en sistemas de archivos y, por lo general, se convierten en una estructura de árbol. Linux tiene un directorio raíz /, que es la parte superior de la estructura de árbol. El final de la bifurcación del árbol representa un archivo, y la bifurcación del árbol es un directorio (el equivalente de la carpeta que vemos en la interfaz de Windows). Lo que ve en la Figura 1 es el árbol de archivos completo. Si tomamos una parte del árbol, por ejemplo, comenzando desde el directorio vamei, en realidad constituye un sistema de archivos.

Para buscar un archivo, además de conocer el nombre del archivo, debe conocer todos los nombres de directorio desde la raíz del árbol hasta el archivo. El nombre del directorio y el nombre del archivo de todas las rutas a partir del directorio raíz forman una ruta. Por ejemplo, buscamos un archivo file.txt en Linux, no solo el nombre del archivo (file.txt), sino también la ruta completa, que es la ruta absoluta (/home/vamei/doc/file.txt). Desde la parte superior del directorio raíz /, es decir, la parte superior de la estructura de árbol, después del directorio home, vamei, doc, finalmente vea el archivo file.txt. Todo el sistema de archivos es jerárquico (jerarquía), vamei es un subdirectorio de inicio y home es el directorio principal de vamei.

En Linux, se utiliza el comando ls para mostrar todos los archivos en un directorio, como $ ls /home /vamei /doc
1 archivo árbol

Como se ilustra en la El sistema de archivos que se muestra en él es el árbol de verde. En la parte superior del directorio raíz (/), a lo largo de la ruta marcada por la flecha roja, finalmente encontramos el archivo file.txt.

Directorio

En los sistemas Linux, los directorios también son un tipo de archivo. Así que /home /vamei es la ruta absoluta al archivo de directorio vamei.

Este archivo contiene al menos las siguientes entradas:

El código es el siguiente:

. Apunte al directorio actual

. . Apunte al directorio principal

Además, el archivo de directorio también contiene el nombre del archivo que pertenece al directorio. Por ejemplo, vamei también tiene las siguientes entradas, que apuntan a los archivos que pertenecen al directorio:
< El código es el siguiente:

doc

movie

photo

La forma en que Linux interpreta una ruta absoluta es la siguiente: primero busque el archivo del directorio raíz, desde ese directorio La ubicación del archivo del directorio de inicio se lee en el archivo, y luego la ubicación de vamei … … se lee desde el archivo de inicio hasta que se encuentra la ubicación de file.txt en el documento de directorio.

Porque está en el archivo de catálogo. Y . La entrada que podemos agregar en el camino. O . Para indicar el directorio actual o el directorio principal, como /home /vamei /doc /. . Equivalente a /home /vamei.

Además, Linux mantiene una variable en el directorio de trabajo del proceso. En el shell, siempre puede consultar el directorio de trabajo (en la línea de comandos, escriba $ pwd). Esto es para evitar la molestia de ingresar una ruta absoluta larga cada vez. Por ejemplo, si cambiamos el directorio de trabajo a /home /vamei ($ cd /home /vamei), entonces podemos ir a file.txt y guardar /home /vamei /($ ls doc /file.txt). La ruta así obtenida se llama ruta relativa. El doc /file.txt anterior es una ruta relativa de este tipo.

Cuando aparece un archivo en un archivo de directorio, insertamos el archivo en el sistema de archivos. Lo llamamos un vínculo rígido al archivo. Se permite que un archivo aparezca en varios directorios, por lo que tiene varios enlaces duros. Cuando el número de enlaces físicos (recuento de enlaces) se reduzca a 0, Linux eliminará el archivo. Muchas veces, desvincular y eliminar es un significado en el sistema operativo Linux. Debido al uso generalizado de enlaces blandos (los enlaces blandos no afectan el recuento de enlaces y pueden abarcar sistemas de archivos), ahora es menos probable que se establezcan enlaces duros manualmente.

Operaciones con archivos

Para archivos, podemos leer (escribir), escribir (escribir) y ejecutar (ejecutar). Leer es obtener datos de un archivo existente. Escribir es escribir datos en un archivo nuevo o en un archivo antiguo. Si el archivo almacena código binario ejecutable, puede cargarse en la memoria y ejecutarse como un programa. En un sistema de archivos de Linux, si un usuario desea realizar una operación en un archivo, debe tener permiso para realizar la operación en el archivo. La información sobre los permisos de los archivos se almacena en la información del archivo (metadatos), consulte la siguiente sección.

Información adicional del archivo (metadatos)

El archivo en sí solo contiene datos. El nombre del archivo se almacena realmente en el archivo de directorio. Además de estos, el sistema operativo mantiene información adicional sobre los archivos, como el tipo de archivo, el tamaño del archivo, los permisos de los archivos, el tiempo de modificación del archivo, el tiempo de lectura del archivo, etc. Puede usar el comando ls para consultar la información del archivo ($ ls -l file.txt) y obtener el siguiente resultado:

El código es el siguiente:

-rw-r - r-- 1 vamei vamei 8445 Sep 8 07:33 file1.txt

El significado de cada parte es el siguiente:

1. Introduzcamos la inicial -, que indica el tipo de archivo, indicando que file1.txt es un archivo regular (si es Los archivos de directorio deben mostrar d).

2. Luego hay nueve caracteres, rw-r - r--, que se usan para indicar los permisos de los archivos. Estos nueve caracteres se dividen en tres grupos, rw-, r--, r--, correspondientes al propietario, grupo propietario y todos los demás. Mirando hacia atrás en el arranque de Linux, después de iniciar sesión, tendré una identidad de usuario y una identidad de grupo, que es equivalente a mi tarjeta de presentación. El primer grupo indica que si la identidad del usuario en mi tarjeta de presentación demuestra que soy el propietario del archivo, entonces puedo leer (r) el archivo, escribir (w) los permisos del archivo, pero no tengo la implementación.
(-, si tiene permiso de ejecución, x) los permisos del archivo. El segundo grupo indica que si la identidad del grupo en mi tarjeta de presentación demuestra que mi grupo es miembro del propio grupo del archivo, entonces tengo permiso para leer el archivo. El tercer grupo dijo que si mi tarjeta de presentación muestra que no soy ni el propietario ni un miembro del grupo, solo tengo permiso para leer. Cuando quiero hacer una operación de lectura, Linux primero verá si soy el propietario. A continuación se explica el propietario y la propiedad del grupo.

3. El siguiente 1 es el número de enlaces duros (conteo de enlaces).

4. Después de que vamei indique que el usuario vamei es el propietario del archivo (propietario), el propietario del archivo tiene el derecho de cambiar los permisos del archivo (por ejemplo, cambiado a rwxrwxrwx). El grupo de posesión del último archivo vamei es el grupo vamei. El propietario y el propietario del archivo se adjuntan al archivo cuando se crea (lo que equivale a bloquear el archivo, solo los usuarios con la tarjeta de visita adecuada pueden abrir la operación). Tenga en cuenta que Linux tiene una raíz de superusuario (también conocida como usuario raíz) que tiene todos los archivos.

5. El siguiente 8445 indica el tamaño del archivo en bytes.

6.Sep 8 07:33 indica la última hora de modificación del archivo (hora de modificación). De hecho, la información del archivo adjunto también contiene la última hora de acceso del archivo, que no se muestra.

Enlace de software, o enlace simbólico

Como se mencionó en la discusión de los enlaces duros, los enlaces de software no afectan la cantidad de enlaces de un archivo. Si recuerda los accesos directos del sistema de Windows, el enlace flexible (enlace flexible, también llamado enlace simbólico) de Linux es un acceso directo a Linux. Un enlace flexible es esencialmente un archivo cuyo tipo de archivo es un enlace simbólico. En este archivo, hay una ruta de acceso absoluta al archivo al que apunta el enlace. Cuando lea los datos de este archivo, Linux lo dirigirá al archivo al que apunta y luego lo leerá (como si hiciera doble clic en el acceso directo). Los enlaces blandos se pueden crear fácilmente en cualquier lugar y apuntan a cualquier ruta absoluta.

El enlace flexible en sí también es un archivo, y también puede realizar las operaciones que puede realizar el archivo. Cuando operamos en enlaces blandos, debemos prestar atención a si operamos en el enlace blando en sí mismo o en la operación de destino señalada por el enlace blando. Si es lo último, decimos que la operación sigue el enlace.

umask

Cuando creamos un archivo, como touch, intentará crear un nuevo archivo con el permiso 666, que es rw-rw-rw-. Pero el sistema operativo debe referirse a la máscara de permiso para ver si el archivo se crea realmente como 666. La máscara de permiso indica los bits de permiso que el sistema operativo no permite. Por ejemplo, la máscara de permiso de 037 (---- wxrwx) significa que el bit wx del grupo y el bit rwx del otro no se pueden configurar. Si esta es la máscara de permiso, el permiso final del archivo es rw-r ----- (el bit w del grupo y el bit rw del otro están enmascarados).

Podemos cambiar la máscara de permiso de

de la siguiente manera:

$ umask 022


Resumen

Las computadoras son esencialmente herramientas para procesar datos, y los archivos son el soporte lógico para el almacenamiento de datos, por lo que es importante entender el sistema de archivos de Linux. La comprensión del sistema de archivos debe combinarse orgánicamente con otros aspectos de Linux (como la administración de usuarios).

Permisos de archivos, propietario, grupo propio, raíz de superusuario

vínculo físico, vínculo flexible, siga el vínculo

La anterior es una introducción detallada del sistema de archivos de Linux, si Sin un sistema de archivos, los archivos pueden ser muy difíciles de encontrar y aumentar la dificultad de trabajar. ¿Ahora tiene una comprensión más profunda del sistema de archivos de Linux?

Copyright © Conocimiento de Windows All Rights Reserved