Резервное копирование данных


 Еще один вопрос, пришедший к нам от читателя Dmitriy звучит так: "В условиях рабочей группы, есть ли возможность создания сетевого хранилища с возможностью периодической архивации и автоматической перезаписи данных?"

  Сразу ясно, что подразумевается - резервное копирование данных (их "бэкап" от англ. «backup»).

  Давайте попробуем реализовать схему резервного копирования данных наиболее простым способом. Будем делать обычное резервное копирование важных данных с сетевого диска на наш компьютер, но этот процесс немного автоматизируем. Наши тестовые компьютеры - те же Windows XP «Workstation01» и «Workstation02». Первый компьютер будет у нас содержать "важные" данные, которые мы будем копировать на компьютер №2.

  Для начала, представим себе общую схему резервного копирования данных. Как может выглядеть хранилище общих (для пользователей нашей сети) данных? Это - сетевая папка, с общим доступом, в которой располагаются различные файлы пользователей, возможно, - файлы баз данных и т.д. Очевидно, что эту информацию надо периодически "бэкапить" (обязательно делать резервное копирование данных). Потеря служебной информации - вещь неприятная.  

  Смоделируем самый простой случай: на нашем компьютере «Workstation01» на диске «С» есть сетевая папка «Share» с общим доступом (на чтение и запись).

Общая сетевая папка
 

  В ней содержатся "важные" для организации данные.

Важные данные
 

  Нам надо все эти файлы и папки "забекапить" - скопировать, на компьютер «Workstation02». Для этого создаем на втором компьютере папку, где будут храниться наши резервные копии. Называем ее как-то незамысловато - «backup». 

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

  Предлагаю сначала подключить общий сетевой ресурс компьютера «Workstation01» к «Workstation02» в виде сетевого диска. Для этого на компьютере «Workstation02» открываем окно проводника Windows и в верхнем меню выбираем пункт «сервис» и - «Подключить сетевой диск».

Подключение сетевого диска
 

  На мониторе отобразится вот такое окно:

Указываем букву диска
 

  В нем нам надо будет указать букву для нашего подключаемого диска (буква должна быть не занята дисками, уже установленными в системе). Указываем, к примеру, «Z». Нажимаем кнопку «Обзор» и выбираем в нашем сетевом окружении компьютер «Workstation01» и его общую сетевую папку «Share». Если оставить галочку рядом с надписью "Восстанавливать при входе в систему" то после перезагрузки компьютера «Workstation02» сетевой диск «Z» будем смонтирован (присоединен) автоматически.

  Дальше выбираем нужный нам общий ресурс и нажимаем кнопку «Готово». Проверяем, что у нас получилось. Заходим на компьютере «Workstation02» в "Мой компьютер" и видим вот такую картину:

Сетевой диск подключен
 

  У нас появился сетевой диск «Z», который на самом деле находится на компьютере «Workstation01», но работать мы с ним можем как будто это локальный диск нашего компьютера «Workstation02».

  Теперь мы уже можем зайти на этот диск через проводник и скопировать (забекапить) оттуда все наши "важные" данные к себе на компьютер. Т.е. по факту - уже произвести резервное копирование данных.

  Но давайте с Вами, для полноты картины, более подробно разберем сам механизм подключения сетевого диска. Отключим его. Нажимаем на диске «Z» правой кнопкой мыши и выбираем команду «Отключить». Сетевой диск исчезнет из проводника.

  Давайте выполним подключение сетевого диска из командной строки. Ведь именно эти команды передаются на удаленный компьютер с помощью графического "мастера" подключения диска.

  Итак, на компьютере «Workstation02» нажимаем кнопку «Пуск», выбираем пункт "Выполнить" и в появившееся поле вводим команду «cmd» (без кавычек). Запускается командный интерпретатор Windows. В него мы вводим следующую команду: net use Z: \\workstation01\Share и нажимаем клавишу «Enter».

