[Linux-Biella] E ancora sul DAT
LeOS
linux@bilug.linux.it
Mon, 18 Nov 2002 10:25:22 +0100
Luca Bertoncello wrote:
>Ciao a tutti!
>
>Un'altra cosa strana che mi capita con il DAT e' questa:
>Sembra proprio che, dopo aver scritto un file, il fetente faccia un rewind.
>
>
a conclusione di questa travagliata serie di tread voglio condividere
con voi le mie esperienze con il DAT
0: do per scontato che abbiate compilato il kernel con supporto per DAT
e installato il package mt-st
0.1: si tratta di un dispositivo sequenziale, si comporta esattamente
come una audiocassetta, con tanto di "contagiri", e di "rewind e fast
forward".
il posizionamento del tape avviene in due modi:
mt-st -f device rewind - riavvolge il tape
mt-st -f device tell - restituisce la posizione corrente (in blocchi)
mt-st -f device seek [posizione] - posiziona la il tape nel blocco definito
detto questo
1: conviene creare un link simbolico /dev/tape (ln -s /dev/st0 /dev/tape)
2: sul tape possono essere salvati esclusivamente file .tar quindi non
poerdete tempo a cercar di capire come mai avrete un "input/output
error" cercando di copiare generici files sul dat
3: non e' vero che salvando un file, poi un altro poi un altro ancora
puntando a /dev/tape (linkato da /dev/st0) riavvolge sempre, lo ho
verificato col DAT aperto, inoltre la corretta sequenza sarebbe:
mt-st -f device tell
ed ottengo dove mi trovo
copy file.tar /dev/tape
e copio il file in questione
mt-st -f device tell
e vedo dove mi trovo dopo la copia del file
ATTENZIONE ultima considerazione e non meno importante delle altre:
io copio in po' di roba sul dat
mi segno a ke blocco mi trovo, e.g. block 5730
e poi tolgo il tape.
domani voglio salvare altra roba sempre su quel nastro e ovviamente devo
cominciare a scrivere dal blocco 5730 per non cancellare nulla
quindi speranzoso eseguo il comando:
mt-st -f device seek 5730
ottengo un bel "input output error"
dopo un po' di prove ho dedotto (ma aspetto conferma da voi) che NON e'
possibile posizionarsi alla fine dell'atrea scritta, come fare quindi?
io ho risolto creando un file vuoto chiamato EOT che non e' altro che un
tar cf eot /dev/null e copiandolo sul tape alla fine di ogni sessione di
salvataggio di modo che io possa posizionarmi immediatamente prima di
esso quando voglio creare una nuova sessione di salvataggio.
spero di essere stato chiaro
btw, io sto realizzando un software di backup, scritto in perl, che
consente l'archiviazione in un semplice database del contenuto di ogni
nastro che viene "inizializzato" scrivendoci un progressivo all'inizio.
a fronte di questa identificazione, e' possibile, grazie al database,
recuperare il contenuto di ogni singola sessione di backup eseguita sul
tape.
per ora ho terminato la parte di inizializzazione del nastro, e
l'identificazione dello stesso, piu' qualche cazzatina tipo eject,
rewind, lock eccetera. se qualcuno volesse dare un'occhiata al codice,
posso mailarlo privatamente, o metterlo sul sito, si tratta di qualcosa
come 5 kb in .tar.gz
buona vita a tutti