Support & Assists

Статьи и заметки системного администратора o Windows, Linux и хитростях работы с ПК

Главная Windows Создание BackUp без использования стороннего ПО

В жизни каждого системного администратора, так и рядового пользователя встаёт вопрос о необходимости создания резервных копий файлов и папок.

Можно прибегнуть к использованию стороннего ПО, но всё можно сделать более «прозрачным» со стороны безопасности методом, так же в фирме, которой вы работаете может быть жёсткий регламент на использование стороннего ПО, как допустим в моём случае.

 

Для создания резервных копий нам понадобится программа 7-zip.

Скачиваем на официальном сайте http://www.7-zip.org, выбираем нужную архитектуру и устанавливаем.

После установки создадим в любой директории папку BackUp.

В ней создаём текстовый документ, обзываем его backup.vbs .

Для возможности редактирования расширения необходимо включить отображение расширений файлов. В проводнике нажимаем alt, появляется контекстное меню сверху экрана, нажимаем: «сервис > параметры папок > вид» снимаем галочку с «скрывать расширения для зарегистрированных типов файлов»

Создаём файл Backup.Log в той же папке.

Теперь щёлкаем на файле  backup.vbs  правой кнопкой и нажимаем изменить.

Вписываем  этот код:

  • Set objFSO = CreateObject("Scripting.FileSystemObject")
  • Set sh = CreateObject("WScript.Shell")
  • Set LogFile = objFSO.OpenTextFile("C:\Backup\Backup.Log", 8, True)
  • '--------------------------------------------------------------бэкап Delta

    FromFolder = "C:\folder\"
  • ToFolder = "H:\toFolder\"
  • Name = "Folder"
  • LogFile.WriteLine "Начало " & Name & ","  & date() & " " & time()
  • 'удаляем файлы которые создали более 2 дней назад
  • for i = 2 to 10 
  • s = CStr(Date - i)
  • If InStr(1, s, "/", vbTextCompare) > 0 Then s = Replace(s, "/", ".") ' if date delimiter / it replaced to .
  • a = Split(s, ".") ' each element contain day or month or year
  • If Len(a(0)) = 1 Then a(0) = "0" + a(0) ' expand day to 2 digits
  • If Len(a(1)) = 1 Then a(1) = "0" + a(1) ' expand month to 2 digits
  • filename = ToFolder & Name & a(2) & a(1) & a(0) & ".7z"
  • if objFSO.fileexists(filename) then
  • objFSO.DeleteFile filename
  • end if
  • next
  • WScript.Sleep 10000
  • 'создаем архив
  • s = CStr(Date)
  • If InStr(1, s, "/", vbTextCompare) > 0 Then s = Replace(s, "/", ".") ' if date delimiter / it replaced to .
  • a = Split(s, ".") ' each element contain day or month or year
  • If Len(a(0)) = 1 Then a(0) = "0" + a(0) ' expand day to 2 digits
  • If Len(a(1)) = 1 Then a(1) = "0" + a(1) ' expand month to 2 digits
  • filename = ToFolder & Name & a(2) & a(1) & a(0) & ".7z"
  • cmdtorun = "c:\Progra~1\7-zip\7z u -t7z " & filename & " " & FromFolder
  • sh.run cmdtorun, 0, true
  • LogFile.WriteLine "Конец " & Name & ","  & date() & " " & time()

 

Тут нам понадобится изменить несколько строк:

Set LogFile = objFSO.OpenTextFile("C:\Backup\Backup.Log", 8, True) Тут прописываем путь до файла Backup.Log

FromFolder = "C:\folder \" – тут указываем папку, которую будем бекапить.

ToFolder = "H:\toFolder\" – путь куда кладём бека.

Сохраняем, закрываем.

Выше приведённый скрипт создаёт backup файла, кладём её в директорию. Скрипт написан под проверку файлов, и при ежедневном запуске будет хранить два файла за последние дни, если файл создан 3 дня назад и более он его удаляет. Именует как «BackUp20140722.7z»

Всё, backup создаётся, но не запускать вручную же каждый день.

Воспользуемся встроенными средствами windows, а именно «Планировщиком задач»

«Пуск > Панель управления > Администрирование > Планировщик задач»

Правой области создаём простую задачу.

Указываем Имя,  ставим галку на «Выполнять вне зависимости от регистрации пользователя» что бы скрипт запускался, когда нет авторизованных пользователей, допустим ночью.

На вкладке триггеры создаём  триггер где указываем с какими временными параметрами следует запускать скрипт. 

На вкладке действия создаём действие, где указываем  на backup.vbs

Так же в планировщике присутствует ещё множество настроек и условий запуска задачи, мы их рассматривать не будем.

В указанное вами время будет происходить «тихий» запуск 7-zip console . В файле backup.log логируется время запуска и окончания создания резервной копии.

Всё, автоматический BackUp без использования стороннего ПО настроен.

Пьём кофе, радуемся жизни. 

 

Добавить комментарий


Счётчики

Яндекс.Метрика Рейтинг@Mail.ru