Backup em fita DAT com multivolume (LTO3)

Backup em fita Dat com multivolume (LTO3) usando mt, mtx e tar num DELL PowerVault 124T.

[ Hits: 36.148 ]

Por: Joca (Altemir Braz Dantas Junior) em 10/02/2011


Instalação



1. Instalando os pacotes necessários, como uso Debian:

# apt-get install mt-st mtx

2. Verificando se o Linux reconheceu o driver:

# dmesg | grep scsi
[ 1.343286] scsi0 : sata_via
[ 1.354041] scsi1 : sata_via
[ 1.748725] scsi 0:0:0:0: Direct-Access ATA ST32000542AS CC34 PQ: 0 ANSI: 5
[ 2.132693] scsi 1:0:0:0: Direct-Access ATA ST32000542AS CC34 PQ: 0 ANSI: 5
[ 2.352554] scsi2 : ioc0: LSI53C1020A A1, FwRev=01032700h, Ports=1, MaxQ=255, IRQ=24
[ 4.507518] scsi 2:0:6:0: Sequential-Access IBM ULTRIUM-TD3 93G6 PQ: 0 ANSI: 3
[ 4.507588] scsi 2:0:6:0: Information Units disabled by blacklist
[ 4.507649] scsi target2:0:6: Beginning Domain Validation
[ 4.549424] scsi target2:0:6: Ending Domain Validation
[ 4.549555] scsi target2:0:6: FAST-80 WIDE SCSI 160.0 MB/s DT (12.5 ns, offset 127)
[ 4.556469] scsi 2:0:6:1: Medium Changer DELL PV-124T 0075 PQ: 0 ANSI: 2
[ 59.901052] ch 2:0:6:1: Attached scsi changer ch0
[ 59.901625] st 2:0:6:0: Attached scsi tape st0
[ 60.058964] sd 0:0:0:0: Attached scsi generic sg0 type 0
[ 60.059805] sd 1:0:0:0: Attached scsi generic sg1 type 0
[ 60.060737] st 2:0:6:0: Attached scsi generic sg2 type 1
[ 60.062052] ch 2:0:6:1: Attached scsi generic sg3 type 8


No meu caso listei o drive no device /dev/st0:

[ 4.507518] scsi 2:0:6:0: Sequential-Access IBM ULTRIUM-TD3 93G6 PQ: 0 ANSI: 3
[ 59.901625] st 2:0:6:0: Attached scsi tape st0


E listei o changer no device /dev/sg3:

[ 4.556469] scsi 2:0:6:1: Medium Changer DELL PV-124T 0075 PQ: 0 ANSI: 2
[ 60.062052] ch 2:0:6:1: Attached scsi generic sg3 type 8


3. Caso não encontre nada, levante os módulos st, mptbase e mptscsih e verifique de novo no dmesg:

# modprobe st
# modprobe mptbase
# modprobe mptscsih


4. Criei um link do sg3 para changer pois o comando mtx por padrão procura nele:

# ln /dev/sg3 /dev/changer

Comandos para o conhecimento

Agora alguns comandos para conhecimento.

mtx:

# mtx status
Storage Changer /dev/changer:1 Drives, 8 Slots ( 0 Import/Export )
Data Transfer Element 0:Empty                        
      Storage Element 1:Full :VolumeTag=000011L3 
      Storage Element 2:Full :VolumeTag=000012L3                        
      Storage Element 3:Full :VolumeTag=000013L3                        
      Storage Element 4:Full :VolumeTag=000014L3 
      Storage Element 5:Full :VolumeTag=000015L3 
      Storage Element 6:Full :VolumeTag=000016L3 
      Storage Element 7:Full :VolumeTag=000017L3 
      Storage Element 8:Empty

A saída acima mostra que não existe nenhuma fita no drive aonde vamos gravar o backup e existem 8 slots, no meu caso no Left Magazine com 7 fitas na espera.

# mtx load 1 0

