Показаны сообщения с ярлыком bacula. Показать все сообщения
Показаны сообщения с ярлыком bacula. Показать все сообщения

пятница, 12 октября 2012 г.

Bacula: копирование последнего задания на ленту


Копирование последнего задания на ленту

/etc/bacula/bacula-dir.conf

Добавить:
Storage {
    Name = Tape-storage
    Address = bacula.example.org
    SDPort = 9103
    Password = "********"
    Device = LTO-4
    Media Type = LTO-4
    Maximum Concurrent Jobs = 4
}
Pool {
    Name = Tape-pool
    Pool Type = Backup
    Autoprune = yes
    Recycle = yes
    Storage = Tape-storage
}

/etc/bacula/baсula-sd.conf

Добавить:
Device {
    Name = LTO-4
    Media Type = LTO-4
    Archive Device = /dev/st0
    AutomaticMount = yes;
    AlwaysOpen = yes;
    RemovableMedia = yes;
    RandomAccess = no;
    Maximum File Size = 5GB
}

Описание клиента

Добавить (на примере client):
Job{
    Name = "client-copy"
    Type = Copy # Обязательно для копирования
    Level = Full
    Pool = client-pool # Обязательно для копирования
    Storage = client-storage # Обязательно для копирования
    Client = client-fd
    FileSet = "Empty Set"
    Schedule = client-copy-schedule
    Selection Type = SQL Query
    Selection Pattern = "
        SELECT DISTINCT Job.JobId,Job.StartTime FROM Job,Pool
        WHERE Pool.Name = 'client-pool' AND Pool.PoolId = Job.PoolId
        AND Job.Type = 'B' AND Job.JobStatus IN ('T','W')
        AND Job.jobBytes > 0
        AND Job.JobId NOT IN
            (SELECT PriorJobId FROM Job
            WHERE Type IN ('B','C')
            AND Job.JobStatus IN ('T','W')
            AND PriorJobId != 0)
        ORDER BY Job.StartTime
    "
    Spool Data = yes
    Maximum Concurrent Jobs = 4
    Messages = Daemon
}

Пул клиента

Изменить (на примере client):
Pool {
    Name = client-pool
    Pool Type = Backup
    Recycle = yes
    AutoPrune = yes
    Volume Retention = 31 days
    Maximum Volumes = 31
    LabelFormat = "client-"
    Next pool = Tape-pool # Обязательно для копирования
}

Расписание копирования

Добавить (на примере client):
Schedule {
    Name = client-copy-schedule
    Run = daily at 00:20
}

среда, 16 мая 2012 г.

scsi_tape из offline в running

После обновления и перезагрузки системы устройство st0 (scsi_tape) при обращении к нему из утилиты mt сообщало:
mt: /dev/st0: сбой rmtopen: Нет такого файла или каталога
В логе имеется дамп:
[   85.816029] st 14:0:3:0: Attempting to queue an ABORT message:CDB: 0x12 0x0 0x0 0x0 0xfe 0x0

[   85.816621] scsi14: At time of recovery, card was not paused



[   85.816631] >>>>>>>>>>>>>>>>>> Dump Card State Begins <<<<<<<<<<<<<<<<<


[   85.816633] scsi14: Dumping Card State at program address 0x31 Mode 0x11


и
[  115.830032] st 14:0:3:0: Device offlined - not ready after error recovery


Положение осложнялось еще и тем, что в момент обнаружения проблемы было запущено пробное резервное копирование с сервера БД на сервер резервных копий, а потому резких движений с сервером backup'ов делать не хотелось-бы.

На помощь пришла следующая команда:
# echo running > /sys/devices/pci0000\:00/0000\:00\:1c.1/0000\:05\:00.0/0000\:06\:04.0/host14/target14\:0\:3/14\:0\:3\:0/scsi_tape/st0/device/state
Т. е. принудительное выставление флага running

P.S.: с проблемами при загрузке мы еще разберемся!

P.P.S.: только что проверил - стриммер работает нормально. Стирает/пишет. Ошибок нет.

пятница, 13 апреля 2012 г.

Удаленное выполнение с использованием SSH

Выполняем скрипт...
ssh db2 "cmd.exe /C dir /B /S c:\\\\backup" |tr "\\\\" "/" | iconv -f cp866 -t utf-8 | grep `date --date="yesterday" +"%Y%m%d"`
... из bacula
File = "|/bin/bash /usr/local/bin/get-files_db2.sh"

среда, 11 апреля 2012 г.