6.5. Creación de los directorios

Es hora de crear cierta estructura en el sistema de ficheros LFS. Crea un árbol de directorios estándar ejecutando los siguientes comandos:

mkdir -pv /{bin,boot,etc/opt,home,lib,mnt,opt}
mkdir -pv /{media/{floppy,cdrom},sbin,srv,var}
install -dv -m 0750 /root
install -dv -m 1777 /tmp /var/tmp
mkdir -pv /usr/{,local/}{bin,include,lib,sbin,src}
mkdir -pv /usr/{,local/}share/{doc,info,locale,man}
mkdir -v  /usr/{,local/}share/{misc,terminfo,zoneinfo}
mkdir -pv /usr/{,local/}share/man/man{1..8}
for dir in /usr /usr/local; do
  ln -sv share/{man,doc,info} $dir
done
mkdir -v /var/{lock,log,mail,run,spool}
mkdir -pv /var/{opt,cache,lib/{misc,locate},local}

Los directorios se crean por defecto con los permisos 755, pero esto no es deseable para todos los directorios. En los comandos anteriores se hacen dos cambios: uno para el directorio personal de root y otro para los directorios de los ficheros temporales.

El primer cambio nos asegura que nadie aparte de root pueda entrar en el directorio /root, lo mismo que debería hacer un usuario normal con su directorio personal. El segundo cambio nos asegura que cualquier usuario pueda escribir en los directorios /tmp y /var/tmp, pero no pueda borrar los ficheros de otros usuarios. Esto último lo prohibe el llamado “bit pegajoso” (sticky bit), el bit más alto (1) en la máscara de permisos 1777.

6.5.1. Nota de conformidad con FHS

El árbol de directorios está basado en el Estándar de la Jerarquía del Sistema de Ficheros (FHS, disponible en http://www.pathname.com/fhs/). En adición al FHS creamos enlaces simbólicos de compatibilidad para los directorios man, doc y info, pues muchos paquetes todavía intentan instalar su documentación en /usr/<directorio> o /usr/local/<directorio> en vez de en /usr/share/<directorio> o /usr/local/share/<directorio>. El FHS también estipula la existencia de /usr/local/games y /usr/share/games.Como sobre la estructura del subdirectorio /usr/local/share el FHS no es preciso, creamos aquí sólo los directorios que son necesarios. Sin embargo, eres libre de crear esos directorios si prefieres cumplir estríctamente con el FHS.