Faz com que a fita que está no "Storage Element 1" vá para o drive "Data Transfer Element 0", ficando assim:

# mtx status
Storage Changer /dev/changer:1 Drives, 8 Slots ( 0 Import/Export )
Data Transfer Element 0:Full (Storage Element 1 Loaded):VolumeTag = 000011L3                 
      Storage Element 1:Empty 
      Storage Element 2:Full :VolumeTag=000012L3                        
      Storage Element 3:Full :VolumeTag=000013L3                        
      Storage Element 4:Full :VolumeTag=000014L3 
      Storage Element 5:Full :VolumeTag=000015L3 
      Storage Element 6:Full :VolumeTag=000016L3 
      Storage Element 7:Full :VolumeTag=000017L3 
      Storage Element 8:Empty 

Para retornar a fita do drive para o storage número 1 uso o unload 1 0:

# mtx unload 1 0

Você pode sempre verificar com o mtx status.

Então para colocar a fita 7 no drive você executaria:

# mtx load 7 0

E para voltar no mesmo lugar:

# mtx unload 7 0

Você também pode transferir a fita de um lugar do Storage Element para outro. Ex.: Transferir do 7 para o 8:

# mtx transfer 7 8

Também pode inverter a posição das fitas com o invert:

# mtx invert 4 3

Existe também o mtx next, que tira a fita do drive e coloca a próxima fita usando a sequência do storage

Para maiores informações:

# man mtx

Os meios de uso do mt mais impotantes são:

# mt -f /dev/st0 rewind (rebobinar a fita)
# mt -f /dev/st0 erase (formatar a fita)
# mt -f /dev/st0 eject (ejeta a fita)

Para maiores informações:

# man mt

tar:

# tar -c -v -M -L 417333248 --new-volume-script=/etc/scripts/script-multi.sh -f /dev/st0 /diretorio-a-ser-becapeado

Onde:
  • -c: cria
  • -v: verbose
  • -M: opção multivolume
  • -L: tamanho que será gravado para pedir outra fita N*1024
  • --new-volume-script=/etc/scripts/script-multi.sh: na hora que ele acabar de gravar aquela quantidade estipulada no -L e faltar arquivo para gravar ele chama o script
  • -f: o arquivo aonde vai gravar

Para listar os arquivos com multivolume:

# tar -t -v -M -f /dev/st0

Para recuperar um arquivo:

# tar -x -v -M -f /dev/st0 arquivo_a_ser_recuperado

Com essas informações criei um script em shell para fazer o backup.

    Próxima página

Páginas do artigo
   1. Instalação
   2. Scripts em shell para backup
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Utilizando criptografia LUKS em discos externos

Backup com o FSArchiver

Recovery de um desastre total | utilizadores Bacula "backup"

Backups remotos com rSync e chaves SSH

Clonezilla - Servidor de imagens (Parte II)

  
Comentários
[1] Comentário enviado por removido em 10/02/2011 - 21:29h

Muito bom. Parabéns. Já tive que fazer muito isso, queria ter encontrado estas informações antes. Valeu.



Abraço.

[2] Comentário enviado por paulorvojr em 11/02/2011 - 02:07h

Excelente! prefiro muito mais efetuar backup em fitas dat, lto e no braço, em scripts, nada de programinhas de backup modo gráfico sux.

muito boa a ajuda, ainda mais pra quem usa servers dell

mas, precisa mesmo de # apt-get install mt-st mtx?, ao implementar o server isso ja foi sanado, mas nada de mau fara o comando msm.

abraços

[3] Comentário enviado por removido em 11/02/2011 - 17:18h

Show!!! Parabéns!!!

[4] Comentário enviado por jocajuni em 14/02/2011 - 11:26h

Obrigado a todos,

entao respondendo ao Paulo, vc só vai necessitar rodar "apt-get install mt-st mtx" caso nao tenha eles instalados.

[]s
Altemir Braz Dantas Junior (Jocajuni)

[5] Comentário enviado por DanielVieceli755 em 14/02/2011 - 13:06h

