[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [indice analitico] [volume] [parte]


Capitolo 198.   Mtools

Mtools (1) è una raccolta di comandi utili per eseguire facilmente operazioni all'interno di file system Dos-FAT (comprendendo anche la gestione dei nomi lunghi); soprattutto, senza la necessità di innestarli e staccarli.

Infatti, non si tratta di uno strumento indispensabile; tuttavia, dal momento che il formato Dos-FAT, data la sua diffusione, è molto comodo quando si vogliono utilizzare dischetti per trasferire file da un sistema all'altro, Mtools dà un aiuto in più, evitando di dover innestare e staccare le unità.

Mtools è composto da un solo programma eseguibile, mtools, da un file di configurazione generale, /etc/mtools.conf, eventualmente da file di configurazione personalizzati, ~/.mtoolsrc e da una serie di collegamenti simbolici che puntano all'unico eseguibile. Così, a seconda del nome con cui viene chiamato il programma mtools, questo si comporta in modo differente.

Eventualmente, volendo utilizzare il sistema grafico X (parte xxxvi), è possibile usare il programma MToolsFM, ovvero Mtools file manager.

198.1   Logica di funzionamento e configurazione

I comandi di Mtools, ovvero i collegamenti simbolici che puntano al programma mtools, cercano di emulare il comportamento dei comandi analoghi del Dos:

198.1.1   Configurazione

La configurazione di Mtools avviene fondamentalmente attraverso i file /etc/mtools.conf e ~/.mtoolsrc; il primo rappresenta la configurazione generale, il secondo quella personalizzata. Il contenuto dei due file segue le stesse regole, tuttavia è importante considerare che le direttive contenute nella configurazione personalizzata tendono a sostituirsi a quelle generali.

Questi file di configurazione possono contenere commenti, introdotti dal simbolo # e terminati dalla fine della riga; inoltre, le righe vuote sono ignorate.

Le direttive sono suddivise in sezioni, identificate da una sorta di etichetta terminata da due punti verticali (:), che rappresentano ognuna un'unità a dischi, secondo lo standard Dos. Alcune direttive hanno però un effetto globale, indipendente dalle sezioni. Queste ultime hanno la forma di assegnamenti di variabili e, in effetti, la loro definizione potrebbe essere fatta anche al di fuori dei file di configurazione, attraverso l'assegnamento e l'esportazione di variabili globali con lo stesso nome.

198.1.2   Variabili globali

Le direttive globali sono espresse in forma di assegnamento, dove, nella maggior parte dei casi, il valore assegnato può essere zero o uno, mentre negli altri si tratta di stringhe. Evidentemente, quando l'assegnamento riguarda solo valori binari, si ha di fronte una variabile booleana che rappresenta l'attivazione (1) o la disattivazione (0) di qualcosa.

Tabella 198.1. Alcune direttive globali.

Direttiva Descrizione
MTOOLS_SKIP_CHECK={1|0}
Se attivato, fa sì che Mtools ignori una serie di controlli sul file system Dos, così da permettere l'utilizzo di dischetti inizializzati in un modo che altrimenti risulterebbe inammissibile.
MTOOLS_FAT_COMPATIBILITY={1|0}
Se attivato, fa in modo che Mtools ignori la dimensione della FAT.
MTOOLS_LOWER_CASE={1|0}
Se attivato, fa in modo che i nomi corti (8.3) vengano visualizzati sempre in minuscolo.
MTOOLS_NO_VFAT={1|0}
Se attivato, fa in modo che Mtools si limiti a creare file utilizzando nomi corti, senza l'estensione VFAT. Ciò può essere utile quando si dispone di un Dos incapace di utilizzare i nomi lunghi.
MTOOLS_TWENTY_FOUR_HOUR_CLOCK={1|0}
Se attivato, fa sì che la visualizzazione di informazioni orarie avvenga utilizzando la notazione europea di 24 ore.
MTOOLS_DATE_STRING=stringa_di_formato
Permette di definire il formato di rappresentazione delle date. Il valore predefinito di questa direttiva è la stringa dd-mm-yyyy.

198.1.3   Sezioni riferite alle unità a dischi

A parte la configurazione globale di Mtools, è importante definire le varie unità a dischi che si intendono utilizzare e la relativa configurazione. Si apre una sezione riferita a un'unità particolare nel modo seguente:

drive lettera:

Per esempio, drive a:, apre una sezione riferita alla prima unità a dischi secondo il Dos. Il minimo per questa sezione, è la definizione del dispositivo corrispondente a tale unità virtuale, come mostrato nell'esempio seguente:

drive a: file="/dev/fd0"

Tabella 198.3. Alcune direttive.

Direttiva Descrizione
sync
Se viene utilizzata questa direttiva, le operazioni di lettura e scrittura sull'unità avvengono in modo sincrono.
exclusive
Fa in modo che l'accesso all'unità sia esclusivo.
file="file"
Definisce il file di dispositivo corrispondente all'unità a dischi, oppure il file-immagine corrispondente a un disco ideale. Come si può intuire, questa informazione è indispensabile.
partition=n_partizione_primaria
Se il file a cui si fa riferimento con la direttiva file, è il dispositivo di un disco suddiviso in partizioni (lo stesso discorso vale nel caso di un file-immagine), si può indicare la partizione attraverso un numero in questa direttiva (sono valide solo le partizioni primarie).
Questa direttiva è utile solo quando non si può utilizzare un file di dispositivo che faccia riferimento, da solo, alla partizione desiderata.
offset=scostamento
Quando il file a cui si fa riferimento, come dispositivo o come immagine di un'unità a dischi, contiene l'unità desiderata a partire da una certa posizione, diversa dall'inizio, è possibile utilizzare questa direttiva. Ciò potrebbe essere utile per accedere a una partizione estesa attraverso un dispositivo che faccia riferimento all'unità intera, oppure quando si utilizzano dischi con un formato particolare.
Il punto di inizio, lo scostamento, è normalmente zero, per indicare l'inizio del file corrispondente; altrimenti indica il numero di byte da saltare.

198.1.4   Configurazione predefinita

La configurazione standard di Mtools, che si trova nel file /etc/mtools.conf standard delle distribuzioni GNU/Linux, è utile a comprendere in che modo vadano utilizzate le direttive più importanti.

Per quanto riguarda l'utilizzo comune di Mtools, cioè quello riferito esclusivamente ai dischetti, tale configurazione standard è già sufficiente.

# floppy
drive a: file="/dev/fd0" exclusive
drive b: file="/dev/fd1" exclusive

# dosemu hdimage.
drive m: file="/var/lib/dosemu/hdimage.first" partition=1 offset=128

# dosemu floppy image
drive n: file="/var/lib/dosemu/fdimage"

MTOOLS_LOWER_CASE=1

Nell'esempio si mostra anche l'unità N:, riferita a una partizione contenuta nel file /var/lib/dosemu/hdimage, a partire dalla posizione 128. Questo file è solitamente l'immagine del disco C: per DOSEMU (capitolo 698).(2)

198.1.5   Verifica della configurazione

Con il comando mtoolstest, usato senza argomenti, è possibile verificare la configurazione. Quello che si ottiene attraverso lo standard output è una sorta di file mtools.conf dettagliato di tutta la configurazione attiva, compresi i valori predefiniti.

198.1.6   Accesso ai dispositivi

In base alla configurazione, Mtools utilizza file-immagine o file di dispositivo determinati. Evidentemente, la proprietà e i permessi su questi regolano l'accessibilità agli utenti. È probabile che si desideri concedere, a tutti o a un gruppo di utenti, l'accesso in lettura e scrittura alle unità a dischetti. Per farlo, occorre intervenire sui file di dispositivo /dev/fd*.

Nel caso si intenda concedere a chiunque l'accesso indiscriminato a tali unità, è sufficiente attribuire tutti i permessi di lettura e di scrittura.

chmod a+rw /dev/fd*[Invio]

Se si vuole concedere solo a un gruppo di utenti la possibilità di accedere ai dischetti, occorre fare in modo che tali dispositivi appartengano al gruppo floppy e che a questo gruppo siano aggregati tali utenti.

chgrp floppy /dev/fd*[Invio]

chmod g+rw /dev/fd*[Invio]

gpasswd -a tizio floppy[Invio]

gpasswd -a caio floppy[Invio]

gpasswd -a ... floppy[Invio]

Se non si dispone di gpasswd, probabilmente perché non è disponibile la gestione delle parole d'ordine oscurate, basta agire manualmente nel file /etc/group.

198.2   Comandi

Come accennato, i comandi di Mtools emulano una serie di comandi Dos. Per facilitare le cose all'utente, i comandi Mtools hanno gli stessi nomi di quelli Dos, con l'aggiunta di una lettera «m» iniziale. Da questo l'origine del nome, dove la «m» sta per «MS-Dos».

198.2.1   Utilizzo di «mattrib»

mattrib [+a|-a] [+h|-h] [+r|-r] [+s|-s] file_dos...

Il comando mattrib serve a modificare gli attributi dei file Dos indicati come argomenti. L'esempio seguente, toglie l'attributo di sola lettura a tutti i file contenuti nel dischetto A: (si usano gli apici singoli per evitare che la shell interpreti l'asterisco).

mattrib -r 'a:/*'[Invio]

198.2.2   Utilizzo di «mbadblock»

mbadblock unità_dos

Il comando mbadblock scandisce un'unità Dos alla ricerca di settori difettosi, marcandoli come tali nella FAT. L'esempio seguente verifica il dischetto A:.

mbadblock a:[Invio]

198.2.3   Utilizzo di «mcd»

mcd [directory_dos]

Il comando mcd permette di modificare o conoscere la directory corrente delle unità Dos. L'esempio seguente cambia la directory corrente nel dischetto A:.

mcd a:/ciao[Invio]

198.2.4   Utilizzo di «mcopy»

mcopy [opzioni] origine... [destinazione]

Il comando mcopy è il più importante di tutta la serie degli Mtools. Consente di copiare file da e verso unità Dos, oltre che da e verso il file system Unix. Questo significa che l'origine e la destinazione possono essere indifferentemente file o directory Dos o Unix, permettendo quindi anche la copia da unità Dos a unità Dos, così come da file Unix a file Unix.

Quando la destinazione viene omessa, si intende fare riferimento implicitamente alla directory corrente nel file system Unix.

Una caratteristica importante di mcopy sta nella possibilità di convertire automaticamente il testo in modo che i codici di interruzione di riga siano compatibili con il Dos (<CR><LF>), oppure con i sistemi Unix (<LF>).

Opzione Descrizione
-t
Considera trattarsi della copia di file di testo e, quando questa è fatta verso un'unità Dos, converte i codici di interruzione di riga in modo che siano compatibili con il Dos, mentre quando la destinazione è il file system Unix, converte il file in modo che sia compatibile con lo standard delle terminazioni di riga Unix.

Segue la descrizione di alcuni esempi.

198.2.5   Utilizzo di «mdel»

mdel file_dos...

Il comando mdel cancella i file Dos indicati come argomento. L'esempio seguente cancella il file A:\PROVA.DOC.

mdel a:/prova.doc[Invio]

198.2.6   Utilizzo di «mdeltree»

mdeltree directory_dos...

Il comando mdeltree cancella le directory Dos indicate come argomento. L'esempio seguente cancella la directory A:\LETTERE\.

mdeltree a:/lettere[Invio]

198.2.7   Utilizzo di «mdir»

mdir [opzioni] percorso_dos...

Il comando mdir elenca i file e il contenuto delle directory indicate come argomenti.

Tabella 198.6. Alcune opzioni.

Opzione Descrizione
-w
Emette un elenco di soli nomi di file e directory, in modo da visualizzarne meglio un gruppo numeroso,
-a
Mostra anche i file nascosti (hidden).

Segue la descrizione di alcuni esempi.

198.2.8   Utilizzo di «mmd»

mmd directory_dos...

Il comando mmd crea le directory Dos indicate come argomento. L'esempio seguente crea la directory A:\LETTERE\.

mmd a:/lettere[Invio]

198.2.9   Utilizzo di «mmove»

mmove origine_dos... destinazione_dos

Il comando mmove sposta o rinomina uno o più file e directory. Se l'origine è composta da più file o directory, la destinazione deve essere una directory. L'esempio seguente sposta tutti i file A:\*.DOC nella directory A:\LETTERE\.

mmove 'a:/*.doc' a:/lettere[Invio]

198.2.10   Utilizzo di «mrd»

mrd directory_dos...

Il comando mrd elimina le directory indicate come argomento, purché siano vuote. L'esempio seguente elimina la directory A:\LETTERE\.

mrd a:/lettere[Invio]

198.2.11   Utilizzo di «mren»

mren origine_dos... destinazione_dos

Il comando mren rinomina o sposta uno o più file e directory. Se l'origine è composta da più file o directory, la destinazione deve essere una directory. L'esempio seguente rinomina il file A:\PIPPO.DOC in A:\PIPPO.TXT.

mren a:/pippo.doc a:/pippo.txt[Invio]

198.2.12   Utilizzo di «mtype»

mtype [opzioni] file_dos...

Il comando mtype emette attraverso lo standard output il contenuto dei file indicati come argomento.

Opzione Descrizione
-t
Considera trattarsi della lettura di file di testo, pertanto converte i codici di interruzione di riga Dos in modo che siano compatibili con lo standard Unix (da <CR><LF> a <LF>).

L'esempio seguente visualizza il contenuto del file A:\LETTERA.TXT convertendo opportunamente i codici di interruzione di riga:

mtype -t a:/lettere.txt[Invio]

198.3   MToolsFM

MToolsFM (3) è un'applicazione grafica, per X, che offre un gestore di file con cui è più facile trasferire file da e verso un dischetto inizializzato in formato Dos-FAT. Si compone dell'eseguibile MToolsFM, con tanto di maiuscole come scritto:

MToolsFM [opzioni]

Generalmente non si utilizzano opzioni e, come si vede, non sono previsti altri argomenti.

Figura 198.8. L'aspetto di MToolsFM durante il funzionamento: in questo caso appare a sinistra il contenuto di una certa directory e a destra il contenuto del dischetto.

mtoolsfm

La configurazione di MToolsFM dipende principalmente dalla configurazione di Mtools, quindi dal file /etc/mtoolsfm.conf ed eventualmente dal file ~/.mtoolsfm, che costituisce quella personalizzata. Il file di configurazione predefinito dovrebbe avere l'aspetto seguente:

DRIVES="a"
LEFTDRIVE=" "
RIGHTDRIVE=" "
MPATH="/usr/bin"

La direttiva DRIVES serve a dichiarare le lettere di dischi Dos che si prevede di utilizzare. In pratica, qui vanno indicate le lettere stabilite nella configurazione di Mtools. Le direttive LEFTDRIVE e RIGHTDRIVE servono a specificare cosa visualizzare inizialmente nel pannello di sinistra e cosa in quello di destra; il carattere spazio, così come si vede nell'esempio, fa riferimento al contenuto della directory corrente, mentre si può mettere una lettera per specificare il contenuto di un disco Dos. La direttiva MPATH serve a indicare la collocazione dell'eseguibile mtools e dei suoi collegamenti simbolici.

La configurazione personalizzata, costituita dal file ~/.mtoolsfm, può essere modificata anche attraverso il programma stesso.

198.4   Riferimenti

Appunti di informatica libera 2007.02 --- Copyright © 2000-2007 Daniele Giacomini -- <daniele (ad) swlibero·org>


1) Mtools   GNU GPL

2) Il valore corretto per lo scostamento da utilizzare quando si vuole accedere alle immagini di DOSEMU, dipende dalla versione di questo emulatore, dal momento che nel tempo, il formato del file è cambiato varie volte.

3) MToolsFM   GNU GPL


Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome mtools.htm

[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [indice analitico]

Valid ISO-HTML!

CSS validator!