Приветствую Вас ГостьСреда, 01.05.2024, 19:32

В помощь админу


Каталог статей

Главная » Статьи » Windows » Групповая политика

WinRar + GPO + VBS = Альтернатива резервному копированию

Идея создания резервного копирования с помощью всем известной программы WinRar возникала у меня уже очень давно, да и к тому же сама программа благоволит этому, имея на борту возможность управления ею в консольном режиме с помощью ключей и параметров. А тут и случай подвернулся подходящий, так как появилась задача бэкапить локальную базу специализированной программы по управлению сложным и дорогостоящим агрегатом из лаборатории.

По идее, можно создать обычный батник, который будет запускать WinRar и передавать ему необходимые параметры, но учитывая тот факт, что по техзадаче было принято решение бэкапить только по пятницам и при выключении компьютера, а так же чтобы этот процесс был не особо заметен обычному пользователю, то в данном случае пришлось прибегнуть к VBS-скрипту. Для любителей Java - каждый такой любитель сможет самостоятельно переделать мой скрипт в Java.

И последняя прерия в статье. Почему я к своей гремучей смеси добавил GPO? По двум причинам:

  1. Из-за лени, так как система становиться более продвинутая и в случае замены рабочей станции мне не придётся заново настраивать резервное копирование, так как имя нового компьютера будет в итоге тем же, что было у заменяемого.
  2. В моём случае, мне не предоставили доступа к этой рабочей станции на длительное время, поэтому я и пошёл обходным путём, чтобы вначале можно было протестировать на виртуалке, ну а после в короткие сроки нацелить GPO на необходимый мне компьютер в локальной сети, совсем не отрывая производство от техпроцесса.

Но, сразу стоит отметить, что в GPO потребуется применить WMI-фильтр, который нацелит мою политику строго на определённую рабочую станцию. Более подробно опишу чуть ниже.

Ну а пока сам скрипт в студию (в скрипте есть комментарии):

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'     Скрипт автоматической архивации данных реометра     '
' Данный скрипт использует для архивации программу WinRar '
'     Скрипт будет отрабатываться только по пятницам      '
'   Скрипт написал Анчуров Олег Владимирович в 2015году   '
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
On Error Resume Next
Dim TD
'Текущая дата
TD = Date
'Если Пятница, то выполняем код (6 - Пятница)
If WeekDay(TD) = 6 Then
    Dim WshShell
    Dim objScriptExec
    Dim ComLine
    Set WshShell = CreateObject("Wscript.Shell")
    'Путь к программе WinRar
    ComLine = "C:\Program Files\WinRAR\winrar.exe a -ibck -r "
    'Место для бэкапов (имя файла - текущая дата без точек)
    ComLine = ComLine + "\\BackUpServer\BackUp\DataBase\" + Replace(TD, ".", "") + ".rar "
    'Папка, которую необходимо забэкапить
    ComLine = ComLine + "C:\DataBase"
    'Запуск программы WinRar
    Set objScriptExec = WshShell.Exec(ComLine)
    'Чистим память
    Set objScriptExec = Nothing
    Set WshShell = Nothing
End If

, где

"\\BackUpServer\BackUp\DataBase\" - путь для складывания архивов. Обратим внимание, что в моём случае BackUpServer - имя сервера бэкапов, BackUp - имя расшаренной папки для бэкапов, в которой лежат ещё папки. В моём случае я складываю в папку с одноимённым названием архивируемой папки - DataBase.

Информация о передаваемых параметрах для WinRar:

a - создавать новый архив;

-ibck - тихий (фоновый режим), а если точнее, то в трэе будет висеть значёк WinRar во время архивирования;

-r - рекурсивное чтение вложенных папок (данный параметр не обязателен).

Теперь стоит рассказать о GPO.

Как создать WMI-фильтр, можно посмотреть в статье Групповая политика для группы пользователей с применением фильтра WMI. Запрос в фильтре будет выглядеть примерно так: SELECT * FROM Win32_ComputerSystem WHERE Name = 'ComputerName'

где ComputerName - имя рабочей станции, на которой хранится наша локальная база данных в папке C:\DataBase.

Ещё нам следует учесть тот факт, что, скорее всего, прав у пользователя на компьютере администраторских нет, поэтому политику будем применять к конфигурации компьютера, а не к конфигурации пользователя.

Итак, создадим нашу политику. Назовём её, например, BackupCompAgregat. Открываем раздел: Конфигурация компьютера > Политики > Конфигурации Windows > Сценарии. В правой части оснастки у нас будет 2 типа сценариев - "Автозагрузка" и "Завершение работы". Как вы уже догадались, нас интересует второй тип - "Завершение работы". Открываем его и загоняем туда наш скрипт под любым именем.

На этом, в принципе можно и закончить, но остался один нюансик. Если к серверу резервных копий имеется ограниченный доступ, то нам необходимо будет разобраться с правами доступа, а именно:

  1. На нашей рабочей станции нужно залогиниться под локальным админом.
  2. Предоставить доступ локальному админу к серверу бэкапов, путём ввода данных действующей учётной записи, имеющей соответствующие права доступа к нашей шаре бэкапов.

Так же стоит отметить, что не надо забывать об автоматизации процесса удаления старых бэкапов. Данный вопрос более подробно расписан в статье Автоматическое избавление от устаревших архивов.

Вот теперь уже можно заканчивать с писаниной.

Жизнь админа должна быть проще...

Категория: Групповая политика | Добавил: isz (25.05.2015)
Просмотров: 233 | Теги: Скрипт, backup, GPO, WMI-фильтр, vbs, WinRAR | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Категории раздела
Active Directory [12]
DHCP [1]
Windows [13]
Wins [1]
Групповая политика [3]
Программы [2]
Резервное копирование [6]
Сеть [5]
Скрипты [31]
Терминальный сервер [7]
Почта [7]
Реестр [2]
Реестр Windows
Командная строка [7]
CMD: Командная строка Windows
Поиск
Форма входа
Наш опрос
Оцените мой сайт
Всего ответов: 147
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Статистика