Debe introducir al menos 3 caracteres en el buscador.
Inicio / Wikis / Monografías / Linux y el FHS / Estructura del sistema de ficheros en GNU/Linux - Requerimientos

Linux y el FHS / Estructura del sistema de ficheros en GNU/Linux - Requerimientos

 ----- 
CopyLeft Monografía de Reynaldo H. Verdejo Pinochet - 02 de Marzo de 2006
Temas Relacionados: GNU
5. Requerimientos

5.1 Requerimientos


/bin no puede contener subdirectorios, los siguientes comandos binarios o links a los mismos DEBEN encontrarse en /bin:

  • cat
  • chgrp
  • chmod
  • chown
  • cp
  • date
  • dd
  • df
  • dmesg
  • echo
  • false
  • hostname
  • kill
  • ln
  • login
  • l s
  • mkdir
  • mknod
  • more
  • mount
  • mv
  • ps
  • pwd
  • rm
  • rmdir
  • sed
  • sh (no la real, un link)
  • stty
  • su
  • sync< item>true
  • umount
  • uname

5.2 Opciones específicas


Pueden existir y en tal caso deben estar en bin (pueden ser links)

  • csh
  • ed
  • tar
  • cpio
  • gzip
  • gunzip
  • zcat
  • netstat
  • ping

6. /boot


Contiene datos asociados a la tarea de arrancar el sistema, tienen el caracter de `estaticos` y son operados por el gestor de arranque (lilo, grub, etc) cabe hacer notar que el `map installer` y los archivos de configuración del arranque NO pueden estar en /boot 6.1 Opciones específicas

El kernel del sistema operativo DEBE estar en / o en /boot

7. /dev


Archivos de dispositivo, como bien haz de saber unix fue diseñado con una serie de ideas explícitas en mente, una de las cuales imponia : “todo es un archivo”, es en /dev donde reside un gran numero de archivos que representan dispositivos de hardware. 7.1 Opciones específicas

Es posible que los descriptores de dispositivo de /dev deban ser creados manualmente, en ese caso, debe existir un comando llamado MAKEDEV en este mismo directorio, que sea capaz de crearlos en caso de ser requeridos. (puede existir tb un MAKEDEV.local, para cualquier dispositivo local)

8. /etc


Aqui residen los archivos de configuración del sistema, son usados por el administrador y/o otros programas para almacenar y leer datos que alteran de una u otra forma su funcionamiento.

8.1 Requerimientos


No pueden existir binarios en /etc

Se requiere la existencia de el directorio /etc/opt para los datos de configuracion de /opt

8.2 Opciones especificas


En caso de estar instalados los subsistemas asociados, los siguientes directorios DEBEN residir en /etc

  • X11
  • sgml

Los siguientes archivos deben resisdir en /etc en caso de estar instalados los subsistemas asociados, todos opcionales.

  • csh.login
  • exports
  • fstab
  • ftpusers
  • gateways
  • gettydefs
  • group
  • host.conf
  • hosts
  • hosts.allow
  • hosts.deny
  • hosts.equiv
  • hosts.lpd
  • inetd.conf
  • inittab
  • issue
  • ld.so.conf
  • motd
  • mtab
  • mtools.conf
  • networks
  • passwd
  • printcap
  • profile
  • protocols
  • resolv.conf
  • rpc
  • securetty
  • services
  • shells
  • syslog.conf

9. /lib


Contiene librerias esenciales para ejecutar los binarios de /bin y /sbin , contiene también, en caso de existir, los modulos del kernel

9.1 Requerimientos


Por lo menos uno de cada uno de los siguientes archivos o link a los mismos debe existir.

  • libc.so.*
  • ld*

10. /mnt


Puntos de montaje temporal para otros sistemas de archivos

11. /opt


Contiene paquetes de software opcional

12. /sbin


Contiene binarios de sistema esenciales para el funcionamiento del mismo, un ejemplo son los comandos insmod y rmmod que sirven para instalar y remover modulos en el kernel respectivamente.

12.1 Requerimientos


shutdown DEBE existir y residir en /sbin

12.2 Opciones específicas


Los siguientes archivos deben residir en sbin en caso de que sus respectivos subsistemas se encuentren instalados.

  • fastboot
  • fasthalt
  • fdisk
  • fsck
  • fsck.*
  • getty
  • halt
  • ifconfig
  • init
  • mkfs
  • mkfs.*
  • mkswap
  • reboot
  • route
  • swapon
  • swapoff
  • update