Подключаемся к хранилищу из консоли
 

  Видим надпись: "Команда выполнена успешно". Заходим в "Мой компьютер" и убеждаемся в том, что сетевой диск «Z» опять подключен к нашем компьютеру «Workstation02».

  Итак, команду подключения сетевого диска мы с Вами освоили. Теперь давайте разучим еще одну команду. Команду копирования файлов расположенных на сетевом диске. Практически команду резервного копирования данных :)

  Вы можете задать резонный вопрос: зачем мы разучиваем все эти команды, если можно просто с помощью мыши зайти на сетевой диск, нажать там правой кнопкой и без всяких команд все что нужно скопировать? И Вы будете абсолютно правы! Все это - можно, но... Будет ли Вас такой вариант устраивать? Согласитесь ли с тем, что не будете понимать как на самом деле работает система и что происходит за пользовательским графическим интерфейсом? Ну и просто почему бы не послушать, если Вам и так уже все подробно объясняют? :)

 Собственно - команда копирования файлов с сетевого ресурса компьютера «Workstation01» на компьютер «Workstation02»: xcopy Z: C:\backup /E /C /H /K /Y /Q  нажимаем клавишу подтверждения ввода команды - «Enter».

  Давайте рассмотрим ее более внимательно. Сама команда «xcopy» (более функциональный вариант простой команды «copy»), имеющий нужные нам "ключи". Далее указано откуда мы копируем данные - наш сетевой диск «Z». Потом - куда копируем (наш диск «С», папка «backup»). И вот дальше перечислены наши "ключи" команды «xcopy». Для того чтобы более подробно ознакомиться с тем, какую функцию каждый из "ключей" выполняет введите в командном интерпретаторе команду xcopy /? и нажмите «enter» .

  Если сейчас Вы на компьютере «Workstation02» зайдете на диск «С» в папку «backup», то увидите там скопированные файлы из сетевой папки «Share» компьютера «Workstation01».

  Теперь давайте этот процесс резервного копирования данных автоматизируем. Мы ведь системные администраторы! А настоящий системный администратор, как известно, должен быть настолько ленивым, чтобы автоматизировать все, что ему лень делать руками дважды :) Но это - шутка! А мы с Вами сейчас создадим командный «bat» файл, который «нашпигуем» нужными нам командами и будем запускать по необходимости. Команды, прописанные в файле, будут последовательно выполняться и совершать нужные нам действия.

  Как же нам создать этот самый командный «bat» файл? Очень просто. Нажимаем правой кнопкой мыши и выбираем пункт «Создать текстовый документ». Создается пустой файл программы «Блокнот» с расширением файла «.txt». Так вот, мы берем и в режиме переименования документа изменяем это расширение с «txt» на «bat». Windows нас предупреждает что "Так нельзя", мы - соглашаемся и получаем наш командный «bat» файл :) Правда он пока - пустой, но сейчас мы будем его наполнять!

  Примечание: для того чтобы "увидеть" расширение файлов надо в проводнике Windows выбрать в верхнем меню пункт «Сервис», из выпавшего списка - «Свойства папки», в открывшемся окне перейти на вкладку «Вид» и в списке «Дополнительные параметры» убрать галочку с пункта «Скрывать расширения для зарегистрированных типов файлов».

  Нажимаем на командном файле правой кнопкой мыши и выбираем пункт «Изменить». Он по умолчанию откроется программной «Блокнот». Вносим в него две изученные выше нами команды. Это должно выглядеть вот так:

BAT файл с командами
 

  Напомним, что команды в таких файлах выполняются строго последовательно. Сначала выполнится команда, указанная нами в первой строке файла (net use - подключить сетевой диск с компьютера «Workstation01»), за ней - вторая команда (xcopy - скопировать файлы и папки с сетевого диска на локальный компьютер в папку «backup»).

  Давайте проверим наш файл на практике. Удалим сетевой диск «Z» с помощью команды «Отключить» и на компьютере «Workstation02» запустим наш «bat» файл. После того, как он отработает, "идем" на диск «С» в папку «backup» и видим там вот такую картину:

Выполняем резервное копирование данных

  Наши файлы и папки скопированы! Давайте еще немного добавим функциональности нашему командному файлу и сделаем резервное копирование данных красиво :) Так, чтобы при копировании сохраняемые файлы автоматически архивировались с помощью программы «WinRar» и помещались в отдельные папки, в названия которых бы автоматически подставлялась дата создания резервной копии.

  Для этого нам надо создать «bat» файл вот с таким содержимым:


 

  Здесь мы видим уже знакомую нам команду подключения сетевого диска, но вместо команды «xcopy» мы видим здесь несколько других команд. Первые четыре создают папку бекапа и подставляют в ее название текущую дату, зафиксированную на компьютере. Затем идет команда запуска архиватора «WinRar» (он должен быть установлен на компьютере), передача ему различных "ключей" и указание того, откуда надо производить копирование и архивацию.

  Примечание: архиватор «WinRar» может использовать большое количество собственных команд и "ключей", так как он имеет консольную (текстовую) свою версию и эти "ключи" именно из нее. Чуть ниже я дам Вам ссылки на оба наши «bat» файла и на список всех ключей архиватора отдельным текстовым файлом.

  Давайте проверим, что у нас получилось: очищаем на компьютере «Workstation02» папку «backup», отключаем сетевой диск «Z» и - запускаем на выполнение наш новый командный файл. Результат выполнения им резервного копирования данных 27-го, 28-го и 29-го числа Вы можете видеть на скриншоте ниже.