Muito Bom.

Abraço

[6] Comentário enviado por kbcasagrande em 14/02/2011 - 19:59h

muito interessante...
mostra que não precisamos de ferramentas proprietarias com as da norton e HP

[7] Comentário enviado por marcelloconti em 01/07/2011 - 14:27h

Muito bom. Parabéns pelo artigo.

[8] Comentário enviado por lucaslst em 21/10/2011 - 08:59h

Testei todos os scripts e funcionou...mas fiquei com uma duvida. Caso eu rode para fazer backup de duas coisas diferentes, ao final do backup do segundo, ele sobrescreve o do primeiro. o que eu faco??

[9] Comentário enviado por jocajuni em 21/10/2011 - 10:35h

Caros Lucas, eu não sei se entendi direito.

Oque eu entendi foi vc rodou o backup multivolume blz ai sobrou espaco
e vc queria acrecentar mais coisas nesta outra fita ai vc quer saber se rodar o backup novamente sobreescreve?

Se for fazer novamente via script vc teria que comentar a linha de formatar a fita
#mt -f $DEV_DRIVE erase

e alterar a opção do tar -c para tar -t
tar -c -v -M -L $TAM_FITA --new-volume-script=/etc/scripts/script-multi.sh -f $DEV_DRIVE $DIRETORIO_BASE
ficaria
tar -t -v -M -L $TAM_FITA --new-volume-script=/etc/scripts/script-multi.sh -f $DEV_DRIVE $DIRETORIO_BASE


Se for soh para adicionar umas coisinhas que faltaram que nao tera que usar outra fita vc pode fazer manualmente
tar -t -v -f /dev/st0 /caminho_do_que_vc_vai_adicionar


[]s
Altemir Braz Dantas Junior (jocajuni)
http://acessa.me/@joca">http://acessa.me/@joca
http://acessa.me - crie seu atendimento online gratuito


[10] Comentário enviado por melorymonie em 06/09/2012 - 08:00h

Bom dia, esse comandos funcionam quando se trata de um robô de fitas?
No meu caso são fita LTO5.
Tentei usar esses comandos mas o resultado foi diferente.

#ls -ltr /dev/sg*
crw-rw---- 2 root tape 21, 3 Sep 6 05:17 /dev/sg3

Pelo ls acima, acredito que ele tenha reconhecido a tape. No Dmesg ele me informa também o modelo:

[ 6.533499] QLogic Fibre Channel HBA Driver: 8.03.01-k6
[ 6.533500] QLogic QLE2562 - PCI-Express Dual Channel 8Gb Fibre Channel HBA
[ 6.533501] ISP2532: PCIe (5.0GT/s x4) @ 0000:04:00.1 hdma+, host#=4, fw=4.04.00 (80)
[ 6.754790] scsi 1:0:0:0: Sequential-Access IBM ULT3580-HH5 B6W1 PQ: 0 ANSI: 6


# mtx status
mtx: Request Sense: Long Report=yes
mtx: Request Sense: Valid Residual=no
mtx: Request Sense: Error Code=70 (Current)
mtx: Request Sense: Sense Key=Illegal Request
mtx: Request Sense: FileMark=no
mtx: Request Sense: EOM=no
mtx: Request Sense: ILI=no
mtx: Request Sense: Additional Sense Code = 20
mtx: Request Sense: Additional Sense Qualifier = 00
mtx: Request Sense: Field in Error = 00
mtx: Request Sense: BPV=no
mtx: Request Sense: Error in CDB=yes
mtx: Request Sense: SKSV=yes
mtx: Request Sense: Field Pointer = 00 00
READ ELEMENT STATUS Command Failed

#mt -f /dev/sg3 rewind
/dev/sg3: Operation not permitted

Alguma sugestão?
Obrigada.

[11] Comentário enviado por jocajuni em 06/09/2012 - 10:55h

Execute esse comando e cole o resultado aqui

# lsscsi

