PDF de programación - La estructura del sistema de archivos en Linux - Sistemas Operativos II

Imágen de pdf La estructura del sistema de archivos en Linux - Sistemas Operativos II

La estructura del sistema de archivos en Linux - Sistemas Operativos IIgráfica de visualizaciones

Publicado el 24 de Septiembre del 2018
835 visualizaciones desde el 24 de Septiembre del 2018
1,1 MB
27 paginas
Creado hace 10a (20/09/2013)
UNIVERSIDAD TECNOLÓGICA ECOTEC



SISTEMAS OPERATIVOS II

La estructura del sistema de archivos en Linux



GRUPO:

René Méndez

David González

Cesar Zúñiga

Gabriel Suarez



PROFESOR:

Ing. Karina Real



2013





La estructura del sistema de archivos en Linux

1.- Introducción e historia

Linux es un núcleo libre de sistema operativo (tambien suele referirse al núcleo como
kernel) basado en Unix. Es uno de los principales ejemplos de software libre y de
código abierto. Linux está licenciado bajo la GPL v2 y está desarrollado por
colaboradores de todo el mundo. El desarrollo del día a día tiene lugar en la Linux
Kernel Mailing List Archive.



El núcleo Linux fue concebido por el entonces estudiante de ciencias de la
computación finlandés, Linus Torvalds, en 1991. Linux consiguió rápidamente
desarrolladores y usuarios que adoptaron códigos de otros proyectos de software libre
para usarlo con el nuevo sistema operativo. El núcleo Linux ha recibido contribuciones
de miles de programadores de todo el mundo. Normalmente Linux se utiliza junto a un
empaquetado de software, llamado distribución Linux y servidores.

Un sistema Linux reside bajo un árbol jerárquico de directorios muy similar a la
estructura del sistema de archivos de plataformas Unix.

Originariamente, en los inicios de Linux, este árbol de directorios no seguía un
estándar cien por ciento, es decir, podíamos encontrar diferencias en él de una
distribución a otra.

Todo esto hizo pensar a cierta gente* que, posteriormente, desarrollarían el proyecto
FHS (Filesystem Hierarchy Standard, o lo que es lo mismo: Estándar de Jerarquía de
Sistema de Ficheros) en otoño de 1993.

* Rusty Russell, Daniel Quinlan y Christopher Yeoh, creadores del estándar FHS entre
otras personas.



2.- Estándar FHS

FHS se define como un estándar que detalla los nombres, ubicaciones, contenidos y
permisos de los archivos y directorios, es decir, un conjunto de reglas que especifican
una distribución común de los directorios y archivos en sistemas Linux.

Como se ha mencionado, se crea inicialmente para estandarizar la estructura del
sistema de archivos para sistemas GNU/Linux y más tarde, en torno al año 1995,
también para su aplicación en sistemas Unix.

FHS no es más que un documento guía, es decir, cualquier fabricante de software
independiente o cualquier persona que decida crear una nueva distribución
GNU/Linux, podrá aplicarlo o no a la estructura del sistema de archivos, con la ventaja
de que si lo integra en el sistema, el entorno de éste será mucho más compatible con
la mayoría de las distribuciones.

Es importante saber que el estándar FHS es en cierto modo flexible, es decir, existe
cierta libertad en el momento de aplicar las normas. De ahí que existan en la
actualidad leves diferencias entre distribuciones GNU/Linux.

Objetivos principales de FHS

o Presentar un sistema de archivos coherente y estandarizado.
o Facilidad para que el software prediga la localización de archivos y directorios

instalados.

o Facilidad para que los usuarios prediga la localización de archivos y directorios

instalados.

o Especificar los archivos y directorios mínimos requeridos.

El estándar FHS está enfocado a:

o Fabricantes de software independiente y creadores de sistemas operativos,

para que establezcan una estructura de ficheros lo más compatible posible.

o Usuarios comunes, para que entiendan el significado y el contendido de cada

uno de los elementos del sistema de archivos.

Además, FHS manifiesta algunas diferencias entre varios tipos de archivos que puede
haber en el sistema:

o Archivos compartibles y no compartibles.

Ficheros que son propios de un host determinado y, archivos que pueden compartirse
entre diferentes host.

Ejemplo:

o Archivos compartibles: los contenidos en /var/www/html (que es el
DocumentRoot por defecto del servidor Web Apache. Donde se
almacena inicialmente el index.html de bienvenida).

o Archivos no compartibles: los contenidos en /boot/grub/ (Subdirectorio

donde se ubican los ficheros del gestor de arranque GRUB).

o Archivos estáticos y variables.

Ficheros que no cambian sin la interacción de un administrador del sistema y, archivos
que cambian sin la interacción de un administrador del sistema.

Para comprender mejor estos dos tipos, imaginemos los ficheros log (archivos de
bitácora) del sistema. Estos cambian sin la intervención del administrador; en
consecuencia estos son del tipo variables.