13. /tmp


Contiene archivos temporales, creados por programas o usuarios mientras realizan otras funciones.

14. /usr


Esta jerarquia es la segunda en importancia y en nivel de complejidad, contiene datos `compartibles` y de solo lectura, los paquetes de software muy grandes no deben usar un subdirectorio directamente sobre /usr (como parecen creer algunos malos programadores/empaquetadores)

14.1 Requerimientos


Los siguientes directorios o links a los mismos deben existir y residir en /usr.

  • bin
  • include
  • lib
  • local
  • sbin
  • share

14.2 Opciones Especificas


Los siguientes directorios pueden existir y DEBEN residir en /usr en caso de estar instalados sus subsistemas asociados:

  • X11R6 (contiene su propia jerarquia, no discutida en este documento)
  • games
  • lib
  • src

14.3 Opciones para compatibilidad


Los siguientes enlaces simbólicos pueden existir para guardar la compatibilidad con sistemas mas antiguos, hasta que todos aprendan a usar /var

  • /usr/spool ? /var/spool
  • /usr/tmp ? /var/tmp
  • /usr/spool/locks ? /var/lock

14.4 Opciones específicas para /usr/bin


/usr/bin contiene binarios que no son necesarios cuando el sitema esta operando en modo `monousario` (single user mode), los siguientes directorios o links a los mismos pueden existir y DEBEN residir en /usr/bin si sus subsistemas correspondientes se encuentran instalados.

  • mh (comandos para el sistema manejador de mails)
  • /usr/bin/X11

    Debe ser un link a /usr/X11R6/bin en caso de que este ultimo este instalado

Los siguientes archivos o links a los mismos pueden existir y en ese caso DEBEN residir en /usr/bin si sus correspondientes subsistemas se encuentran instalados

  • perl
  • python
  • tclsh
  • wish
  • expect

14.5 La jeraquía /usr/local


La jerarquia /usr/local debe ser usada por el administrador de sistemas cuando instala software localmente, debe estar protegida de manera que no sea afectada por upgrades al software de sistema, puede ser usada para compartir programas y/o datos con otros host. Requerimientos

Los siguientes directorios o links a los mismos deben encontrarse en /usr/local.

  • bin
  • games
  • include
  • lib
  • man
  • sbin
  • share
  • src

Opciones específicas

en caso de existir /usr/lib y/o /lib sus equivalentes deben existir también en /usr/local

14.6 /usr/sbin


Aqui deben estar los binarios no esenciales que solo usará el administrador de sistemas /usr/share

Destinado a almacenar datos que son independientes de la arquitectura del host (ojo, solo lectura), diseñado de manera de ser compartido con otros

host de la red en caso de existir esta necesidad y/o posibilidad.

Se recomienda que cualquier programa que necesite guardar datos que no son modificables, lo haga bajo subdirectorios de /usr/share (o en /usr/local/share si esta instalado localmente).

Los datos de juegos y/o programas educacionales en /usr/share/games deben ser datos estáticos, para cualquier otro tipo (puntuaciones, etapas, etc ) se debe usar /var/games Requerimientos

Los siguientes directorios o links a los mismos deben encontrarse en /usr/sh are

  • man
  • misc

Opciones específicas

Los siguientes directorios pueden existir y DEBEN residir en /usr/share en c aso que sus subsistemas especificos se encuentren instalados

  • dict
  • docs
  • games
  • info
  • locale
  • nls
  • sgml
  • terminfo
  • tmac
  • zoneinfo

15. /var


Contiene solo datos de caracter variable, en esta categoría estan especialmente incluidos los archivos y directorios de `spooling` (mail, impresi on) y los archivos y directorios de `logging` (mensajes del kernel, mensajes de los

servidores, etc)

La naturaleza de algunos archivos y directorios de var los hacen `no compartibles`, por ejemplo.

  • /var/lock
  • /var/log
  • /var/run

Otros pueden ser perfectamente compartidos; por nombrar algunos:

  • /var/mail
  • /var/cache/man
  • /var/cache/fonts
  • /var/spool/news

Se recomienda a las aplicaciones no crear directorios directamente sobre /var, una posible excepción a esta regla podrian constituirla los archivos que tienen implicaciones para todo el sistema (seguiría siendo en todo caso, una violación a los estandares de no existir previa consulta y acuerdo con las listas de correo del FHS)

