Сегодня я столкнулся с проблемой, описанной на этом Сообщение на форуме сообщества Veeam. При определенных обстоятельствах Veeam случайно помечает легальную ленту как чистящую ленту, полностью удаляя ее из поля зрения консоли VBR. Нет доступного пользователю способа удалить ее из каталога, а также стирание, повторное сканирование или инвентаризация ленты не имеют никакого эффекта.
Симптомы:
В ваших журналах вы увидите следующие записи:
:: TapeDrive alert: The tape drive is due for routine cleaning:. Wait for the current operation to finish. Then use a cleaning cartridge. Check the tape drive user manual for device specific cleaning instructions.
:: TapeDrive alert: The last cleaning cartridge used in the tape drive has worn out:. Discard the worn out cleaning cartridge. Wait for the current operation to finish. Then use a new cleaning cartridge.
:: Marking tape <TapeName> as a cleaning cartridge
И вы заметите, что слот в вашей ленточной библиотеке волшебным образом исчез. Отсутствующий слот соответствует местоположению ленты, которую Veeam считает чистящим картриджем.
Похоже, это происходит, когда выполняется автоматический процесс очистки и срок действия указанной чистящей ленты истек. Следующая лента, которая входит в привод, кажется, помечается как чистящая лента. Это могут быть другие сценарии, которые вызывают это, но решение остается тем же.
Обратите внимание, что это предназначено только в качестве экстренного исправления. Самостоятельное изменение базы данных Veeam не поддерживается. Хотя у меня это сработало, это может нарушить вашу установку. Служба поддержки Veeam не сможет / не захочет помочь.
Откройте SQL Server Management Studio и подключитесь к базе данных Veeam. Вам понадобится имя сервера и имя экземпляра. Вам также может потребоваться включить TCP / IP для экземпляра, чтобы подключиться из удаленной системы, поскольку он не всегда включен по умолчанию. Это выходит за рамки данного Q / A.
Чтобы получить список носителей, помеченных как чистящие ленты, выполните следующую инструкцию SQL:
SELECT [barcode], [name], [cleaner]
FROM [VeeamBackup].[dbo].[Tape.tape_mediums]
WHERE [cleaner] = 1;
Это должно дать вам результаты, подобные следующим. Обратите внимание, что первая из перечисленных лент является настоящей чистящей лентой и соответствует соглашению об именах, определенному в спецификации LTO для универсального чистящего картриджа. Второй результат - наша недостающая лента.
Теперь нам просто нужно это исправить. Все, что нужно, - это простое обновление свойства clean. Вы можете использовать любое свойство для выбора подходящей ленты; Я использовал штрих-код, так как знаю, что все они уникальны в моей среде.
UPDATE [VeeamBackup].[dbo].[Tape.tape_mediums]
SET [cleaner] = 0
WHERE [barcode] = 'S16023L5';
И вуаля, ваша лента снова видна! Изменение должно вступить в силу почти сразу в консоли VBR.