Регулярное резервное копирование
 

  Зайдя в любую из папок, мы увидим в ней архив с именем «backup.rar». Если мы его откроем, то увидим в нем наши резервные копии данных. Обратите внимание, что на скриншоте ниже папка открыта уже именно в программе «WinRar».

Архивируем наш бэкап с помощью Winrar
 

  А в конце, как и обещал, даю Вам ссылки на два командных файла, разобранные в этой статье. Вот ссылка на первый файл. А вот ссылка на второй файл (в архиве также - описание всех консольних "ключей" архиватора «WinRar»).



Понравилась статья?
Нажмите на кнопки ниже или оставьте комментарий !


KirVK
а не подскажете какую-нибудь справку, где были бы расшифрованы команды наподобие тех, что даны во втором батнике? понимаю,что это элементарные вещи, но - вот такой у меня пробел в самообразовании ) всегда жутко интересно было ) элементарные освоил, а вот те что посложнее...

[Ответить]
Андрей
Можете вот здесь посмотреть: http://celitel.info/klad/nhelp/helpbat.php

[Ответить]
KirVK
большое спасибо! Это стандартные досовские команды, я правильно понимаю?
вот уж не ожидал на таком сайте найти подобную информацию ) не зря говорят, что айтишники - нестандартные люди ))

[Ответить]
Елизавета
Для того, чтобы все заработало, пришлось прописать cd "c:\backup\%FOLDER%". Почему так произошло? Самое интересное, что net use я использовала на диск k:, а после второй cd компьютер почему-то автоматически выкидывал на c:

[Ответить]
Андрей
Эх! Давненько это было, сейчас уже и не упомнишь, что я там сказать и показать хотел?  :) Когда-то стояла такая задача, вот и решил поделиться. Помню, свое дело этот файл исправно делал. Может и до сих пор где-то используется?

[Ответить]
Елизавета
Здравствуйте. Когда прописала код и запустила bat столкнулась с такой проблемой: создавалась папка с архивом, но не в c:\backup, а просто на c:. После небольшой проверки и игры с кодом поняла в чем проблема: при смене директории первый раз мы выходим на c:\backup, а второй раз мы ее меняем на %FOLDER%.

[Ответить]
Павел
Есть маленькое уточнение, если добавлять запуск bat-файла в планировщик заданий, то маленькую правку надо сделать.
cd /d d:\backup
добавляется ключ /d - для того чтобы директория активная была

[Ответить]
Андрей
Спасибо за дополнение  :)

[Ответить]
z668
Представленный способ прост но имеет несколько недостатков: 1. Что будет если отвалится сеть? 2. Что будет если какой либо из файлов будет занят другим процессом?

Большинство сторонних решений представленных в этой теме платные, я же предлагаю их бесплатный аналог который может работать как служба или приложение и имеет русскоязычный интуитивно понятный интерфейс: http://www.cobian.se/index.htm

[Ответить]
Андрей
Возьмем на заметку. Спасибо за предложенную альтернаимву! Можно было бы, при желании, и небольшую статью по этой программе написать   !;)

[Ответить]
Юлия
а я акронисом пользуюсь)))) вот такой вот я леньтяй

[Ответить]
Андрей
Ну, тут уж кому что больше нравится  :)

[Ответить]
Юлия
Андрей, хотела бы у Вас спросить совет, так как я еще далеко не опытный сис админ. У меня на работе три сервака, они в полном кошмаре. я хочу сделать с них образы, ото не дай Бог накроются. Но боюсь один отключать с БД, он на mySQL, так как потом могут базы отказать, а я не владею языком. Как бы это лучше сделать, чтоб меньшей кровью обойтись ?) )

[Ответить]
Андрей
Я, например, делал образы наших терминальных серверов (и не только их) вот таким способом.

[Ответить]
Вадим
Андрей а возможно ли таким вот макаром делать полностью слепок диска С со всеми доками? Чтобы потом раз и вернул систему на место как это можно сделать разными прогами для бекапа. А то понимаете трудно заставить сотрудников ложит все по местам.Вечно раскидывают все куда попало. Никак не могу добится что бы хранили все на диске D. Хоть кол на голове теши  :)

