BackupCatalog is waiting for an appendable Volume

508 views
Skip to first unread message

Emanoel Iran

unread,
Sep 13, 2017, 10:30:13 AM9/13/17
to Bacula Backup-Pt-Br
Boa tarde Pessoal, estou usando como base o tópico "https://groups.google.com/forum/#!topic/bacula-backup-pt-br/TtnieZ6UeQc" pois pelas minhas pesquisas aqui, acho que é semelhante ao meu problema.

O meu servidor de Backup estava funcionando normalmente derrempente começou a apresentar o seguinte erro:

"BackupCatalog is waiting for an appendable Volume"

Não compreendo o motivo que esta apresentando esse erro, a configuração do  Pool  e do Storage estão da seguinte maneira:

Pool {
  Name = File
  Pool Type = Backup
  Recycle = yes                       # Bacula can automatically recycle Volumes
  AutoPrune = yes                     # Prune expired volumes
  Volume Retention = 365 days         # one year
  Maximum Volume Bytes = 50G          # Limit Volume size to something reasonab$
  Maximum Volumes = 100               # Limit number of Volumes in Pool
  Label Format = "Vol-" 

Storage {
  Name = File1
  Address = 192.168.9.247
  SDPort = 9103
#  Password = HquwNP52V771LLWStZahj15LgL53hDs/8M7UcXKx5Io7
  Password = Ux3Y6DKAu2Fa4jX4CZ4Hhsg4XJ346R2fkVuyNI489U9q
  Device = FileChgr1
  Media Type = File1
  Maximum Concurrent Jobs = 20

Esse é o retorno do comando list volume
*list volume
Pool: Default
No results to list.
Pool: File
+---------+------------+-----------+---------+----------------+----------+--------------+---------+------+-----------+-----------+---------------------+------------+
| MediaId | VolumeName | VolStatus | Enabled | VolBytes       | VolFiles | VolRetention | Recycle | Slot | InChanger | MediaType | LastWritten         | ExpiresIn  |
+---------+------------+-----------+---------+----------------+----------+--------------+---------+------+-----------+-----------+---------------------+------------+
|       1 | Vol-0001   | Error     |       1 |    766,128,578 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | 2016-09-20 10:31:02 |    607,277 |
|       4 | Vol-0004   | Full      |       1 |  5,844,179,434 |        1 |   31,536,000 |       1 |    0 |         0 | File1     | 2016-09-20 14:29:43 |    621,598 |
|       5 | Vol-0005   | Full      |       1 |     16,902,348 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | 2016-09-20 14:34:48 |    621,903 |
|       6 | Vol-0006   | Full      |       1 |            204 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|       7 | Vol-0007   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|       8 | Vol-0008   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|       9 | Vol-0009   | Error     |       1 |          2,344 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | 2016-09-20 15:19:51 |    624,606 |
|      10 | Vol-0010   | Error     |       1 | 39,787,433,068 |        9 |   31,536,000 |       1 |    0 |         0 | File1     | 2016-09-28 05:21:52 |  1,279,927 |
|      25 | Vol-0025   | Error     |       1 | 17,076,436,890 |        3 |   31,536,000 |       1 |    0 |         0 | File1     | 2017-09-06 05:00:21 | 30,913,836 |
|     665 | Vol-0665   | Error     |       1 |          1,168 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | 2017-03-07 12:42:16 | 15,130,351 |
|     702 | Vol-0702   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       


|     779 | Vol-0779   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|     780 | Vol-0780   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|     781 | Vol-0781   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|     782 | Vol-0782   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|     783 | Vol-0783   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|     784 | Vol-0784   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|     785 | Vol-0785   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|     786 | Vol-0786   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|     787 | Vol-0787   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|     788 | Vol-0788   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|     789 | Vol-0789   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|     790 | Vol-0790   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|     791 | Vol-0791   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
+---------+------------+-----------+---------+----------------+----------+--------------+---------+------+-----------+-----------+---------------------+------------+

também gostaria de saber como se faz o purge destes arquivos com "error"

Wanderlei Huttel

unread,
Sep 13, 2017, 10:44:52 AM9/13/17
to bacula-ba...@googlegroups.com
Olá Emanoel,
Este  erro na verdade não é uma mensagem de erro, mas sim uma mensagem dizendo que o bacula não encontrou nenhum volume para escrever. Provavelmente você ja atingiu 100 volumes, ou então tinha alguma outra configuração na pool e esqueceu de atualizar os volumes que já existiam com o comando update no bconsole
update
1  - volume parameters
14 - all volumes from all pools

O comando list pool é para mostrar os volumes da pool e o número máximo de volumes permitidos.

No meu git tem um script que você precisa adaptar para dar um purge nos volumes e o bacula poder reutilizá-los
https://github.com/wanderleihuttel/bacula-utils/blob/master/conf/scripts/_delete_multiples_volumes.sh


Atenciosamente 

Wanderlei Hüttel

--
Você recebeu essa mensagem porque está inscrito no grupo "Bacula Backup-Pt-Br" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para bacula-backup-pt-br+unsub...@googlegroups.com.
Para postar nesse grupo, envie um e-mail para bacula-backup-pt-br@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/bacula-backup-pt-br.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/bacula-backup-pt-br/aa8fd891-5b4d-4e48-b1d5-beb6b56f1046%40googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.

Emanoel Iran

unread,
Sep 13, 2017, 12:27:04 PM9/13/17
to Bacula Backup-Pt-Br

Boa tarde!
Wanderlei

Você está certo. abaixo o resultado dos comandos

*update
Using Catalog "MyCatalog"
Update choice:
     1: Volume parameters
     2: Pool from resource
     3: Slots from autochanger
     4: Long term statistics
     5: Snapshot parameters
Choose catalog item to update (1-5): 1
Parameters to modify:
     1: Volume Status
     2: Volume Retention Period
     3: Volume Use Duration
     4: Maximum Volume Jobs
     5: Maximum Volume Files
     6: Maximum Volume Bytes
     7: Recycle Flag
     8: Slot
     9: InChanger Flag
    10: Volume Files
    11: Pool
    12: Volume from Pool
    13: All Volumes from Pool
    14: All Volumes from all Pools
    15: Enabled
    16: RecyclePool
    17: Action On Purge
    18: Done
Select parameter to modify (1-18): 14

Error updating Volume records: ERR=bdb.h:105 Update failed: affected_rows=0 for UPDATE Media SET ActionOnPurge=0, Recycle=1,VolRetention=31536000,VolUseDuration=0,MaxVolJobs=0,MaxVolFiles=0,MaxVolBytes=53687091200,RecyclePoolId=0 WHERE PoolId=1

All Volume defaults updated from "File" Pool record.

Error updating Volume records: ERR=bdb.h:105 Update failed: affected_rows=0 for UPDATE Media SET ActionOnPurge=0, Recycle=1,VolRetention=31536000,VolUseDuration=0,MaxVolJobs=0,MaxVolFiles=0,MaxVolBytes=0,RecyclePoolId=0 WHERE PoolId=3

All Volume defaults updated from "diaria" Pool record.
Error updating Volume records: ERR=bdb.h:105 Update failed: affected_rows=0 for UPDATE Media SET ActionOnPurge=0, Recycle=1,VolRetention=2592000,VolUseDuration=0,MaxVolJobs=20,MaxVolFiles=0,MaxVolBytes=5368709120,RecyclePoolId=0 WHERE PoolId=5

All Volume defaults updated from "mensal" Pool record.
All Volume defaults updated from "anual" Pool record.
All Volume defaults updated from "anualOL" Pool record.
All Volume defaults updated from "mensalOL" Pool record.

##################

*list pool
+--------+----------+---------+---------+----------+-------------+
| PoolId | Name     | NumVols | MaxVols | PoolType | LabelFormat |
+--------+----------+---------+---------+----------+-------------+
|      1 | Default  |       0 |     100 | Backup   | *           |
|      2 | File     |     100 |     100 | Backup   | Vol-        |
|      3 | Scratch  |       0 |       0 | Backup   | *           |
|      4 | diaria   |     612 |       0 | Backup   | diaria-     |
|      5 | semanal  |       0 |       0 | Backup   | semanal-    |
|      6 | mensal   |     732 |       0 | Backup   | mensal-     |
|      7 | anual    |      10 |       0 | Backup   | anual-      |
|      8 | anualOL  |       3 |       0 | Backup   | anualOL-    |
|      9 | mensalOL |      56 |       0 | Backup   | mensalOL    |
+--------+----------+---------+---------+----------+-------------+


Se meu inglês estiver correto os erros se refere a pool 1, 3 e 5, correto? e como resolvo o problema do limite de 100 volumes, simplesmente comento a linha " Maximum Volumes = 100" na Pool? e reinicio o bacula-dir?

Para postar nesse grupo, envie um e-mail para bacula-ba...@googlegroups.com.

Wanderlei Huttel

unread,
Sep 13, 2017, 12:54:05 PM9/13/17
to bacula-ba...@googlegroups.com
Olá Emanoel

Os erros do update são normais, pois não existem volumes nessas pools.
Você deve estar utilizando uma versão mais antiga onde isso não estava corrigido.

Você pode comentar a linha "Maximum Volumes = 100", porém você não vai ter nenhum limitador de volumes,  (OK sem problemas), porém dependendo das retenções pode encher o disco do servidor.

Pelo que vi no "list volumes" do primeiro email anterior você tinha uns 20 volumes de 50GB com erro, dando um purge neles você já recuperaria 1TB aproximadmente.
Caso retire a opção "Maximum Volumes ou aumente o valor, não esquecer de rodar o update no bconsole.

update 
1  - volume parameters
14 - all volumes from all pools
Atenciosamente 

Wanderlei Hüttel

Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para bacula-backup-pt-br+unsubscribe...@googlegroups.com.

--
Você recebeu essa mensagem porque está inscrito no grupo "Bacula Backup-Pt-Br" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para bacula-backup-pt-br+unsub...@googlegroups.com.
Para postar nesse grupo, envie um e-mail para bacula-backup-pt-br@googlegroups.com.

Emanoel Iran

unread,
Sep 13, 2017, 1:14:39 PM9/13/17
to Bacula Backup-Pt-Br
Wanderlei, muito obrigado pelo seu tempo e explicações

Mais em relação ao purge, gostaria que, se possível você fizesse um passo-a-passo, para que eu possa proceder com segurança a remoção/purge dos arquivos

|     779 | Vol-0779   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|     780 | Vol-0780   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|     781 | Vol-0781   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|     782 | Vol-0782   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|     783 | Vol-0783   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|     784 | Vol-0784   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|     785 | Vol-0785   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|     786 | Vol-0786   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|     787 | Vol-0787   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|     788 | Vol-0788   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|     789 | Vol-0789   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|     790 | Vol-0790   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
|     791 | Vol-0791   | Error     |       1 |              0 |        0 |   31,536,000 |       1 |    0 |         0 | File1     | NULL                | NULL       |
+---------+------------+-----------+---------+----------------+----------+--------------+---------+------+-----------+-----------+---------------------+----------

peguei o script que você mencionou mais ainda sim estou inseguro em usa-lo para não fazer besteira.

Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para bacula-backup-pt-br+unsub...@googlegroups.com.

--
Você recebeu essa mensagem porque está inscrito no grupo "Bacula Backup-Pt-Br" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para bacula-backup-pt-br+unsub...@googlegroups.com.
Para postar nesse grupo, envie um e-mail para bacula-ba...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/bacula-backup-pt-br.

Emanoel Iran

unread,
Sep 13, 2017, 1:45:43 PM9/13/17
to Bacula Backup-Pt-Br
Como você vê na imagem abaixo existem volumes que estão zerados, ok, mais existem volumes que contem alguma coisa, como por exemplo o "diaria-0674", minha pergunta é este volumes com erro que contem alguma informação devo purge? e se eu precisar restaura um backup que precise deste volume com erro ?



Rodei o script mesmo com medo

+--------+----------+---------+---------+----------+-------------+
| PoolId | Name     | NumVols | MaxVols | PoolType | LabelFormat |
+--------+----------+---------+---------+----------+-------------+
|      1 | Default  |       0 |       0 | Backup   | *           |
|      2 | File     |     101 |       0 | Backup   | Vol-        |
|      3 | Scratch  |       0 |       0 | Backup   | *           |
|      4 | diaria   |     612 |       0 | Backup   | diaria-     |
|      5 | semanal  |       0 |       0 | Backup   | semanal-    |
|      6 | mensal   |     732 |       0 | Backup   | mensal-     |
|      7 | anual    |      10 |       0 | Backup   | anual-      |
|      8 | anualOL  |       3 |       0 | Backup   | anualOL-    |
|      9 | mensalOL |      56 |       0 | Backup   | mensalOL    |
+--------+----------+---------+---------+----------+-------------+
Digite o nome da Pool que gostaria de excluir os volumes: diaria

digite o status dos volumes que gostaria de verificar (Error, Used, Full, Append, Recycled): Error

diaria-0662
diaria-0663
diaria-0673
diaria-0674
Foram encontrados 608 volumes com o Status Error

Tem certeza que deseja excluir todos os 608 volumes? Esta operacao e irreversivel! (S-Sim/N-Nao)

disse "Não" pois existem volumes com alguma informação que ao meu vê será necessário para uma restauração.

obrigado

Wanderlei Huttel

unread,
Sep 13, 2017, 1:57:54 PM9/13/17
to bacula-ba...@googlegroups.com
Emanoel

O script não apaga nada se você não editar ele.

Ali na linha 22 (echo "delete volume=$volname pool=$pool yes" ;)
Ao invés de usar o delete você usa o purge, ele vai simplesmente escrever o comando e não vai executar nada.
Use o purge, pois basta reciclar os volumes, não precisa apagar.
echo "purge volume=$volname pool=$pool yes"  # Apenas imprime
echo "purge volume=$volname pool=$pool yes"  | bconsole # Executa o comando no bconsole *cuidado*

Para ele executar o comando no bconsole precisa passar o bconsole.

No caso dos volumes com erro, é bem provável que você não consiga restaurar nada, você pode tentar restaurar algo com os utilitários o BLS e BEXTRACT.

Vi que você está utilizando uma versão mais antiga do webacula, se interessar tem uma versão no meu git mais atualizada
https://github.com/wanderleihuttel/webacula/wiki (telas)



Atenciosamente 

Wanderlei Hüttel

obrigado


Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para bacula-backup-pt-br+unsubscribe...@googlegroups.com.

--
Você recebeu essa mensagem porque está inscrito no grupo "Bacula Backup-Pt-Br" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para bacula-backup-pt-br+unsubscribe...@googlegroups.com.

Para postar nesse grupo, envie um e-mail para bacula-ba...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/bacula-backup-pt-br.

--
Você recebeu essa mensagem porque está inscrito no grupo "Bacula Backup-Pt-Br" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para bacula-backup-pt-br+unsub...@googlegroups.com.
Para postar nesse grupo, envie um e-mail para bacula-backup-pt-br@googlegroups.com.

Emanoel Iran

unread,
Sep 13, 2017, 2:17:40 PM9/13/17
to Bacula Backup-Pt-Br
Wanderlei

fica assim ?

if [ "$confirm" == "s" ] || [ "$confirm" == "S" ]; then
   for volname in $(echo "list media pool=$pool" | bconsole  | grep "|" | grep -v "MediaId" | grep "$volstatus" | cut -d "|" -f3 | sed 's/ //g'); do
        echo "purge volume=$volname pool=$pool yes" ;  # Apenas imprime
      #echo "delete volume=$volname pool=$pool yes" ;
        # Descomentar a linha abaixo para efetuar a exclusão dos volumes no catálogo
      #echo "delete volume=$volname pool=$pool yes" | bconsole ;
      echo "purge volume=$volname pool=$pool yes"  | bconsole ; # Executa o comando no bconsole *cuidado*
      
# Se precisar excluir fisicamente pode descomentar o comando abaixo
      # rm -f /backup/$volname
   done
   #echo "Excluindo volumes..."
   echo "Expurgando volumes..."
else
   echo "Operacao abortada!"
fi

obrigado!
obrigado


Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para bacula-backup-pt-br+unsub...@googlegroups.com.

--
Você recebeu essa mensagem porque está inscrito no grupo "Bacula Backup-Pt-Br" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para bacula-backup-pt-br+unsub...@googlegroups.com.
Para postar nesse grupo, envie um e-mail para bacula-ba...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/bacula-backup-pt-br.

--
Você recebeu essa mensagem porque está inscrito no grupo "Bacula Backup-Pt-Br" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para bacula-backup-pt-br+unsub...@googlegroups.com.
Para postar nesse grupo, envie um e-mail para bacula-ba...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/bacula-backup-pt-br.

Wanderlei Huttel

unread,
Sep 13, 2017, 2:35:20 PM9/13/17
to bacula-ba...@googlegroups.com
Isso mesmo Emanoel!

Atenciosamente 

Wanderlei Hüttel

Wanderlei

fica assim ?

obrigado


Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para bacula-backup-pt-br+unsubscribe...@googlegroups.com.

--
Você recebeu essa mensagem porque está inscrito no grupo "Bacula Backup-Pt-Br" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para bacula-backup-pt-br+unsubscribe...@googlegroups.com.

Para postar nesse grupo, envie um e-mail para bacula-ba...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/bacula-backup-pt-br.

--
Você recebeu essa mensagem porque está inscrito no grupo "Bacula Backup-Pt-Br" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para bacula-backup-pt-br+unsubscribe...@googlegroups.com.

Para postar nesse grupo, envie um e-mail para bacula-ba...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/bacula-backup-pt-br.

--
Você recebeu essa mensagem porque está inscrito no grupo "Bacula Backup-Pt-Br" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para bacula-backup-pt-br+unsub...@googlegroups.com.
Para postar nesse grupo, envie um e-mail para bacula-backup-pt-br@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages