Avanti Indietro Indice

5. Principi base

5.1 Introduzione

Umsdos mappa i file Linux direttamente in file Ms-DOS. Questa è l'unica trasformazione. Il contenuto dei file non è assolutamente modificato. Umsdos lavora solo sui nomi. Per file speciali (link e dispositivi per esempio) è introdotta una gestione speciale.

Per ogni directory c'è un file chiamato --linux-.---.

5.2 Umsdos può sostituire il filesystem Ms-DOS.

L'Umsdos è un superset per usi generali del filesystem Ms-DOS di Linux. In effetti questa capacità e flessibilità crea molta confusione su Umsdos. Vediamo il perché. Provate a montare un floppy appena formattato DOS come qui.

mount -t umsdos /dev/fd0 /mnt

E scrivere questo:

ls / >/mnt/LONGFILENAME
ls -l /mnt

Si otterrà il seguente risultato

-rwxr-xr-x   1 root     root          302 Apr 14 23:25 longfile

Sembra che il filesystem Umsdos non sia molto di più (in realtà non proprio) del normale filesystem Ms-DOS di Linux.

5.3 Promozione di directory

Qui sta il trucco. Finché non si promuove una directory DOS, essa verrà gestita allo stesso modo sia dal filesystem Ms-DOS che dal filesystem Umsdos. Umsdos usa uno speciale file in ogni subdirectory per registrare le traduzioni tra le capacità estese (nomi lunghi, proprietari ecc.) del filesystem Umsdos e i limiti di Ms-DOS. Questo file è invisibile agli utenti Umsdos, ma visibile quando si avvia DOS. Per evitare di ingombrare la partizione DOS con questi file (--linux-.---) non utilizzati, il file è ora opzionale. Se assente, Umsdos diventa simile a Ms-DOS.

Quando una directory è promossa, ogni operazione verrà fatta con la piena semantica normalmente disponibile agli utenti Unix e Linux. E tutte le subdirectory create successivamente saranno silenziosamente promosse.

Questa caratteristica permette di organizzare logicamente la partizione DOS in zone DOS e zone Linux. È importante capire che questi file --linux-.--- occupano spazio (generalmente 2k per directory). Il DOS generalmente usa cluster larghi (grandi 16k per partizioni da 500 Mb), quindi evitare di mettere --linux-.--- ovunque permette di guadagnare spazio.

5.4 Come promuovere: /sbin/umssync

Una directory può essere promossa in ogni momento usando /sbin/umssync. Promuovere una directory significa fare le seguenti operazioni

/sbin/umssync mantiene un esistente file --linux-.---. Non lo crea da zero ogni volta. Semplicemente aggiunge le informazioni mancanti (file creati durante una sessione DOS). Esso rimuove anche i file che non esistono più nella directory DOS da --linux-.---. umssync prende il nome da questo. Esso sincronizza --linux-.--- con la sottostante directory DOS.

5.5 Usare /sbin/umssync all'avvio

È una buona idea mettere una chiamata a /sbin/umssync alla fine del file /etc/rc.d/rc.S se non c'è già. Il comando seguente è adeguato per molti sistemi:

/sbin/umssync -r99 -c -i+ /

L'opzione -c previene umssync dal promuovere directory. Esso aggiorna solamente i --linux-.--- esistenti.

Questo comando è utile se si accede alla directory Linux durante una sessione DOS. Linux non ha mezzi efficienti per capire che una directory è stata modificata da DOS, così Umsdos non può fare l'operazione umssync quando necessario.

5.6 Come UN-promuovere

Rimuovere il file --linux-.--- usando il DOS. Tutto qui.

5.7 Cosa succede con i file creati durente una sessione DOS?

Finché non si usa umssync su una directory dove i file sono stati aggiunti o rimossi da DOS, si noteranno alcuni problemi:


Avanti Indietro Indice