Gestione file system ext2/ext3 e NTFS

Informatica

Ecco riassunti in una pagina dei comandi utili per gestire file system ext2, ext3 e NTFS in gnu/linux. Per ciascun file system vediamo come crearlo, configurarlo, esaminarlo, ripararlo, ridimensionarlo fare backup (dump) e restore.

Sommario

ext2/ext3

  • creare il file system:

    mke2fs -t ext3 -L volumename -O dir_index -m 1 /dev/sda1
    

    oppure:

    mkfs.ext3 -L volumename -O dir_index -m 1 /dev/sda1
    

    L'opzione -L imposta un label, -O dir_index imposta l'indice delle directory per migliori prestazioni (default su sistemi recenti), -m 1 imposta lo spazio riservato all'1% di quello disponibile

  • modificare le opzioni del file system

    tune2fs -c 200 -C 50 -i 2m -L volumename -m 1 /dev/sda1
    

    L'opzione -c imposta il numero massimo di mount prima di un controllo, -i 2m imposta i controlli almeno ogni 2 mesi, -m imposta lo spazio riservato.

  • assegnare un label al file system o vedere il label corrente (limite 16 caratteri)

    e2label /dev/sda1 nuovonome
    

    se non si specifica un nuovo label viene mostrato il label corrente. oppure:

    tune2fs -L nuovonome /dev/sda1
    
  • vedere le opzioni del file system

    tune2fs -l /dev/sda1
    

    oppure:

    dumpe2fs -h /dev/sda1
    
  • montare il file system:

    mount /dev/sda1 /mnt/dest -t ext3 -o noatime
    

    monta con l'opzione -o noatime che disattiva la registrazione dell'ora di accesso per i file aperti, velocizzando le letture. In alternativa usare relatime.

  • controllare il file system

    e2fsck -p -f /dev/sda1
    

    l'opzione -f forza il controllo anche se il file system sembra pulito, -p ripara automaticamente gli errori che si possono riparare in modo sicuro. In alternativa, con l'opzione -n si fa un controllo senza fare alcuna modifica (ro), con -y fa un controllo assumendo risposta affermativa a tutte le modifiche. Senza queste opzioni il controllo è interattivo.

  • ridimensionare il file system. Il modo più semplice è con gparted o parted. In alternativa:

    • Prima lo controlliamo con e2fsck.
    • Allargare fino a riempire: usare fdisk o cfdisk per allargare la partizione. Poi:

      resize2fs /dev/sda1
      
    • Restringere a una dimensione fissata, ad es. 40 GB:

      resize2fs /dev/sda1 39.5G
      
    • scegliamo una dimensione un po' inferiore di quella finale. Poi usiamo fdisk o cfdisk per ridimensionare la partizione alla dimensione finale. Successivamente allarghiamo definitivamente la partizione con:

          resize2fs /dev/sda1
      
    • Infine controlliamo di nuovo il file system con e2fsck.
  • backup e ripristino del file system

    dump -z -0 /dev/sda1 -f sistema.dump.gz
    

    Salva una immagine del file system nel file immagine.dump.gz e la comprime con zlib. In alternativa, -j comprime con bzlib (lento ma alta compressione), -y comprime con lzo (minore compressione, ma molto rapido).

    cd /mnt/destinazione
     restore -r -f /mnt/backup/sistema.dump.gz

    ripristina il file system nella directory corrente. Quando si finisce, rimuovere il file restoresymtable.

    restore -C -f /mnt/backup/sistema.dump.gz

    verifica il backup confrontandolo con il sistema originale.

    Per trasferire un file system da una partizione ad un'altra partizione|directory:

    cd /mnt/destinazione
      dump -0 -f - /dev/sdc5 | restore -r -f -
  • recupero di emergenza. Prima di tutto è importante aver annotata la posizione dei backup del superblocco del file system. per fare questo esaminare l'output di dumpe2fs:

    dumpe2fs /dev/sdc5 | grep -i superbl > /mnt/backup/recovery/sdc5_root.superblock

    In caso di formattazione del file system con un altro file system, come NTFS (ma non ext2/ext3!) o in caso di errore del tipo "Bad superblock", si può provare a usare una copia di riserva del superblocco per riparare e/o montare la partizione per salvare i dati in un luogo sicuro.
    Ma PRIMA fare sempre un backup fisico della partizione con:

    dd if=/dev/sdc5 of=backup-sdc5.img

    oppure con:

    dd if=/dev/sdc5 | gzip > backup-sdc5.img.gz

    Poi provare a riparare il file system usando e2fsck insieme alla posizione di un superblock di backup (eventualmente provare fino a quando non se ne trova uno funzionante).
    (Se non hai annotato queste informazioni, puoi provare a recuperarle dal file system danneggiato usando testdisk)

    e2fsck -b 24577 /dev/sdc5

    Anche se non è possibile riparare interamente il file system, puoi provare a montarlo comunque, passando a mount la posizione di un superblock di backup:

    mount sb=24577 /dev/sdc5 /mnt/data -o ro

    Se questo ha successo, salva il salvabile!

  • undelete: recuperare file rimossi erroneamente: HOWTO recover deleted files on an ext3 file system