15.1 Requerimientos


Los siguientes directorios o links a los mismos deben existir en /var

  • cache
  • lib
  • local
  • lock
  • log
  • opt
  • run
  • spool
  • tmp

Se debe hacer notar que en /var existen directorios `reservados` que no deben ser usados por ninguna nueva aplicación pues generaría prob lemas con programas `historicos` o de practica local, estos son:

  • backups
  • cron
  • msgs
  • preserve

  A la fecha de publicación de esta version del standard (Mayo del 2001) los `system crash dumps`) no estaban soportados en Linux   /var/lib contiene datos que son modificados directamente p or los programas mientras estos se ejecutan

15.2 Opciones específicas


Los siguientes directorios o links a los mismos pueden existir y DEBEN residir en /var siempre que sus subsistemas correspondientes se encuentren instalados:

  • account
  • crash
  • games
  • mail
  • yp

16. Opcionales


Los siguientes deben estar presentes en un sistema solo si la orientació n del mismo lo requiere provisto que cada uno contenga o apunte a una dirección que contenga los datos asociados a los mismos

16.1 /root


Directorio `home` para el administrador del sistema.

16.2 /home


Debe contener los directorios home de los usuarios normales del sistema

16.3 /lib


Formato alternativo para librerias compartidas esenciales, en sistemas que soporten mas de un formato de binarios, requiriendo por ende, librerias separadas.

17. Recomendaciones especificas para GNU/Linux


El estandar discutido en este breve documento es aplicable a toda la gama de sistemas basados en unix actualmente en desarrollo, pues bien a pesar de ser GNU/Linux uno de los más populares, no es el único y el estandar necesita adaptar algunas de sus reglas para satisfacer a cada una de las variantes significativas, he aqui entonces las excepciones aplicables a GNU/Linux.

17.1 directorio raiz (/)


El estandar recomienda a los usarios y desarrolladores que, de existir un kernel en el directorio raiz, este tome alguno de estos dos nombres:

  • vmlinux
  • vmlinuz

Estos nombres estan siendo actualmente utilizados en los paquetes fuentes del kernels mas recientes.

17.2 /bin binarios de los comandos de uso esencial


Los sistemas GNU/Linux que lo requieran, deben poner el programa (comando, bina rio) `setserial` en este directorio.

17.3 /dev Archivos de dispositivo


todos los archivos de dispositivo y archivos especiales de /dev deben, en un sistema GNU/Linux, complir con lo establecido en el documento, “Linux Allocated Devices” (Linux, dispositivos reservados), mantenido por H. Peter Anvin esta simple regla también es aplicable a los enlac es simbólicos que puedan residir en este directorio.

17.4 /etc Archivos de configuracion del host


Se permite a los sistemas GNU/Linux que lo requieran, ubicar en esta carpeta al archivo de configuración del gestor de arranque `lilo.conf` (lilo)

17.5 /proc Sistema de archivos virtual de información de procesos y el kernel


El sistema de archivos /proc es la ubicación estandar de la información del sistema y los procesos en ejecución en GNU/Linux, se recomienda su uso a desarrolladores y usarios por sobre /proc/kmem y otros métodos.

17.6 /sbin Binarios `esenciales` de sistema


Los sistemas GNU/Linux que lo requieran pueden ubicar los siguientes binarios extras en este directorio.
Autor y licencia de 'Linux y el FHS / Estructura del sistema de ficheros en GNU/Linux - Requerimientos'
Reynaldo H. Verdejo Pinochet Extraído de: http://www.tux.cl/doku.php?id=articulos:linux:linux_y_el_fhs_-_estructura_del_sistema_de_ficheros_en_gnu_linux CopyLeft
Copyleft 2000-2006 Tux.cl
Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.

Wikis relacionados con 'Linux y el FHS / Estructura del sistema de ficheros en GNU/Linux - Requerimientos'

Este documento pretende introducir al usuario de GNU/Linux el conjunto de directrices establecidas por el... Más »
En este artículo nos ocupamos en primer lugar, someramente, de los síntomas de crisis... Más »
Este documento describe cómo usar el sistema de spooling para impresoras de líneas que provee... Más »
Un sistema informático utiliza ordenadores para almacenar datos, procesarlos y ponerlos a disposición de quien... Más »
El sistema inmune es el sistema de defensa que tienen los organismos superiores. Es un... Más »
¿Estás seguro de que deseas eliminar este capítulo?