[Ответить]
Андрей
Если именно "слепок" (образ) диска, то для этого есть другой очень подходящий инструмент.

[Ответить]
Вадим
Ну на самом деле этих инструментов гораздо больше. Меня интересовала именно командная строка. Я как и вы Андрей вынужден работать не по специальности (только образований не получал и даже курсов никаких не заканчивал) но в силу других причин. И поэтому приходится учится всему на лету. Так что если что не то ляпну извиняйте. Просто смысл в бекапе определенных папок теряется в силу того что доки кидают куда попало.

[Ответить]
Андрей
Ну, если такое дело, то, возможно, стоит приучать пользователей к тому, что со всеми документами работать нужно на сетевых дисках (у нас так и организовано). А кто не понимает - сам виноват и винчестер - "поломался" вместе с документами   !;) Сетевые диски на сервере "мапим" (подключаем) всем пользователям при входе в систему, как дополнительные логические диски.

[Ответить]
Вадим
 :) уже сделано. Я еще настроил автоматом раз в неделю бекап диска С на D. Как место забьется буду перекидывать на файлопомойку. Теперь приходится контролировать что бы компы не отключали в запланированные дни. Порой ощущаю себя дрессировщиком блин.

[Ответить]
Андрей
"Порой ощущаю себя дрессировщиком" Всем оставаться на своих местах! Держать руки на клавиатуре! Это - администрирование!  =)

[Ответить]
Вадим
 :) ну типа того. Стоит чуть дать слабину компы превращаются в помойное ведро. Че только не накачают. Эту Webalta по несколько раз за месяц вычищаю. На одной фирме начальство дало на родительский контроль и учетки с правами админа. Думаю будет полегче. Хотя....На другой с этим посложнее. Так что приходится подтирать попки.

[Ответить]
Михаил
Андрей,в "Documents and Setting " открывается :
All Users -емкость 352 Мб.
All Users.WINDOWS - 517 Мб.
Default User - 1.05 Мб.
Default User.WINDOWS - 1.2 МБ.
User - 765 мб.
User.COMP - 145 Мб.
User.COMP.000 - 252 Мб.
User.comp.001 - 605 Мб.
User Comp.002 - 1.8 Гб.
Т.е. папки-двойники,содержание
одинаковое,объем разный.
Почему такое случилось и что с ними делать?

[Ответить]
Андрей
Если эти файлы находятся в temporary - смело удаляйте. А так - скриншот нужен, не очень понятно, Михаил, что и где находится?

[Ответить]
Михаил
Желательно адрес почы знать,чтобы выслать скриншоты.

[Ответить]
Андрей
Да я, вроде и не скрываю, Михаил   !;)

[Ответить]
сергей
Андрей.у меня такая проблема.купил себе ноутбук леново.в нем уже установлена операционная система windows 7 начальная.а вот диск не дали с этой операционной системы.пришел домой включил смотрю один диск 252г.на нём находится операционная система а другой 27г.я хочу разбить эти диски один 90г.а другой200г.как мне сделать без потери операционной системы.заранее спасибо.

[Ответить]
Андрей
Это - OEM версия Windows (предустановленная при покупке). К ней диска не полагается. А поменять размер можно попробовать через оснастку "управление дисками" (функции "сжать том" и "расширить том"). Будьте очень внимательны, иначе можно "грохнуть" систему. Альтернатива - специализированное стороннее ПО. Например, "Paragon Partition Manager".

[Ответить]
Артур
автоматические программы для резервного копирования - это как раз и есть изобретение велосипеда :-) а командная строка была, есть и будет, усовершенствовали cmd, теперь в висте и семёрке можно работать (да и в XP кстати тоже) в powershell с расширенными возможностями (но суть осталась прежней)

[Ответить]
Андрей
Согласен, Артур. Каждому - свое. Кому-то удобнее с помощью дополнительных программ, а кто-то и командной строкой обходится (не знаю, может быть природная лень сказывается ?)   !;)

[Ответить]
Артур
это точно  :) в любом случае классный сайт, Андрей, вы делаете большое дело и огрмное Вам человеское СПАСИБО

[Ответить]
Андрей
Спасибо на добром слове, Артур!

[Ответить]

Страницы: [1] | [2] [Следующая] | [Последняя]

Оставить комментарий

Ваше имя:

Комментарий:
Введите символы: *
captcha
Обновить


Поиск по сайту
ФОРУМ нашего сайта !




Ресурсы по теме !