none
ntbackup - работа с несколькими стримерами RRS feed

  • Общие обсуждения

  • Есть Windows 2003 Server (в данный момент тестирую на Windows XP) c двумя подключенными стримерами (HP Ultrium 3).
    Скажите как сказать ntbackup-у какой из стримеров требуется использовать в текушем задании на копирование?
    Дело в том что требуется иметь возможность записывать на произвольные ленты, то есть с ключеи /um (запись на заранее подготовленые ленты не подходит)
    Когда стример был один, ntbackup при первом запуске создал прикладной пул съемных носителей "LTO Ultrium"
    Имя этого пула наряду с ключем /um позволял записывать на любую ленту:
    [code]ntbackup.exe backup "@путь_к_файлу_.bks" /p "LTO Ultrium" /um[/code]
    При добавлении второго стримере (то же HP Ultrium) в системе он появился, но так как тип ленты не изменился, в ntbackup все так же доступен только один пул - "LTO Ultrium"
    Как при записи явно указывать стример (у меня скрипт анализирует файлы на запись и по объему разбивает на два задания для двух разных стримеров)?
    7 июня 2009 г. 12:30

Все ответы

  • Попробуйте создать другой пул в оснастке ntmsmgr, добавить новый стример в него, и дописать в скрипте имя этого второго пула
    Все вышесказанное является моим личным мнением, не имеющим отношения к корпорации Майкрософт
    Модератор
  • Большое спасибо за ответ. Создал в пуле "Backup" (на сколько я понимаю это пул, c которым работает ntbackup) два пула "LTO Ultrium #1" и "LTO Ultrium #2" но не знаю как туда добавить библиотеки.
    скриншот ntmsmgr.msc http://pic.ipicture.ru/uploads/090608/mWzWR6kj3L.jpg
    свойства "LTO Ultrium #1" http://pic.ipicture.ru/uploads/090608/9aihEzsRmp.jpg
    свойства "LTO Ultrium #2" http://pic.ipicture.ru/uploads/090608/9ZK3QYczfW.jpg
  • Еще вопрос по "двум пулам"...

     

    Если лента, на которую я собираюсь писать уже использовалась (у неё есть LogicalMedia-ID (LMID) и она правильном пуле), то я могу явно указать ntbackup-у что надо писать именно на неё, через ключ /G. То есть название пула вообще не нужно.

     

    Если же по какой-то причине LMID не определен (лента новая), то ключом /G мы воспользоваться не можем, остается /P, но как привязать определенный пул с библиотекой (два стримера - 2 разные library в системе) я не знаю. То есть указывая ntbackup-у /P "имя пула" мы не знаем чем (каким стримером) он будет писать! На практике получается, что либо запись происходит (видимо правильное стечение обстоятельств), либо ntbackup говорит, что у него нет лент, на которые он может писать. Кстати, сообщение это видно, только, если ntbackup запущен в графическом режиме, если запускать из командной строки, ntbackup запускает на пару секунд, оставляет за собой пустой лог (файл создается, но он пуст) и при этом возвращает 0 (то есть вроде без ошибок!)

    18 июня 2009 г. 13:11
  • Насчет рассортировки носителей по пулам - посмотрите вот эту  и вот эту статьи.
    Все вышесказанное является моим личным мнением, не имеющим отношения к корпорации Майкрософт
    19 июня 2009 г. 6:15
    Модератор
  • спасибо за информацию, буду изучать. жаль, что там все через графический интерфейс описано.
    19 июня 2009 г. 12:53
  • еше вопрос... есть лента у которой определен Physical_Media GUID, Partition, а Logical_Media не определен.
    лента находиться в пуле "свободные", я переношу её в свой пол (подпул пула Backup) м пытаюсь записать на неё.
    ntbackup /p "мой_пул_куда_перетащил_эту_ленту"
    ntbackup ведет себя так же. запускается на пару секунд, оставляет за собой пустой лог, ничего на ленту не записывает
    что я делаю не так?

    19 июня 2009 г. 12:59
  • продолжаю этот, практически, монолог...
    ни какие перетаскивания лент из пула в пул не помогли... если в системе больше одного стримера, по меньшей мере одного типа, то запуск ntbackup-а с ключем /p не приводит к положительному результату, и ключ /um не помогает. если стример один, то с ключем /um ntbackup пишет любые ленты без лишних вопросов. так же нет проблем при указании ключа /g, но тогда надо явно указать Logical_Media, но если у ленты нет Logical_Media.... может ленту можно предварительно "подготовить", так что-бы у неё появилась Logical_Media GUID, но естесвенно нужно какой-то способ подготовки, который можно реализовать в том же скрипте

    22 июня 2009 г. 18:31
  • Прошу прощения за задержку - тема у вас достаточно неординарная. Вот пример скрипта с назначением GUID на ленту

    @echo off
    Set drvguid= d5696cdcaf9b45f9b74f078cb6854fdd
    FOR /F "usebackq delims==" %%x IN ('rsm view /tphysical_media /cg%drvguid% /guiddisplay /b') DO set tapeguid=%%x
    FOR /F "usebackq delims==" %%x IN ('rsm view /tpartition /cg%tapeguid% /guiddisplay /b') DO set partguid=%%x
    FOR /F "usebackq delims==" %%x IN ('rsm view /tlogical_media /cg%partguid% /guiddisplay /b') DO set logguid=%%x
    Set part1=%logguid:~0,8%
    Set part2=%logguid:~8,4%
    Set part3=%logguid:~12,4%
    Set part4=%logguid:~16,4%
    Set part5=%logguid:~20,12%
    Set bkupguid=%part1%-%part2%-%part3%-%part4%-%part5%
    NTBACKUP backup @c:\files\backup.bks /g "%bkupguid%" /a /v:yes /hc:on /m normal

    Подробности будут в статье, которую я выложу в своем блоге (пока что на английском языке, в дальнейшем будет перевод)


    Все вышесказанное является моим личным мнением, не имеющим отношения к корпорации Майкрософт
    23 июня 2009 г. 6:10
    Модератор
  • Спасибо за внимание к моей проблеме
    Скажите, пожалуйста drvguid это LibraryGUID или DriveGUID?
    23 июня 2009 г. 9:19
  • Скажите, а что делать если у ленты еще нет logical_media? в этом случаи bkupguid будет пустой (я так понял по тексту скрипта)

    23 июня 2009 г. 9:33
  • Вот, посмотрите статью. Пока что на английском языке - здесь вопрос использования скриптов со стриммерами освещен весьма подробно.
    Все вышесказанное является моим личным мнением, не имеющим отношения к корпорации Майкрософт
    23 июня 2009 г. 11:19
    Модератор
  • спасибо, буду изучать, и с нетерпением ждать русского перевода
    23 июня 2009 г. 11:23
  • видимо я упускаю какие-то смыслы, но в статье описан способ получения logical_media и последующего запуска ntbaclup-а с ключем /g
    но в своем скрипте я это уже реализовал, а мне не понятна методика работы ntbackup+rsm, когда у ленты нет logical_media

    23 июня 2009 г. 12:43
  • Скажите, а лента подготовлена для записи? дополнительные рекомендации на этот счет:

    How to properly prepare the backup media:

    This operation writes a "free media" label on each tape. Remember that Ntbackup can use only prepared tapes during a backup session. Calculate
    how many tapes you need for your backup strategy, and prepare each tape before you continue to the next section.
    1. Under Computer Management, expand Storage, expand Removable Storage, and then click Media.

    2. Insert a tape into the tape drive. RSM reads the tape, and then displays the tape in the right pane.

    3. In the right pane, right-click the tape, and then click Free to remove data from the tape and mark it as free. You can monitor the work queue
    for the operation to make sure the operation is finished, or you can wait for the state to change to Idle and Usage to change to "Free."

    4. After the tape is labeled as "free media," you can eject the tape by right-clicking the tape and then clicking Eject. The Eject Wizard starts and
    moves the tape to the off-line media library.

    - Labeling the Tapes

    After you prepare the tapes, use Ntbackup to write a Microsoft Tape Format (MTF) label. Use a name that describes the contents of the tape.
    After this is accomplished, you can schedule Ntbackup to use that tape over and over again, by specifying the same media label name.

    Use the following steps to label each tape that you want Ntbackup to be able to reuse.

    [Note] This operation writes a unique MTF label on each tape. Make sure that each tape has a unique name, even if you rotate different sets of
    tapes (weekly).

    1. Make sure that a prepared tape is in the stand-alone tape library.

    2. Start Ntbackup, and then click Backup Wizard.

    3. In the "What to Backup" dialog box, click "backup selected files, drives, or network data".

    4. In the "Items to Backup" dialog box, click a single folder on any local drive.

    5. In the "Where to Store the Backup" dialog box, under "backup media type", click the tape drive, and in the "backup media" area, click "new
    media".

    6. In the "Completing the Backup Wizard" dialog box, click Advanced.

    7. Continue through the screens until the Backup Label dialog box is displayed. In this dialog box, you can change the Backup Label and Media
    Label fields. The information in the Media Label field distinguishes one tape from another. Change the Media Label field so that the field contains
    meaningful information to represent a tape for each day of the week. The example in this article uses unique names like Monday-Full, Tuesday-
    Full, and so on (one for each day/tape).

    8. Continue through the dialog boxes, and then start the backup process. This backs up the single folder and writes a meaningful media label that
    you can use from now on to schedule backups.

    9. After the backup process finishes, quit Ntbackup.

    10. If you now view Removable Storage Media, you see that the tape shows "Application" under Usage. Right-click the tape to view its properties.
    If you click the side tab, you see that the "identification label" field contains the same name that you specified in step 7. That is the name you
    want to use from now on, whenever you schedule a backup for that day's tape and choose to rewrite the same label name.

    11. Right-click the tape, click Eject, and then physically label the tape, using the same label name that you specified during the backup.

    12. Repeat this procedure for each tape until all of the tapes have valid MTF media labels.

    Источник - статья базы знаний 314844


    Все вышесказанное является моим личным мнением, не имеющим отношения к корпорации Майкрософт
    23 июня 2009 г. 13:21
    Модератор
  • нет, лента может быть произвольная, в том числе и не подготовленая (если правильно понял, как раз у таких нет logical_media и они могут находиться в любом пуле. другое дело, что ключ /um при одном стримере справлялся с этим, обходя все пулы и хватая первую подходящую ленту).
    я хочу добиться через свой скрипт полной автоматизации записи на два стримера. на данный момент все получилось кроме записи на ленту без logical_media и паралельного запуска двух ntbackup-в с контролем того что они возвращают.
    я понял, что нужно для таких лент делать предварительную prepare, но не знаю как это сделать в скрипте
    23 июня 2009 г. 15:21
  • еще один вопросик, сейчас смотрю "How To Back Up a Windows 2000-Based Computer the First Time" http://support.microsoft.com/kb/241007
    там в самом начале "Preparing a New Tape" и последовательность действий:
    1. Insert a new tape in the backup device.
    2. Right-click My Computer, and then click Manage.
    3. Click the plus sign (+) to expand the Removable Storage category.
    4. Click the plus sign (+) to expand the Physical Locations category.
    5. Click the plus sign (+) next to the backup device (for example, 4mmDat), and then click the media item under the backup device.
    6. In the right pane, click the tape that you inserted, and then click Prepare on the Action menu.

    Я у себя не могу найти Physical Locations, посмотрите пожалуйста http://pic.ipicture.ru/uploads/090623/3zK6ntTWDE.jpg
    и в экшенах не нашел Prepare

    23 июня 2009 г. 15:47
  • Что появляется при щелчке правой кнопкой мыши на носителе? Какие варианты действий доступны? Выдержка из инструкции:

    Пример 1:

    В этом примере создается обычный архив — «Задание 1» удаленного общего ресурса \\iggy-multi\c$. Для этого ленте из пула носителей «Backup» присваивается имя «Созданный из командной строки архив 1». Заданию архивации также будет дано описание «Архивация из командной строки». Архив будет проверен сразу после завершения архивации, доступ к нему будет предоставляться не только владельцу/администратору, будет вестись сокращенный журнал, архивация данных из внешнего хранилища выполняться не будет, а аппаратное сжатие будет включено.

    ntbackup backup \\iggy-multi\c$ /m normal /j "Задание 1" /p "Backup" /n "Созданный из командной строки архив 1" /d "Архивация из командной строки" /v:yes /r:no /l:s /rs:no /hc:on


     То есть для присваивания новой ленте метки нужно использовать ключ /n.


    Все вышесказанное является моим личным мнением, не имеющим отношения к корпорации Майкрософт
    24 июня 2009 г. 5:44
    Модератор
  • Что появляется при щелчке правой кнопкой мыши на носителе? Какие варианты действий доступны?
    я сделал скриншоты, посмотрите пожалуйста
    http://pic.ipicture.ru/uploads/090624/SsDU1NbsGN.jpg
    http://pic.ipicture.ru/uploads/090624/YkSVgTTHPp.jpg
    http://pic.ipicture.ru/uploads/090624/vA225tH4PU.jpg

    То есть для присваивания новой ленте метки нужно использовать ключ /n.
    у меня скрипт постоен так, что каждый раз при записи на ленту используется ключ /n и его знаечение каждый раз разное. в него я пишу дату и рандомное ID
    24 июня 2009 г. 14:15
  • Ясно. Вам нужен пункт "Освободить". Либо воспользуйтесь советом из этой статьи. Как заскриптовать эти действия я затруднюсь ответить... разве что при помощи PowerShell.
    Все вышесказанное является моим личным мнением, не имеющим отношения к корпорации Майкрософт
    25 июня 2009 г. 6:46
    Модератор
  • Как заскриптовать эти действия я затруднюсь ответить... разве что при помощи PowerShell.
    а можно это сделать через rsm.exe?

    25 июня 2009 г. 11:01
  • Нет у меня под руками стриммера, чтобы проверить... по идее, должно сработать через rsm allocate /m /ln (если логическому носителю уже назначено имя)


    UPD: вот в этой статье описано, почему rsm не подхватывает ленту автоматически и как с этим можно бороться. Отношение к проблеме имеет опосредованное, но все же.
    Все вышесказанное является моим личным мнением, не имеющим отношения к корпорации Майкрософт
    25 июня 2009 г. 11:14
    Модератор
  • я совсем запутался...
    у меня есть две ленты: "Tape A" имеет logical_media и я спокойно её перепысываю (ntbaclup /g guid) и "Tape B" у которой logical_media нет
    вот что о них говорить rsm view
    INFO TAPE A
    # Library Name = "Hewlett Packard LTO Ultrium-3 drive"
    # Library GUID = 'D1DE62B7B3A74B99B06A13AFC9BAD46D'
    # DRIVE GUID = '219F0E577DCE439590D444CC7C4CA176'
    # Physical_Media GUID = '6EFD2B0E6A2740128F84DB81F8B33157'
    # Physical_Media Name = 'FRSD LTO Daily Backup 23.06.2009 - TAPE A JID:5666 - 1'
    # Partition = 'D6ABE4D40F81476FA12D5B42939AE0BF'
    # Logical_Media = '1215E9ACC71645FEABC7AA6F89A6C00D'

    INFO TAPE B
    # Library Name = "Hewlett Packard LTO Ultrium-2 drive"
    # Library GUID = '4255190AB8CB4939B2961FE6726C471A'
    # DRIVE GUID = '240F0A7671804D4BA951CBA62DFF5C0C'
    # Physical_Media GUID = 'D443CC26AC5F4B07BCC00103C20914EE'
    # Physical_Media Name = 'FRSD LTO Daily Backup 22.06.2009 - TAPE B JID:3836'
    # Partition = '3EC6D376451F4AC583760DAB0CB8C967'
    # Logical_Media = ''

    запускаю как этой статье ntbackup, кликаю правой клавишей мыши ленту B и кроме "извлечь" там ничего нет
    http://pic.ipicture.ru/uploads/090625/2EFu2J8dRl.jpg

    если выбрать ленту A в контесном меню появляется действие "пометить как свободный". но с лентой A строго говоря мне делать ничего не надо, она имеет logical_media и я без проблем на неё запишу
    http://pic.ipicture.ru/uploads/090625/mjMvGNi201.jpg

    25 июня 2009 г. 11:34
  • по идее, должно сработать через rsm allocate /m /ln (если логическому носителю уже назначено имя)
    буду сейчас пробовать, имя логического носителя в rsm view /t это что?

    еще непонятность... у меня в пуле /свободные/lto ultrium/ находиться лента B, я в ntmsmgr.msc успешно перетаскиваю её в пул /backup//lto ultrium/,
    запуская ntbackup (просто запуская exe-к, ничего в нем не стартую) и лента B сама перемещается обратно в /свободные/lto ultrium/
    так и должно быть?
    25 июня 2009 г. 12:04
  • UPD: вот в этой статье описано, почему rsm не подхватывает ленту автоматически и как с этим можно бороться.
    я делаю в скипте rsm refresh перед и после запуска ntbackup-а и eject-а. этого будет достаточно?
    на сколько я понял основная идея иметь всегда запушеный ntbackup, но у меня вроде с этим проблем нет. если я оставляю в одном из стримеров ленту B (ленту A вынимаю), то запуская ntbackup в графическом режиме запись проходит нормально!
    а если запустить
    backup "@C:\preparetape.bks" /P "LTO Ultrium" /J "Prepare TAPE B" /N "Prepare TAPE B" /D "Prepare TAPE B 25.06.2009 16:21:08" /V:no /R:no /L:f /M copy /RS:no /HC:off /SNAP:off /UM
    то отрабатывает с ошибкой (все тот же пустой файл отчета)
    то есть проблема сводиться к разному поведению (или что-то выполняется дополнительно, но мы этого не видим) ntbackup-а запушеного в графическом режмиму и в режиме окмандной строки

    сейчас еще раз проверил с лентой без logical_media
    если записать на ленту хоть один файл в графическом интерфейсе. то все - ок. запись проходит и у ленты появляется logical_media
    если запустить backup "@C:\preparetape.bks" /P "LTO Ultrium" ... /UM то лажа
    25 июня 2009 г. 12:09
  • Про имя логического носителя вопрос не понял)) После параметра ln должно по идее ставиться Physical_name

    Вы делаете rsm refresh /lf <Library_name>? Не факт, некоторые ленты могут не воспринятся такой командой

    Вообще, если к ленте B не применена команда allocate, то ее должно туда сбрасывать - она же свободна. Кстати, родной софт стриммера обрабатывает ленты нормально в плане форматирования?
    Все вышесказанное является моим личным мнением, не имеющим отношения к корпорации Майкрософт
    25 июня 2009 г. 12:18
    Модератор
  • После параметра ln должно по идее ставиться Physical_name
    именно это хотел выяснить

    Вы делаете rsm refresh /lf <Library_name>? Не факт, некоторые ленты могут не воспринятся такой командой
    да, точнее rsm refresh /lf <Library_GUID>?
    это зависит от типа ленты? или просто от экземпляра? у меня Ultrium2 и 3 от HP

    Вообще, если к ленте B не применена команда allocate, то ее должно туда сбрасывать - она же свободна
    понял

    Кстати, родной софт стриммера обрабатывает ленты нормально в плане форматирования?

    если честно, я не пробовал. что-то у меня с родным hp-м софтом не срослось, плюс к этому если нелься заскриптовать, то я и ntbackup-м в граф. режиме могу обойтись

    25 июня 2009 г. 12:51
  • Вы делаете rsm refresh /lf <Library_name>? Не факт, некоторые ленты могут не воспринятся такой командой
    да, точнее rsm refresh /lf <Library_GUID>?
    это зависит от типа ленты? или просто от экземпляра? у меня Ultrium2 и 3 от HP

    Чаще всего от типа. Но могут попадаться и отдельные экземпляры, не дружащие с ntbackup. 

    Если задавать в скрипте ленту по Drive_GUID (в самом начале я приводил пример такого скрипта) архивация проходит нормально?
    Все вышесказанное является моим личным мнением, не имеющим отношения к корпорации Майкрософт
    25 июня 2009 г. 12:57
    Модератор
  • Если задавать в скрипте ленту по Drive_GUID (в самом начале я приводил пример такого скрипта) архивация проходит нормально?
    ntbackup-у можно передать либо имя пула (/p), либо передавая Logical_Media_GUID отформатированый как {8}-{4}-{4}-{4}-{12} (/g)
    в приведенном вами скрипте из Drive_GUID через цепочку 'rsm view /b' мы получают Logical_Media_GUID, режут его в формат {8}-{4}-{4}-{4}-{12}
    и запускают ntbackup /g <отформатированый_Logical_Media_GUID>
    Имея Logical_Media_GUID и запуская ntbackup /g все гарантировано записывается.
    Но это уже реализовано в моем скрипте, а проблема в том что у ленты Logical_Media_GUID может не быть (чистая, новая, освобожденная и перемещенная из пула прикладного Backup и т.д.), тогда ntbackup /g применить нельзя




    ...у меня создается впечатление, что вообще /p неработает если в системе больше одного стримера
    я сейчас освободил ленту, но не до конца (она осталась в пуле Backup) и запустил ntbackup backup "@C:\preparetape.bks" /P "LTO Ultrium" ... /UM
    результат тот же - ничего не записал пустой файл лога
    25 июня 2009 г. 14:31