Continuiamo a vedere i comandi utili con i file system in gnu/linux. Dopo ext2, ext3 e NTFS, qui ci occupiamo di FAT (o vFAT, che dir si voglia), ISO 9660 (usato nei CD-Rom e DVD) e di alcuni comandi utili per altre operazioni, come ad esempio creare una file su cui mettere la swap o un file system. Naturalmente, dove possibile vedremo come creare, configurare, riparare e ridimensionare questi file system.
FAT non è un bel file system. È molto primitivo, ed è facile "romperlo". Se non dovete accedere ai dati da Mac Os X, usate NTFS. Se il dispositivo non vedrà mai Windows, usate ext2 o ext3.
Secondo me ha senso usare FAT solo per dischi "piccoli" (<15 GB), che possibilmente andranno usati solo per trasportare dati (come pendrive e piccoli dischi usb esterni), e non per l'uso "in linea", o per dispositivi come macchine fotografiche. In questo caso, ricordate sempre di scaricare periodicamente tutte le foto e di formattare la scheda di memoria della macchina fotografica tramite la macchina fotografica. Questo eviterà molti problemi.
In caso di file (foto, video, documenti) mancanti su queste memorie flash, NON FAR NULLA! Fate una immagine fisica del dispositivo (vedi qui), e provate il ripristino su una copia di questa immagine, magari con l'aiuto di Testdisk e di Photorec.
creare il file system:
mkdosfs -F 32 -n volumename /dev/sda1
crea una partizione FAT32 con label volumename.
assegnare un label al file system
dosfslabel /dev/sda1 volumename
montare il file system: aggiungere -t vfat al comando mount.
controllare il file system
dosfsck -a /dev/sda1
l'opzione -a ripara automaticamente nel modo meno distruttivo possibile. In alternativa, l'opzione -r lavora in modo interattivo (equivalente a fsck.vfat)
ridimensionare il file system: usare parted. È sempre possibile ridurre tutti i file system FAT, ma potrebbe non essere possibile allargare quelli in FAT16. Non è necessaria deframmentazione.
ripristino di un file system corrotto: far riferimento a TestDisk e a PhotoRec. In ogni caso, se il livello di frammentazione è alto, la probabilità di successo nel ripristino diminuisce (morale: evitare la frammentazione :-/ o non usare per nulla FAT :-).
L'area di swap non è un vero e proprio file system, ma comunque è qualcosa che di solito mettiamo in una partizione e che conterrà dei dati, per cui lo tratto qui, insieme ad altri file system.
Grazie a miglioramenti nei kernel linux recenti, è possibile mettere la swap in file al posto delle partizioni senza significative perdite di prestazioni.
Ormai la memoria RAM abbonda, per cui un'area di swap è ormai sempre meno necessaria, salvo nel caso in cui vogliamo sospendere su disco il sistema (utile nei notebook, laptop, netbook o quel che vi pare). In questo caso ci serve un'area di swap di dimensioni almeno uguali a quelle della RAM.
creare l'area di swap con label nomeswap:
mkswap -L nomeswap /dev/sda1
attivare/disattivare l'area di swap:
swapon -a
attiva tutte le aree di swap definite in /etc/fstab
swapon /dev/sda1
attiva l'area di swap in /dev/sda1
swapon -L nomeswap
attiva l'area di swap con label nomeswap
swapoff /dev/sda1
disattiva l'area di swap in /dev/sda1
ISO 9660 è il file system che si usa con i CD e i DVD. Ecco come andare dal file sul PC al file sul CD/DVD.
Per problemi di licenza, nel 2006 Debian fa un fork (cdrkit) da cdrtools. I
comandi hanno nomi diversi ma funzionano uguale. Le distribuzioni a volte fanno
link simbolici tra i nomi dei tool cdrkit e quelli tradizionali, di cdrtools.
growisofs fa le stesse cose, ma in un solo passo, supportando le opzioni di
genisoimage.
creare un file immagine iso9660 (genisoimage == mkisofs)
genisoimage -r -J -l -V volname -o image.iso /path/to/files
crea una immagine iso dei file in /path/to/files, consentendo nomi di file con 31 caratteri (-l), aggiungendo per Windows le estensioni Joliet (-J) e le estensioni RockRidge per sistemi Linux, reimpostando i permessi in modo che i file siano sempre leggibili (-r). L'opzione -V imposta un nome da assegnare.
masterizzare una immagine iso9660 su un CD/DVD (wodim == cdrecord)
growisofs -dvd-compat -Z /dev/cdrom=image.iso
l'opzione -dvd-compat imposta la massima compatibilità con i DVD-ROM e DVD-Video
wodim -eject speed=16 image.iso
masterizza a velocità 16x ed espelle il disco alla fine.
masterizzare al volo dei file
growisofs -Z /dev/dvd -R -J /master/tree
masterizza al volo, impostando le estensioni RockRidge (mantiene permessi e proprietari sui file linux) e Joliet.
genisoimage -r /master/tree | wodim -v fs=6m speed=2 dev=2,0 -
masterizza al volo, in modo verboso, impostando un buffer di 6 MB (fs=6m), a
velocità 2x e sul device 2,0 (vedi wodim -scanbus)
aggiungere una sessione a un disco multi sessione:
growisofs -M /dev/dvd -R -J /more/files
aggiunge una sessione a un cd/dvd.
wodim -eject -multi speed=16 image.iso
l'opzione -multi lascia aperto il disco
wodim -msinfo
preleva le informazioni sull'inizio e sulla fine delle tracce, nella forma "0,16774"
genisoimage -J -r -o image2.iso -C 0,16774 -dev 2.0 /path/to/files
crea una immagine da aggiungere dopo quella esistente, identificata dalle opzioni -C e -dev.
Assicurarsi di usare le stesse opzioni usate per la masterizzazione iniziale. Per chiudere un disco, non aggiungere -multi all'ultima masterizzazione.
vedere il nome di volume di un CD/DVD o di un file ISO (ma i file manager grafici di KDE e Gnome lo fanno di default)
volname /dev/dvdespellere un CD/DVD o richiudere il cassetto del lettore:
eject -Trecuperare dati da supporti danneggiati: usare TestDisk e PhotoRec su Linux. Per vedere i dati "cancellati" dalla scrittura di una nuova sessione, usare:
mount /dev/cdrom /mnt/cdrom -t iso9660 -o session=0
Si può usare anche ISObuster sotto wine.
Utile anche dvdisaster per masterizzare dischi con informazioni di correzione degli errori, in modo da ridurre le probabilità di perdita di dati in caso di supporti danneggiati. Può anche provare a recuperare dati dai CD attraverso letture ripetute, a costo di conservare file di "peso" pari alla percentuale di errori che si possono correggere (usa la codifica di Reed-Solomon).
creare un file da usare come immagine da montare in loopback
dd if=/dev/zero of=image.loop bs=1M count=100
crea un file vuoto da 100 MB, che si può formattare con mkfs.
montare un file immagine
mount image.loop /mnt/dest -o loop
mounta il file immagine sulla directory /mnt/dest usando il device di loopback
usare un file come swap (utile per aumentare la memoria virtuale senza ripartizionare, anche se le performance potrebbero essere inferiori)
dd if=/dev/zero of=/path/to/image.loop bs=1M count=100
mkswap /path/to/image.loop
swapon /path/to/image.loopmontare una partizione facendo riferimento ad essa tramite label o uuid (funziona anche in fstab e in menu.lst di grub):
mount LABEL=nomevolume /mnt/dest
mount UUID=123456 /mnt/dest
commenti
Invia nuovo commento