3.1.11 Creare i filesystem
3.1.11.1 Partizionare il disco rigido
Per limitare i danni in caso di blocco del sistema, preferisco tenere
partizioni diverse per directory diverse. Per esempio,
/ == (/ + /boot + /bin + /sbin)
== 50MB+
/tmp == 100MB+
/var == 100MB+
/home == 100MB+
/usr == 700MB+ con X
/usr/local == 100MB
Le dimensioni della directory /usr
dipendono strettamente dal tipo
di applicazione X window. /usr
pu� essere di soli 300MB per la
sola console, mentre 2GB–3GB non sono inusuali se si vogliono installare
varie applicazioni di Gnome. Quando /usr
diventa troppo grande,
la cura pi� efficace � spostare /usr/share/
in una partizione
diversa. Con i nuovi kernel 2.4 pre-impacchettati, /
pu� avere
bisogno di pi� di 200MB di spazio.
Per esempio, la configurazione attuale della mia macchina che funge da Internet
gateway, � la seguente (output del comando df -h):
Filesystem Size Used Avail Use% Mounted on
/dev/hda3 300M 106M 179M 38% /
/dev/hda7 100M 12M 82M 13% /home
/dev/hda8 596M 53M 513M 10% /var
/dev/hda6 100M 834k 94M 1% /var/lib/cvs
/dev/hda9 596M 222M 343M 40% /usr
/dev/hda10 596M 130M 436M 23% /var/cache/apt/archives
/dev/hda11 1.5G 204M 1.2G 14% /var/spool/squid
(Le grosse dimensioni di /var/spool/squid
sono per la funzione di
proxy cache e per lo scarico dei pacchetti).
Per dare un'idea della struttura delle partizioni, il seguente � il risultato
di fdisk -l:
# fdisk -l /dev/hda # commenti
/dev/hda1 1 41 309928+ 6 FAT16 # DOS
/dev/hda2 42 84 325080 83 Linux # (not used)
/dev/hda3 * 85 126 317520 83 Linux # Main
/dev/hda4 127 629 3802680 5 Extended
/dev/hda5 127 143 128488+ 82 Linux swap
/dev/hda6 144 157 105808+ 83 Linux
/dev/hda7 158 171 105808+ 83 Linux
/dev/hda8 172 253 619888+ 83 Linux
/dev/hda9 254 335 619888+ 83 Linux
/dev/hda10 336 417 619888+ 83 Linux
/dev/hda11 418 629 1602688+ 83 Linux
Ci sono alcune partizioni inutilizzate. Queste servono per installare una
seconda distribuzione di Linux, o come spazio per espandere qualche directory
in crescita.
3.1.11.2 Montare i filesystem
Il montaggio appropriato delle partizioni avviene mediante il seguente
/etc/fstab
:
# /etc/fstab: static file system information.
#
# filesystem mount point type options dump pass
/dev/hda3 / ext2 defaults,errors=remount-ro 0 1
/dev/hda5 none swap sw 0 0
proc /proc proc defaults 0 0
/dev/fd0 /floppy auto defaults,user,noauto 0 0
/dev/cdrom /cdrom iso9660 defaults,ro,user,noauto 0 0
#
# mantenete le partizioni separate
/dev/hda7 /home ext2 defaults 0 2
/dev/hda8 /var ext2 defaults 0 2
/dev/hda6 /var/lib/cvs ext2 defaults 0 2
# noatime accelera l'accesso ai file in lettura
/dev/hda9 /usr ext2 defaults,noatime 0 2
/dev/hda10 /var/cache/apt/archives ext2 defaults 0 2
# una partizione molto grande come proxy cache
/dev/hda11 /var/spool/squid ext2 rw 0 2
# DOS avviabile di backup
/dev/hda1 /mnt/dos vfat rw,noauto 0 0
# Linux avviabile di backup (non ancora fatto)
/dev/hda2 /mnt/linux ext2 rw,noauto 0 0
#
# nfs mounts
mickey:/ /mnt/mickey nfs ro,noauto,intr 0 0
goofy:/ /mnt/goofy nfs ro,noauto,intr 0 0
# minnie:/ /mnt/minnie smbfs ro,soft,intr,credentials={filename} 0 2
Per NFS, uso qui le opzioni noauto,intr combinate con quella di
default hard. In tal modo, un processo che si blocca in seguito
alla perdita di connessione pu� essere recuperato mediante Control-C.
Usare rw,auto,soft,intr per macchine Windows connesse tramite
Samba (smbfs), pu� essere una buona idea. Vedere Configurare Samba, Sezione 3.5.
Per i floppy, utilizzare noauto,rw,sync,user,exec previene la
corruzione dei file in caso di rimozione accidentale del disco prima di averlo
smontato, per� rallenta il processo di scrittura.
3.1.11.3 Montaggio con autofs
Punti chiave per il montaggio automatico (auto mount):
-
Caricare il modulo vfat per permettere a
/etc/auto.misc
di contenere -fstype=auto:
# modprobe vfat # prima del tentativo di accedere al floppy
... oppure automatizzate il processo,
# echo "vfat" >> /etc/modules
... e riavviate il sistema.
-
Impostate /etc/auto.misc
come segue:
floppy -fstype=auto,sync,nodev,nosuid,gid=100,umask=000 :/dev/fd0
... dove gid=100 � "users".
-
Create i collegamenti in /home/user
, cdrom
e floppy
, che puntino a /var/autofs/misc/cdrom
e
/var/autofs/misc/floppy
, rispettivamente.
-
Rendete user membro del gruppo "users".
3.1.11.4 Montaggio del NFS
Il server esterno NFS (goofy) risiede dietro un firewall (gateway). Dato che
sono l'unico ad usarla, ho delle regole di sicurezza sulla LAN molto rilassate.
Per abilitare l'accesso NFS, il server NFS necessita di aggiungere
/etc/exports come segue:
# /etc/exports: lista di controllo degli accessi per filesystem che possono
# essere esportati ai client NFS. Vedere exports(5).
/ (rw,no_root_squash)
Ci� � richiesto per attivare il server NFS, in aggiunta all'installazione e ad
attivazione del server/client NFS.
Per semplicit�, in genere creo un partizione singola di circa 2GB per
installazioni sperimentali e/o secondarie di linux. Opzionalmente condivido le
partizioni di swap e /tmp
. Per questi scopi lo schema a
partizioni multiple � eccessivo. Se vi serve un semplice sistema a console,
bastano 500MB.