Los demás archivos son estáticos. No cambian su contenido ni tamaño a menos que lo
autorice el administrador del sistema (o sea el propio quien lo modifique, por
supuesto).

 Archivos estáticos: /etc/password, /etc/shadow.

 Archivos variables: /var/log/messages (log de mensajes generados por el

kernel del sistema).



3.- Todo en Linux es un archivo

Todo en un sistema Linux es un archivo, tanto el Software como el Hardware. Desde el
ratón, pasando por la impresora, el reproductor de DVD, el monitor, un directorio, un
subdirectorio y un fichero de texto.

De ahí vienen los conceptos de montar y desmontar por ejemplo un CDROM.

El CDROM se monta como un subdirectorio en el sistema de archivos. En ese
subdirectorio se ubicará el contenido del disco compacto cuando esté montado y, nada
cuando esté desmontado.

Para ver que tenemos montado en nuestra distribución GNU/Linux, podemos ejecutar
el comando mount.

Este concepto es muy importante para conocer como funciona Linux.

NOTA: podemos acceder a los dispositivos Hardware como si fueran archivos.
Realmente son ficheros para Linux; pero no son archivos normales, son archivos
binarios (o .exe para los que vengan de Windows).

Hay que saber que si editamos, por ejemplo, un fichero vinculado a un elemento

Hardware, seguramente sea totalmente ilegible y posiblemente quedará inutilizable y
bloqueada nuestra línea de comandos (shell). Es más, corremos el riesgo de corromper
los datos y dejar el sistema inestable.

En definitiva, no es aconsejable leer o abrir y mucho menos modificar archivos
vinculados a elementos Hardware y/o dispositivos, a menos que sepamos con toda
seguridad lo que estemos haciendo.



4.- Organización de sistema de archivos según FHS

4.1.- El directorio raíz

Todo surge a partir del directorio raíz (/).

El contenido de este directorio debe ser el adecuado para reiniciar, restaurar,
recuperar y/o reparar el sistema, es decir, debe proporcionar métodos, herramientas y
utilidades necesarias para cumplir estas especificaciones.

Además, es deseable que se mantenga los más razonablemente pequeño como sea
posible por cuestión de funcionamiento y de seguridad.

Por último, este debe que ser el único directorio en el nivel superior del árbol
jerárquico de archivos y, tiene que ser imposible moverse más allá del mismo.

Es el último origen.

Vemos, por ejemplo, un listado de su estructura:



Contenido del directorio raíz

/bin



En este directorio se ubica el código binario o compilado de los programas y comandos
que pueden utilizar todos los usuarios del sistema.

La denominación es clara, bin de BINARY (binario en castellano).

No debe haber subdirectorios en /bin.

Estos son, por ejemplo, algunos comandos contenidos en /bin.

* La @ al lado del nombre de un fichero representa un enlace simbólico



/boot

Este directorio contiene todo lo necesario para que funcione el proceso de arranque
del sistema.

/boot almacena los datos que se utilizan antes de que el kernel comience a ejecutar
programas en modo usuario*.

El núcleo del sistema operativo (normalmente se guarda en el disco duro como un
fichero imagen llamado vmlinuz-versión _ núcleo) se debe situar en este directorio o,
en el directorio raíz.

*El núcleo tiene la capacidad de crear dos entornos o modos de ejecución totalmente

separados.

Uno de ellos está reservado para el propio kernel, denominado el “modo núcleo”; y el
otro está reservado para el resto de programas, llamado el “modo usuario”.

Realmente se crean dos entornos totalmente separados, es decir, cada uno tiene su
propia zona de memoria y procesos independientes.

Démonos cuenta que esta técnica ofrece mucha seguridad y estabilidad al sistema.

Cuando un proceso del “modo usuario” necesita recursos del “modo kernel” (por
ejemplo, acceder a la memoria USB) se hacen uso de las “famosas” llamadas al sistema
(interface que ofrece el núcleo para la comunicación del modo usuario con el modo
kernel).

Vemos su contenido:



/dev



Este directorio almacena las definiciones de todos los dispositivos. Como se ha
mencionado, cada dispositivo tiene asociado un archivo especial.

Por ejemplo, el contenido de la sexta partición del disco duro será /dev/hda5.

El fichero asociado al ratón tipo PS/2 será /dev/psaux.

Además, es importante saber que los dispositivos pueden ser de bloque o de carácter.

Normalmente los dispositivos de bloque son los que almacenan datos y, los de carácter
los que transfieren datos.

En definitiva, la estructura de este directorio es algo complejo. Podríamos dedicar otro
artículo entero para poder explicar en profundidad el contenido y funcionamiento
especifico del directorio /dev. De momento nos vasta con saber que Linux lo utiliza
para asociar dispositivos (devices) con ficheros.

/etc

El directorio /etc contiene archivos necesarios para confi
  • Links de descarga
http://lwp-l.com/pdf13584

Comentarios de: La estructura del sistema de archivos en Linux - Sistemas Operativos II (1)

Imágen de perfil
26 de Septiembre del 2018
estrellaestrellaestrellaestrellaestrella
Muy interesante!!!
Responder

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad