Scrivere Su Nastro Tar
Riferimento di questa pagina
Installalo
se non lo hai :-)
apt-get install mt-st
Status
mt -f /dev/st0 status
otterremo un output simile al seguente
SCSI 2 tape drive:
File number=0, block number=0, partition=0.
Tape block size 512 bytes. Density code 0x24 (DDS-2).
Soft error count since last status=0
General status bits on (41010000):
BOT ONLINE IM_REP_EN
La stringa BOT ONLINE significa che è tutto a posto.
In quest'altro caso invece
mt -f /dev/st1 status
SCSI 2 tape drive:
File number=-1, block number=-1, partition=0.
Tape block size 0 bytes. Density code 0x0 (default).
Soft error count since last status=0
General status bits on (50000):
DR_OPEN IM_REP_EN
si è fatto su un dispositivo che è senza cassetta inserita.
Differenza dispositivo
Lo stesso nastro viene visto in due modi come
/dev/nst0
#e come
/dev/st0
Il primo è la maniera più sicura per utilizzarlo perchè dopo l'operazione rimane nel punto in cui ha fatto l'ultima scrittura. Il secondo st0 invece torna all'inizio dopo qualsiasi operazione e se si rifa una seconda scrittura la prima viene sovra scritta interamente o in parte.
Creiamo un tar su un nastro
Scriviamo su nastro
date; tar -vcf /dev/nst0 directory >> stato-nastro.log ; date
In questo modo logghiamo tutto quello che stiamo facendo sul file e invece a console ci da le due date e ore per sapere quanto tempo abbiamo impiegato
Leggiamo sul nastro
tar -tf /dev/nst0
immagini/
immagini/Rodini_2/
immagini/Rodini_2/RODINI_2_04.tif
immagini/Rodini_1Cb/
immagini/Rodini_1Cb/RODINI_1C_14.tif
Se facciamo ctrl+c lui lascia il lavoro dove siamo e se rieseguiamo il comando per listare le directory ricomincia dove eravamo arrivati. Da un piccolo errore perchè non trova l'inzio del file tar
root@nirvana:~# tar -tf /dev/nst0
tar: This does not look like a tar archive
tar: Skipping to next header
immagini/Rodini_1Cb/RODINI_1C_15.tif
immagini/Atlante Rodini 1a/
immagini/Atlante Rodini 1a/0001.tif
immagini/Atlante Rodini 1a/0004.tif
immagini/Atlante Rodini 1a/0006.tif
immagini/Atlante Rodini 1a/0005.tif
immagini/Atlante Rodini 1a/0007.tif
Insieme di comandi utili
# Cancella la cassetta:
mt -f /dev/st0 erase
# Puoi andare avanti e indietro nella cassetta con i seguenti comandi:
# Vai alla fine dei dati della cassetta:
mt -f /dev/nst0 eod
#Vai al record precedente:
mt -f /dev/nst0 bsfm 1
# Record successivo:
mt -f /dev/nst0 fsf 1
#Espelli la cassetta:
mt -f /dev/st0 offline
Differenza di un tar
Ecco una prova di quello che succede
Creiamo l'ambiente
giuseppe@peppe-laptop-hp:/tmp$ mkdir prova
giuseppe@peppe-laptop-hp:/tmp$ touch prova/aaaa
giuseppe@peppe-laptop-hp:/tmp$ touch prova/bb
giuseppe@peppe-laptop-hp:/tmp$ touch prova/cc
giuseppe@peppe-laptop-hp:/tmp$ tar -cvzf proviamo.tar.gz prova/
prova/
prova/aaaa
prova/cc
prova/bb
Verifichiamo se ci sono differenze
giuseppe@peppe-laptop-hp:/tmp$ tar -df proviamo.tar.gz prova
Il comando non ha dato nessuna differenza quindi sono uguali.
Proviamo a creare una differenza e rilanciare il comando
giuseppe@peppe-laptop-hp:/tmp$ rm prova/bb
giuseppe@peppe-laptop-hp:/tmp$ tar -df proviamo.tar.gz prova
tar: prova/bb: attenzione: funzione "stat" non riuscita: File o directory non esistente
Proviamo ad imbrogliarlo
giuseppe@peppe-laptop-hp:/tmp$ tar -df proviamo.tar.gz prova/
tar: prova/bb: attenzione: funzione "stat" non riuscita: File o directory non esistente
giuseppe@peppe-laptop-hp:/tmp$ touch prova/bb
giuseppe@peppe-laptop-hp:/tmp$ tar -df proviamo.tar.gz prova/
prova/bb: Gli orari di modifica sono diversi
giuseppe@peppe-laptop-hp:/tmp$
troppo furbo non ci si riesce
versione della pagina: 5, ultima modifica: 17 Nov 2011 11:06