GNU/Linux >> Linux Esercitazione >  >> Linux

Come creare file sparsi in Linux usando il comando 'dd'

Cosa sono i file sparsi

I file sparsi sono file a cui è preallocata una grande quantità di spazio, senza occupare l'intera quantità dal filesystem. Sono utili per ridurre la quantità di tempo e spazio su disco coinvolti nella creazione di filesystem di loop o immagini di dischi di grandi dimensioni per guest virtualizzati, tra le altre cose. I file sparsi sono comunemente usati per immagini disco, snapshot di database, file di registro, ecc.

Vantaggio di file sparsi
Il vantaggio dei file sparsi è che lo spazio di archiviazione viene allocato solo quando effettivamente necessario:lo spazio su disco viene salvato e possono essere creati file di grandi dimensioni anche se lo spazio libero sul file system è insufficiente.

Svantaggio dei file sparsi
Gli svantaggi sono che i file sparsi possono essere frammentati. I rapporti sullo spazio libero del file system possono essere fuorvianti e la copia di un file sparso con un programma che non li supporta esplicitamente può copiare l'intera dimensione non compressa del file, comprese le sezioni sparse, per lo più zero, che non sono sul disco, perdendo i vantaggi della proprietà sparse nel file.

Possiamo vedere questo comportamento con il file /var/log/lastlog.

# ls -lh /var/log/lastlog
-rw-r--r--. 1 root root 286K Dec  3 04:50 /var/log/lastlog
# du -sh /var/log/lastlog
12K     /var/log/lastlog

creazione di file sparsi

1. I file sparsi possono essere creati utilizzando 'dd Il comando ' cerca ' opzione.

# dd if=/dev/zero of=sparse_file bs=1 count=0 seek=512M
0+0 records in
0+0 records out
0 bytes (0 B) copied, 0.000213705 s, 0.0 kB/s
# ls -hl sparse_file
-rw-r--r--. 1 root root 512M Dec  3 05:51 sparse_file
# du -sh sparse_file
0       sparse_file

2. Per vedere l'utilizzo del disco del file con il comando "ls" possiamo usare "-s opzione ":

# ls -lhs sparse_file
0 -rw-r--r--. 1 root root 512M Dec  3 05:51 sparse_file

3. Per vedere la dimensione apparente del file usando “du” possiamo usare “–apparent-size opzione ":

# du -h --apparent-size sparse_file
512M    sparse_file

Come copiare un file sparse

La copia di un file sparse con un programma che non li supporta esplicitamente può copiare l'intera dimensione non compressa del file, incluso lo sparse. Quindi, quando copi un file sparse usando il comando cp, il file di destinazione viene modificato in un file completamente allocato. Per copiare un file sparso mantenendo la copia di destinazione come un file sparso, utilizza uno dei comandi seguenti.

# cp --sparse=always source_file new_file
# rsync --sparse source_file new_file
# cpio --sparse
# tar --sparse


Linux
  1. Come creare file di una certa dimensione in Linux

  2. Come creare file Proc Linux nel programma C usando LKM

  3. Come ordinare i file in Linux usando il comando di ordinamento

  4. Come dividere iso o file usando il comando "split" in Linux

  5. Come comprimere e decomprimere file .bz2 in Linux usando il comando bzip2

Come creare un file in Linux usando Cat Command

Come creare un file in Linux usando Terminal

Come bloccare un file di testo in Linux usando il comando flock

Come creare un file in Ubuntu Linux usando comando e GUI

Come copiare file in Linux usando il comando CP

Come creare file nel sistema Linux:una guida definitiva