Nessun problema di frammentazione se le partizioni hanno almeno il 10-20% di spazio libero. Il livello di frammentazione è visibile eseguendo e2fsck. Per deframmentare il file system si consiglia di spostare i dati, ricostruirlo e ricopiare i dati.

Riferimenti utili

How To Resize ext3 Partitions Without Losing Data
ext3 filesystem bad superblock recovery
Surviving a Linux Filesystem Failures
Advanced Find ext2 ext3 Backup SuperBlock
Linux: Replacing atime With relatime

NTFS

  • creare il file system:

    mkntfs -f -L nomevolume /dev/sda1

    formatta rapidamente (-f), senza impostare a zero il volume e senza controllare la presenza di settori danneggiati. Imposta l'etichetta del volume a "nomevolume".

  • assegnare un label al file system

    ntfslabel /dev/sda1 nuovonome

    se non viene specificato un nuovo label viene mostrato quello corrente.

  • montare il file system (oltre al tradizionale mount -t ntfs)

    ntfs-3g /dev/sda1 /mnt/windows

    Aggiungere l'opzione -o umask=0 per consentire accesso completo a tutti.

  • controllare il file system (controlli di base, marca il file system per il controllo completo all'avvio di Windows)

    ntfsfix /dev/sda1
  • ridimensionare il file system (non è necessaria deframmentazione)

    ntfsresize --size 20G /dev/sda1

    La partizione viene automaticamente marcata per il controllo all'avvio di Windows. Se omessa l'opzione --size, il file system è esteso a riempire la partizione corrente.
    Ricorda che è necessario anche ridimensionare la partizione adeguatamente. Vedi sopra il caso per ext2/ext3.

  • backup e ripristino del file system

    ntfsclone -s -o image.img /dev/sda1

    crea una immagine della partizione.

    ntfsclone -s -o - /dev/sda1 | gzip -c > image.img.gz

    crea una immagine compressa della partizione

    ntfsclone --overwrite /dev/sdc1 /dev/sda1

    Clona sda1 (sorgente) su sdc1 (destinazione)

    ntfsclone -r --overwrite /dev/hda1 backup.img

    ripristina il file immagine sulla partizione sda1

    gunzip -c backup.img.gz | ntfsclone -r --overwrite /dev/sda1 -

    ripristina il file immagine compresso sulla partizione sda1

    ntfscmp /dev/sda backup.img

    verifica il backup o un file system clonatoto confrontandolo con l'originale. Non può controllare immagini create con l'opzione '-s', il formato speciale di ntfsclone.

  • undelete: recuperare file rimossi erroneamente:

    ntfsundelete /dev/sda1

Riferimenti utili

Linux-NTFS
Advanced NTFS Boot and MFT Repair

Trackback URL for this post:

http://gerlos.altervista.org/trackback/446

commenti

Invia nuovo commento

Il contenuto di questo campo è privato e non verrà mostrato pubblicamente.
  • Allowed HTML tags: <a> <em> <strong> <del> <cite> <code> <img> <ul> <ol> <li> <dl> <dt> <dd> <pre>
  • Linee e paragrafi vanno a capo automaticamente.
  • Insert Flickr images: [flickr-photo:id=230452326,size=s] or [flickr-photoset:id=72157594262419167,size=m].
  • Indirizzi web o e-mail vengono trasformati in link automaticamente

Maggiori informazioni sulle opzioni di formattazione.

CAPTCHA
Per provare che sei un visitatore umano, rispondi a questa domanda. È per evitare l'inserimento di messaggi spam.
Image CAPTCHA
Enter the characters shown in the image without spaces, also respect upper and lower case.