caso nao tenha instale - Debian ou Distros baseadas nele

# apt-get install lsscsi


[]s
Joca

[12] Comentário enviado por melorymonie em 12/09/2012 - 19:06h

Ele reconhece corretamente a minha Tape.
Só para acrescentar, a tape está ligada a um servidor debian através de um cabo de fibra óptica.

lsscsi
[0:0:32:0] enclosu DP BACKPLANE 1.09 -
[0:2:0:0] disk DELL PERC 6/i 1.22 /dev/sda
[0:2:1:0] disk DELL PERC 6/i 1.22 /dev/sdb
[1:0:0:0] tape IBM ULT3580-HH5 B6W1 /dev/st0
[2:0:0:0] cd/dvd HL-DT-ST DVD+-RW GH70N A101 /dev/sr0

sudo tapeinfo -f /dev/st0
cannot open SCSI device '/dev/st0' - No medium found

$sudo mt -f /dev/st0 rewind
/dev/st0: No medium found

[13] Comentário enviado por newtec em 17/01/2014 - 08:49h


NÃO É NECESSÁRIO APAGAR A FITA ?

[14] Comentário enviado por celsoralima em 11/08/2015 - 11:02h


Olá, implementei um sistema de backup utilizando uma unidade de fita externa LTO 5 ULTRIUM 3000, ela é acompanha por uma placa SAS de controle. rodei o comando de busca dos dispositivos e ele me retornou o seguinte:
[ 6.612817] sd 0:0:0:1: Attached scsi generic sg2 type 0
[ 6.648377] scsi1 : hpsa
[ 6.651958] scsi 1:3:0:0: RAID HP P212 5.06 PQ: 0 ANSI: 5
[ 6.653725] scsi 1:2:0:0: Sequential-Access HP Ultrium 5-SCSI Z64D PQ: 0 ANSI: 6
[ 6.656088] scsi 1:3:0:0: Attached scsi generic sg3 type 12
[ 6.656270] scsi 1:2:0:0: Attached scsi generic sg4 type 1
[ 7.139588] st 1:2:0:0: Attached scsi tape st0
[ 7.173526] scsi2 : ahci
[ 7.174108] scsi3 : ahci
[ 7.174688] scsi4 : ahci
[ 7.175122] scsi5 : ahci
[ 7.175327] scsi6 : ahci
[ 7.175566] scsi7 : ahci
[ 8.869684] scsi 6:0:0:0: CD-ROM TEAC DV-W28S-VS G.V0 PQ: 0 ANSI: 5
[ 8.903590] sr0: scsi3-mmc drive: 24x/24x writer dvd-ram cd/rw xa/form2 cdda tray
[ 8.933421] sr 6:0:0:0: Attached scsi CD-ROM sr0
[ 8.933656] sr 6:0:0:0: Attached scsi generic sg5 type 5
[ 3480.528405] [<ffffffff81504037>] ? scsi_dispatch_cmd+0xb7/0x290
[ 3480.528409] [<ffffffff8150c998>] ? scsi_request_fn+0x48/0x580
[ 3480.528441] [<ffffffffc02b3481>] st_do_scsi.constprop.20+0x291/0x370 [st]
[ 3600.532119] [<ffffffff81504037>] ? scsi_dispatch_cmd+0xb7/0x290
[ 3600.532123] [<ffffffff8150c998>] ? scsi_request_fn+0x48/0x580
[ 3600.532152] [<ffffffffc02b3481>] st_do_scsi.constprop.20+0x291/0x370 [st]
[ 3720.536057] [<ffffffff81504037>] ? scsi_dispatch_cmd+0xb7/0x290
[ 3720.536061] [<ffffffff8150c998>] ? scsi_request_fn+0x48/0x580
[ 3720.536092] [<ffffffffc02b3481>] st_do_scsi.constprop.20+0x291/0x370 [st]
[ 3840.539964] [<ffffffff81504037>] ? scsi_dispatch_cmd+0xb7/0x290
[ 3840.539969] [<ffffffff8150c998>] ? scsi_request_fn+0x48/0x580
[ 3840.540002] [<ffffffffc02b3481>] st_do_scsi.constprop.20+0x291/0x370 [st]
[ 3960.543720] [<ffffffff81504037>] ? scsi_dispatch_cmd+0xb7/0x290
[ 3960.543724] [<ffffffff8150c998>] ? scsi_request_fn+0x48/0x580
[ 3960.543756] [<ffffffffc02b3481>] st_do_scsi.constprop.20+0x291/0x370 [st]
[ 4080.547601] [<ffffffff81504037>] ? scsi_dispatch_cmd+0xb7/0x290
[ 4080.547605] [<ffffffff8150c998>] ? scsi_request_fn+0x48/0x580
[ 4080.547634] [<ffffffffc02b3481>] st_do_scsi.constprop.20+0x291/0x370 [st]
[ 4200.551482] [<ffffffff81504037>] ? scsi_dispatch_cmd+0xb7/0x290
[ 4200.551487] [<ffffffff8150c998>] ? scsi_request_fn+0x48/0x580
[ 4200.551518] [<ffffffffc02b3481>] st_do_scsi.constprop.20+0x291/0x370 [st]
[ 4320.555385] [<ffffffff81504037>] ? scsi_dispatch_cmd+0xb7/0x290
[ 4320.555389] [<ffffffff8150c998>] ? scsi_request_fn+0x48/0x580
[ 4320.555421] [<ffffffffc02b3481>] st_do_scsi.constprop.20+0x291/0x370 [st]
[ 4440.559085] [<ffffffff81504037>] ? scsi_dispatch_cmd+0xb7/0x290
[ 4440.559090] [<ffffffff8150c998>] ? scsi_request_fn+0x48/0x580
[ 4440.559122] [<ffffffffc02b3481>] st_do_scsi.constprop.20+0x291/0x370 [st]
[ 4560.563031] [<ffffffff81504037>] ? scsi_dispatch_cmd+0xb7/0x290
[ 4560.563035] [<ffffffff8150c998>] ? scsi_request_fn+0x48/0x580
[ 4560.563067] [<ffffffffc02b3481>] st_do_scsi.constprop.20+0x291/0x370 [st]
[94579.762714] scsi8 : usb-storage 2-1:1.0
[94580.764196] scsi 8:0:0:0: Direct-Access Seagate Portable SF06 PQ: 0 ANSI: 4
[94580.764789] sd 8:0:0:0: Attached scsi generic sg6 type 0

Ao que entendi o que me interessa são essas linhas

[ 6.653725] scsi 1:2:0:0: Sequential-Access HP Ultrium 5-SCSI Z64D PQ: 0 ANSI: 6
[ 6.656270] scsi 1:2:0:0: Attached scsi generic sg4 type 1
[ 7.139588] st 1:2:0:0: Attached scsi tape st0

Mas no tutorial foi mencionado que foi "listado" (que comando ou onde devemos listar essas linhas para que o aplicativo entenda o que estamos tentando modular), duas combinações de linhas, uma para o dispositivo ser montado no "dev" st0 como "tape" e outra combinação para ser o "charger" que identifica em que canal a placa scsi está reconhecendo a unidade LTO (no meu caso é a sg4). O que não estou entendo é como eu devo fazer isso. E a outra linha que é mencionada para combinar com o charger eu não consegui identificar. Podem me ajudar?

[15] Comentário enviado por jocajuni em 11/08/2015 - 11:53h

Oi Celso o changer soh vai ter se vc tem se seu dispositivo aceita mais de 1 fita na unidade.
pelo que vi o seu soh aceita uma fita por vez.

Entao voce so ira usar os comandos mt e tar

[]s
Joca

[16] Comentário enviado por celsoralima em 19/08/2015 - 12:21h

ok Joca obrigado, vou adaptar seu tutorial à minha rotina e quando tiver algum resultado retorno com um comentário adicional.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts