Provided by:
manpages-it_0.3.4-5_all 
NOME
Mtools - collezione di programmi per manipolare file MSDOS
SINTASSI
mattrib - cambia gli attributi di un file MSDOS
mbadblocks - verifica un dischetto, e segna i blocchi erronei nella FAT
mcd - cambia la directory MSDOS
mcopy - copia file da MSDOS a Unix e viceversa
mdel - cancella un file MSDOS
mdir - mostra una directory MSDOS
mformat - aggiunge un file system MSDOS a un dischetto formattato
a basso livello
mlabel - crea l’etichetta su un disco MSDOS
mmd - crea una subdirectory MSDOS
mmount - monta un disco MSDOS
mrd - rimuove una subdirectory MSDOS
mmove - sposta o rinomina un file o una subdirectory MSDOS
mren - rinomina un file MSDOS già esistente
mtype - mostra il contenuto di un file MSDOS
mtest - verifica e mostra la configurazione
DESCRIZIONE
Gli Mtools sono una collezione di programmi di pubblico dominio che
permettono a tutti i sistemi Unix di leggere, scrivere e manipolare
file su un file system MSDOS (tipicamente un dischetto). Ove sia
necessario, ogni programma prova a simulare l’equivalente comando
MSDOS. Non sono comunque simulate restrizioni e stranezze del DOS. Ad
esempio, è possibile spostare subdirectory da una subdirectory ad
un’altra.
Opzionalmente, i nomi di file MSDOS possono essere composti dalla
lettera del drive, seguita da un due punti, una subdirectory e un nome
di file. Nomi di file privi della lettera del drive fanno riferimento a
file Unix. Nei nomi delle subdirectory si può usare come separatore sia
’/’ che ’\’. L’uso del separatore ’\’ o di metacaratteri potrebbe
richiedere che i nomi siano racchiusi fra virgolette per proteggerli
dalla shell (N.B.: i metacaratteri nei nomi di file Unix non dovrebbero
essere racchiusi tra virgolette, poiché in questo caso si vuole che la
shell le espanda).
DIFFERENZE CON MSDOG
Le routine di corrispondenza dei modelli delle espressioni regolari
seguono le regole di stile Unix. Per esempio, ’*’ indica tutti i file
MSDOS al posto di ’*.*’. Gli attributi archive, hidden, read-only e
system vengono ignorati durante le corrispondenze.
Tutte le opzioni usano il flag ’-’ (meno), e non ’/’ come ci si aspetta
dall’MSDOS.
Molti degli Mtools permettono di specificare più nomi di file come
parametri, il che non segue le convenzioni dell’MSDOS, ma è più user-
friendly.
DIRECTORY DI LAVORO
Il comando mcd è usato per stabilire il dispositivo e la directory di
lavoro corrente (relativa ad un file system MSDOS), altrimenti di
default viene assunto A:/. Comunque, diversamente da MSDOS, c’è una
sola directory di lavoro, e non una per disco.
Nomi di file lunghi in stile VFAT
Questa versione degli Mtools supporta i nomi di file lunghi in stile
VFAT. Se un nome di file Unix è troppo lungo per stare nel nome DOS
corto, è salvato come un nome lungo VFAT, ed è generato un nome corto
di supporto. Questo nome corto è quello che si vedrà esaminando il
disco con una versione del DOS precedente alla 7.0.
La seguente tabella mostra alcuni esempi di nomi corti:
Nome Unix Nome MSDOS Motivo della modifica
-----------------------------------------------------------
thisisatest THISISAT nome di file troppo lungo
alain.knaff ALAIN.KNA estensione troppo lunga
prn.txt XRN.TXT PRN è il nome di un dispositivo
.abc X.ABC nome di file vuoto
hot+cold HOTXCOLD carattere illegale
Il nome di file iniziale in stile Unix (sia lungo che corto) è
anche detto nome primario, e il nome di file corto derivato è
anche detto nome secondario.
Esempi:
mcopy /etc/motd a:Reallylongname
L’Mtools crea una voce VFAT per Reallylongname, e usa REALLYLO
come nome corto. Reallylongname è il nome primario, e REALLYLO e
il nome secondario.
mcopy /etc/motd a:motd
motd ci sta dentro i limiti dei nomi di file MSDOS. L’Mtools non
ha bisogno di derivare un’altro nome: motd è il nome primario, e
non c’è il nome secondario.
In parole povere: il nome primario è il nome lungo, se esiste,
oppure il nome corto se non c’è il nome lungo.
COLLISIONE FRA NOMI
Quando si scrive un file su disco, il suo nome lungo (nome primario) o
il suo nome corto potrebbe coincidere con quello di un file o di una
directory esistenti. Ciò può succedere con tutti i comandi che creano
nuove voci in una directory: mcopy, mmd, mren, mmove, mwrite e mread.
Quando avviene una collisione fra i nomi, l’Mtools chiede cosa deve
fare. Sono possibili diverse scelte:
overwrite
Sovrascrive il file esistente. Non è possibile sovrascrivere una
directory con un file.
rename Rinonima il nuovo file creato. L’Mtools chiederà il nuovo nome
per il file.
autorename
Rinomina il nuovo file creato. L’Mtools sceglierà da solo il
nome, senza chiedere niente.
skip Tralascia questo file, e passa al successivo (se c’è).
Per scegliere una opzione si immetta la sua iniziale al prompt. Se
viene inserita una minuscola l’opzione sarà applicata solo al file in
esame, mentre se si preme una maiuscola l’opzione verrà applicata a
tutti i file.
È possibile scegliere le opzioni (per tutti i file) dalla riga di
comando, quando si lancia un Mtools:
-o Sovrascrive di default il nome primario.
-O Sovrascrive di default il nome secondario.
-r Rinomina di default il nome primario.
-R Rinomina di default il nome secondario.
-a Automaticamente rinomina di default il nome primario.
-A Automaticamente rinomina di default il nome secondario.
-s Tralascia di default il nome primario.
-S Tralascia di default il nome secondario.
-m Chiede all’utente cosa fare con il nome primario.
-M Chiede all’utente cosa fare con il nome secondario.
Di default, l’utente viene interrogato nel caso di una collisione fra
nomi primari, mentre il nome secondario è rinominato automaticamente.
Se avviene una collisione con una directory Unix, l’Mtools chiede se
deve sovrascrivere il file o tralasciarlo.
SENSIBILITÀ AL CASE DEL FILESYSTEM VFAT
Il file system VFAT è in grado di ricordare il case dei nomi di file.
Comunque, nomi di file che differiscano solo nel case non possono
coesistere nella stessa directory. Per esempio se si salva una file
chiamato LongFileName su un file system VFAT, mdir mostrerà questo file
come LongFileName, e non come Longfilename. Comunque, se poi si prova
ad aggiungere LongFilename nella stessa directory, questi sarà
rifiutato, poiché il case è ignorato nella verifica delle collisioni.
Il file system VFAT permette di salvare nel byte di attributo il case
del nome del file, se tutte le lettere del nome rispecchiano lo stesso
case e se ciò avviene pure nell’estensione. Gli Mtools usano queste
informazioni quando mostrano i nomi dei file, e anche per generare il
nome Unix quando questi vengono ‘‘mcopy-ati’’ in una directory Unix.
Ciò può avere risultati inaspettati quando viene applicato a file
scritti con una versione di DOS precedente alla 7.0: in tal caso i nomi
di file saranno resi tutti con le maiuscole. Ciò è diverso dal
comportamento della vecchia versione degli Mtools che usava queste
informazioni per generare nomi di file Unix con le minuscole.
DISCHI XDF (SOLO PER LINUX)
Xdf è un formato ad alta capacità supportato da OS/2. Può tenere 1840
kB per disco. Ciò non è moltissimo confrontato con i migliori formati
2m, ma ha il principale vantaggio di essere veloce: 600 millisecondi
per traccia. Perciò è più veloce del buon vecchio formato a 21
settori, e quasi veloce quanto il formato standard a 18 settori. Per
poter accedere a questi dischi, si setti per il disco la variabile
use_xdf. Per avere i dettagli su come fare si veda Mtools(5).
L’accesso veloce ai dischi Xdf è possibile solo con kernel più recenti
del 1.3.34.
Avvisi per i distributori: Se gli Mtools sono compilati su un kernel
Linux più recente del 1.3.34, non funzioneranno su kernel più vecchi.
Comunque, se sono stati compilati su un kernel più vecchio,
funzioneranno ancora su kernel più recenti ad eccezione del fatto che
l’accesso agli Xdf sarà più lento. Si raccomanda agli autori delle
distribuzioni di includere Mtools compilati con un kernel più vecchio
del 1.3.34, fino a che non sarà uscito il 2.0. Quando ci sarà il 2.0,
potranno (e dovrebbero) essere distribuiti i binari degli Mtools
compilati su kernel più recenti. Gli eseguibili degli Mtools compilati
su kernel più vecchi del 1.3.34 non gireranno su nessuno dei kernel 2.1
o successivi.
CODICI DI USCITA
Tutti i comandi Mtools restituiscono 0 in caso di successo, 1 in caso
di completo fallimento, o 2 in caso di fallimento parziale. Tutti i
comandi Mtools eseguono, prima di proseguire, qualche verifica sullo
stato del disco, e per essere sicuri che questi sia un disco MSDOS
(invece di un disco ext2 o minix). Queste verifiche possono rifiutare
dischi parzialmente corrotti, i quali potrebbero essere ancora
leggibili. Per evitare questi controlli, s’imposti la variabile
d’ambiente MTOOLS_SKIP_CHECK.
VEDERE ANCHE
mattrib(1), mbadblocks(1), mcd(1), mdel(1), mformat(1), mmove(1),
mrd(1), mren(1), mtype(1), mcopy(1), mdir(1), mlabel(1), mmd(1),
mmount(1)
BACHI
Occasionalmente, a causa di uno sfortunato effetto collaterale dovuto
ad una erronea scelta dell’esatto dispositivo (che può accadere quando
sono supportate diverse capacità dei dischi), il device driver può
produrre alcuni messaggi d’errore. Possono essere tranquillamente
ignorati.
Il codice di verifica della fat checking si pianta su dischi ‘‘mformat-
ati’’ a 1.72 MB con versioni degli Mtools precedenti alla 2.0.7. Si
setti la variabile d’ambiente MTOOLS_FAT_COMPATIBILITY per saltare la
verifica della fat.
Il supporto per le varianti per i S.O. non Linux non è stato testato
molto a lungo. Potrebbe contenere bachi, o addirittura non funzionare
del tutto.
local MTOOLS(1)