Creazione delle directory

Ora creiamo alcune strutture nel nostro sistema LFS. Creiamo un albero di directory. Inserendo i seguenti comandi creeremo un albero più o meno standard:

mkdir -p /{bin,boot,dev/{pts,shm},etc/opt,home,lib,mnt,proc}
mkdir -p /{root,sbin,srv,tmp,usr/local,var,opt}
mkdir -p /media/{floppy,cdrom}
mkdir /usr/{bin,include,lib,sbin,share,src}
ln -s share/{man,doc,info} /usr
mkdir /usr/share/{doc,info,locale,man}
mkdir /usr/share/{misc,terminfo,zoneinfo}
mkdir /usr/share/man/man{1,2,3,4,5,6,7,8}
mkdir /usr/local/{bin,etc,include,lib,sbin,share,src}
ln -s share/{man,doc,info} /usr/local
mkdir /usr/local/share/{doc,info,locale,man}
mkdir /usr/local/share/{misc,terminfo,zoneinfo}
mkdir /usr/local/share/man/man{1,2,3,4,5,6,7,8}
mkdir /var/{lock,log,mail,run,spool}
mkdir -p /var/{tmp,opt,cache,lib/misc,local}
mkdir /opt/{bin,doc,include,info}
mkdir -p /opt/{lib,man/man{1,2,3,4,5,6,7,8}}

Le directory sono, per default, create con il permesso in modalità 755, ma questo non è desiderabile per tutte le directory. Faremo due cambiamenti: uno alla directory home di root e un altro alle directory per i file temporanei.

chmod 0750 /root
chmod 1777 /tmp /var/tmp

Il primo cambiamento di modalità assicura che non tutti possano entrare nella directory /root: un utente normale fa lo stesso sulla sua home directory. Il secondo cambio di modalità assicura che tutti gli utenti possano scrivere nelle directory /tmp e /var/tmp, ma non possano rimuovere da questa i file di altri utenti. L'ultimo è proibito dal cosiddetto “sticky bit”, il bit più alto nella maschera 1777.

Nota sulla conformità a FHS

Abbiamo basato il nostro albero directory sullo standard FHS (disponibile su http://www.pathname.com/fhs/). Oltre all'albero creato sopra questo standard prevede anche l'esistenza di /usr/local/games e /usr/share/games, ma questo non ci piace molto per un sistema di base. Ad ogni modo, sentitevi liberi di rendere il vostro sistema conforme a FHS. Per la struttura della sottodirectory /usr/local/share FHS non è molto preciso, così abbiamo creato le directory che abbiamo ritenuto necessarie.