Оглавление:

Резервное копирование вашего сервера: 6 шагов
Резервное копирование вашего сервера: 6 шагов

Видео: Резервное копирование вашего сервера: 6 шагов

Видео: Резервное копирование вашего сервера: 6 шагов
Видео: 6.7 Создание резервной копии и восстановление базы данных в MS SQL Server 2024, Июль
Anonim

Автор: JohntronJohntron SpeaksFollow Еще от автора:

Создайте свой собственный межсетевой экран шлюза
Создайте свой собственный межсетевой экран шлюза
Создайте собственный межсетевой экран шлюза
Создайте собственный межсетевой экран шлюза

О себе: Разработчик программного обеспечения, соучредитель Placethings, технолог. В настоящее время учится в аспирантуре по программе Emerging Media and Communications Техасского университета в Далласе. Подробнее о Johntron »

Узнайте, как сделать резервную копию вашего бокса * nix на внешний жесткий диск (или на магнитную ленту без особых усилий). Я расскажу об установке резервного носителя, использовании `dump`, восстановлении, а также резервном копировании файлов с удаленного сервера на внешний жесткий диск. Чтобы сделать резервную копию ПК с Windows, прочтите статью на сайте lifehacker.com здесь. Шаг 1: Подготовьте материал Шаг 2: Take a `dump` Шаг 3:` restore Шаг 4: Удаленное резервное копирование Шаг 5: Автоматизация Логотип FreeBSD является товарным знаком FreeBSD Foundation и используется Джоном Сиринеком с разрешения FreeBSD Foundation.

Шаг 1. Подготовьте материал

Перед тем, как делать резервную копию, вам нужно иметь что-то для резервного копирования. Традиционно это были ленточные накопители; однако (качественный) внешний жесткий диск будет работать нормально. Вам НЕ ОБЯЗАТЕЛЬНО использовать внешний жесткий диск, но с внешним диском у вас есть удобство принести жесткий диск домой (или в другое место за пределами офиса). Я использовал пару Western Digital MyBook. У Circuit City была скидка 80% на (избранные) внешние накопители, и я получил два накопителя по 250 ГБ по очень низкой цене. По моему опыту, у Western Digital есть диски очень высокого качества (то есть они служат вечно). Это делает их отличными резервными копиями. Если вы собираетесь пройти через трудности с резервным копированием чего-либо, вы не хотите, чтобы ваш носитель резервных копий сломался на вас. Хорошо, как и в другой моей статье, я буду использовать FreeBSD®; однако большинство вещей, о которых я расскажу, можно сделать в любом варианте Linux, Unix или BSD (пропустите следующий абзац, если у вас уже есть поддержка USB 2.0 или вы не используете внешний USB-накопитель). Накопители USB 2.0. FreeBSD 5.4-STABLE не имеет драйвера EHCI (в основном того, что дает вам USB 2.0) по умолчанию. Это простое исправление, хотя некоторые могут подумать, что перекомпилировать ядро страшно (это не так). Если вы относитесь к числу слишком осторожных людей, я рекомендую сделать резервную копию ПЕРЕД перекомпиляцией ядра. USB 2.0 может быть не включен, но USB 1.1 все еще работает. Просто намного медленнее. Чтобы включить EHCI, прочтите эту страницу Руководства. Вероятно, вам также придется обратиться к этому разделу Руководства, в котором объясняется, как на самом деле перекомпилировать ядро. Если вы используете внешний или даже внутренний диск, вам нужно будет смонтировать диск, прежде чем вы сможете его использовать. Это делается с помощью команды `mount`, и это довольно просто. Вот справочная страница mount. Если команда mount жалуется на то, что не может определить тип файловой системы, вам, вероятно, потребуется отформатировать диск. Для этого вам нужно знать, какое устройство нужно форматировать. Для меня это был / dev / da0, но для вас он может быть другим. Обратитесь к документации вашего дистрибутива. После определения того, к какому устройству подключен внешний жесткий диск, вам нужно будет выполнить фактическое форматирование диска (ну, раздела). Если вам нужна помощь в разбиении диска, просто спросите меня. FreeBSD использует mkfs для создания файловых систем на разделах. Подойдет любой тип файловой системы, но я решил использовать UFS, потому что это то, что FreeBSD использует по умолчанию. FAT32, вероятно, наиболее совместим с другими операционными системами, а Ext3 - это то, что сейчас используют большинство разновидностей Linux (или, по крайней мере, они делали это в прошлый раз, когда я использовал Linux). Итак, я использовал эту команду для монтирования своего диска: mount -t ufs / dev / da0 / backupOK, у вас должен быть готов резервный носитель. Если нет, просто спросите:) Переходите к шагу 2. Знак FreeBSD является зарегистрированным товарным знаком FreeBSD Foundation и используется Джоном Сиринеком с разрешения The FreeBSD Foundation.

Шаг 2: Сделайте дамп

Давайте сделаем резервную копию наших материалов. Есть несколько способов сделать это. Дамп и Тар, вероятно, являются двумя наиболее распространенными, и у обоих есть свои сильные и слабые стороны. Дамп - это самый надежный способ резервного копирования вашей системы; однако он может создавать резервные копии только целых разделов. Tar быстро и легко использовать для отдельных папок, но для резервного копирования больших объемов требуется некоторое время. Tar также сжимает файлы, добавляя уровень сложности, который потенциально может повредить ваши резервные копии. Прочтите эту страницу для получения дополнительной информации Я решил использовать дамп из-за надежности. Пространство для хранения не было проблемой, и поскольку у меня cron автоматически выполняет резервное копирование, пока я сплю, мне не нужно беспокоиться о временных рамках. Одна из причуд dump - резервное копирование целых разделов. Это означает, что вам нужно создать дамп каждого раздела отдельно (например, разделы / usr, / var и / tmp, а также раздел /). Дамп также позволяет указать «уровень» резервного копирования. Я буду выполнять еженедельное и ночное резервное копирование. Для своих еженедельных резервных копий я использую уровень 0, а для своих ночных резервных копий я использую уровень 2. Если вы используете ленточный накопитель или если вы хотите сэкономить место для хранения, рассмотрите возможность использования схемы резервного копирования Ханойской башни (Google it (Помните, что / backup - это то место, где у меня смонтирован внешний жесткий диск) Для еженедельных дампов я использовал следующие команды:

  • дамп -0Lna -C 100 -f / резервное копирование / еженедельно / корень /
  • дамп -0Lna -C 100 -f / резервное копирование / еженедельно / usr / usr
  • дамп -0Lna -C 100 -f / резервное копирование / еженедельно / var / var
  • дамп -0Lna -C 100 -f / резервное копирование / еженедельно / tmp / tmp

Для ночных дампов я использовал следующие команды:

  • дамп -2Lna -C 100 -f / backup / nightly / root /
  • дамп -2Lna -C 100 -f / резервное копирование / ночь / usr / usr
  • дамп -2Lna -C 100 -f / backup / nightly / var / var
  • дамп -2Lna -C 100 -f / backup / nightly / tmp / tmp

На самом деле я использовал команду `date` для именования моих файлов, но для простоты я ее пропустил. Дамп с использованием команды `date` будет выглядеть примерно так: dump -0Lna -C 100 -f / backup / weekly / usr /` date "+% Y-% B-% d" `/ usr Конечно, вам понадобится чтобы создать любые подходящие каталоги назначения резервных копий перед запуском команды dump, но вы должны иметь возможность выяснить это. И теперь у вас должен быть моментальный снимок вашей системы или, по крайней мере, знать, как его создать. Следующий шаг - как использовать восстановление и как делать "фиксированные" дискеты. НЕ ПРОПУСТИТЕ ЭТОТ ШАГ, иначе вы зря тратите время.

Шаг 3: `восстановить`

Прошло много времени с тех пор, как мне приходилось восстанавливать резервную копию, так что терпите меня.

Чтобы восстановить резервную копию, у вас должна быть какая-то минимальная ОС для переноса резервной копии с резервного носителя на действующую машину, живую машину (например, без неисправного оборудования) и сами резервные копии. Для минимальной ОС я использую тот же компакт-диск, который я использовал для установки FreeBSD. Sysinstall имеет режим «Fixit» для восстановления резервных копий. Если у вас нестандартное оборудование, вам может потребоваться создать свой собственный загрузочный диск. В этой статье это не рассматривается, но в основном состоит из создания базового ядра и его размещения на загрузочном диске. Примечание: ОЧЕНЬ минимальное ядро FreeBSD 5.4 занимает около 2,3 МБ, что означает, что оно не поместится на одной дискете. В общем, если фекалии попадают в вентилятор (ger ger ger), вы загружаетесь с компакт-диска, входите в режим «Fixit», монтируете жесткий диск и затем запускаете команду восстановления. Я считаю, что вам нужно монтировать и размонтировать разделы, которые вы восстанавливаете, по одному. Кроме того, ваши таблицы разделов должны быть чистыми, что означает, что вам, возможно, придется использовать `bsdlabel` для исправления ваших разделов. Команда восстановления: (после монтирования чистого раздела и перехода в каталог целевого раздела) восстановить vrf / dev / da0 Обратите внимание, что при необходимости можно восстановить части (отдельные файлы или каталоги) резервных копий, созданных с помощью дампа.

Шаг 4: удаленное резервное копирование

Удаленное резервное копирование может быть выполнено с помощью rdump, scp или специального программного обеспечения. Большинство хостинговых компаний предоставляют (за отдельную плату) ночное резервное копирование. Я НАСТОЯТЕЛЬНО рекомендую это, если вы цените свои данные. У меня было два выделенных сервера с двух разных хостов. Хотя эти резервные копии обычно хранятся на отдельном диске, они обычно находятся в одном здании, поэтому, если что-то случится со зданием (что маловероятно, но определенно возможно), тогда вы - СОЛНЕЧНЫЙ. Вот почему я рекомендую делать ваши собственные резервные копии вне офиса (относительно резервной копии системы), а также локальные, ночные резервные копии. Обратите внимание, что мне пришлось добавить расширение.txt для загрузки скрипта (вы можете удалить это). Поскольку компания, на которой размещен мой удаленный компьютер, выполняет ночные резервные копии tar, я решил просто копировать эти файлы на локальный компьютер каждую ночь. основание. Я написал управляемый PHP (потому что это то, что я знаю) сценарий оболочки, который в основном синхронизирует файлы резервных копий удаленной системы с локальной копией. Он загружает новые файлы, (необязательно) повторно загружает файлы резервных копий с разницей в размерах файлов и удаляет локальные копии, которых нет в удаленной системе. Это экономит пропускную способность, время и место для хранения. По сути, это просто оболочка diff для scp. Источник можно найти внизу этой страницы. Если вы его используете, не забудьте выполнить chmod, чтобы получить разрешение на выполнение (chmod u = + rx fetchbackups). Я рекомендую пользователю-оператору запускать этот сценарий (chown operator fetchbackups). Альтернативные методы удаленного резервного копирования включают использование scp для всего каталога, использование rdump или, как указали Кливерс, использование rsnapshot или backuppc. Если у вас нет корневого доступа к удаленному серверу, некоторые из этих методов могут оказаться невозможными, а scp часто требует много времени и пропускной способности.

Шаг 5: автоматизация

Итак, вы решили делать снимок своей системы и теперь хотите делать это каждую ночь. Cron отлично подходит для этого, и его довольно просто настроить.

Задания Cron - это просто команды, которые выполняются на регулярной основе. Они могут работать ежемесячно, каждую ночь или даже в половине восьмого утра в понедельник. Задания Cron указаны в файле crontab. Во FreeBSD этот файл находится в / etc / crontab. Просмотрите страницы руководства для / etc / crontab, чтобы понять, как это работает. Я прикрепил свой crontab к этой странице (удалите расширение.txt). Все, что вам нужно сделать, это добавить свои задания cron и сохранить файл. Файл пересматривается каждую минуту, так что все готово.

Шаг 6: Заключение и заключительные мысли

Надеюсь, вам удалось сделать резервную копию ваших машин. Далее следует лишь несколько заметок по теме.

Если вы серьезно относитесь к резервному копированию, тогда ТЕСТ ТЕСТ ТЕСТ. Убедитесь, что ваши процедуры резервного копирования и восстановления безупречны. Резервные копии, которые вы не можете восстановить, бесполезны. Одна из проблем, с которой я столкнулся, заключалась в том, что размер моего кеша был слишком большим. Это может (в основном) DoS вашей системы и привести к ее зависанию. Ваш кеш всегда должен составлять часть вашей оперативной памяти, чтобы быть эффективным (моя одна пятая), и НИКОГДА не должен превышать размер вашего пространства подкачки. 32 МБ - это то, что рекомендует страница руководства dump. Хотя эта информация может быть устаревшей, большой размер кеша не будет иметь большого значения, если у вас есть вся ночь для резервного копирования вашей системы. Если вы автоматизировали резервное копирование, убедитесь, что оно работает. Для вашей системы было бы настоящим кошмаром сбой, и ТОГДА поймете, что ваши резервные копии перестали работать 6 месяцев назад из-за нехватки места на диске. Задания Cron просто автоматизируют процесс «самоуспокоения». Если вы делаете резервное копирование вручную, не расслабляйтесь и не забудьте. Сделайте это рутиной. Не полагайтесь и на задания cron, потому что они могут потерпеть неудачу. Резервные копии - это просто копии ваших файлов. Это означает, что резервные копии должны быть защищены так же, если не лучше, чем ваши живые системы. Храните внешний жесткий диск в безопасном месте (например, вдали от воды и взломщиков). Запустите резервное копирование cronjobs от имени пользователя-оператора. Это ограниченная учетная запись, которая существует для таких вещей. Также убедитесь, что обычные пользователи не могут выполнять резервное копирование. Если вы чувствуете, что потенциально можете стать целью изощренной атаки (или даже если вы этого не сделаете), всегда шифруйте данные, передаваемые во время удаленного резервного копирования. Из-за количества информации, а также регулярности резервного копирования (если вы используете cronjobs), хакеры могут не торопясь украсть вашу информацию. Шифрование - это просто, поэтому используйте его. Убедитесь, что обычные пользователи не могут выполнять резервное копирование на свои устройства. Кроме того, scp требует аутентификации. Я НАСТОЯТЕЛЬНО рекомендую использовать общие / закрытые ключи. Вы не хотите, чтобы ваш пароль передавался каждый раз при запуске резервного копирования.

Рекомендуемые: