Backup em fita DAT com multivolume (LTO3)

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

[ Hits: 31.196 ]

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

Aumentando Resize (Tamanho) do HD Virtual VMDK - Debian 8 Jessie

Bacula Server 7.0.3 com PostgreSQL no Debian

Instalando FreeNAS 8.3.0 e criando Storage iSCSI

Backup com o FSArchiver

  
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
Linux banner
Linux banner

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts