- Как создать резервную копию
- Дополнительная информация
- Introduction
- Backup
- Types of Backup
- Backup Methods
- mtime, atime and ctime
- Recovery
- Программы резервного копирования Linux
- Программы для резервного копирования в Linux
- 1. Rsync
- 2. AutoMysqlBackup
- 3. Duplicity
- 4. Rdiff-backup
- 5. Bacula
- 6. Backupninja
- 7. Kbackup
- 8. BackupPC
- 9. Amanda
- 10. Back In Time
- 11. Box Backup Tool
- 12. Luckybackup
- 13. Timeshift
- 14. Clonezilla
- 15. Systemback
- Выводы
Как создать резервную копию
Простейший способ создания резервной копии файлов и настроек — использовать специальное приложение, которое сделает эту работу за вас. Существует много различных приложений для резервного копирования, например, Déjà Dup .
Справка по выбранному вами приложению для резервного копирования проведёт вас через процесс настройки параметров создания резервной копии, а также расскажет, как восстановить ваши данные.
Альтернативный вариант — скопировать свои данные в безопасное место, например, внешний жёсткий диск, сервис онлайн-хранилища или USB-носитель. Ваши личные файлы и настройки находятся в вашей домашней папке, так что вы можете скопировать их оттуда.
Количество данных, которые можно включить в резервную копию, ограничено вместимостью устройства хранения. Если на целевом устройстве достаточно свободного места, лучше скопировать домашнюю папку целиком со следующими исключениями:
- Файлы, резервные копии которых уже имеются где-то ещё, например, на USB-накопителе или других съёмных носителях.
- Файлы, которые легко создать заново. Например, если вы программист, не стоит делать резервные копии всех файлов, создаваемых в процессе компиляции ваших программ. Вместо этого лучше создать копии файлов с исходными кодами.
- Любые файлы из папки «Корзина». Содержимое корзины можно найти в ~/.local/share/Trash .
Дополнительная информация
You can choose the displayed language by adding a language suffix to the web address so it ends with e.g. .html.en or .html.de.
If the web address has no language suffix, the preferred language specified in your web browser’s settings is used. For your convenience:
[ Change to English Language | Change to Browser’s Preferred Language ]
The material in this document is available under a free license, see Legal for details.
For information on contributing see the Ubuntu Documentation Team wiki page. To report errors in this documentation, file a bug.
Introduction
Backup and recovery is essential. Failure to have verified backup and recovery procedures puts your data at risk of loss. Users often only learn this lesson after critical information they require is permanently lost. Attempting to recover from data loss can be both time consuming and extremely difficult. So learn from others mistakes, and ensure beforehand that you have a system in place that protects your data and suits your needs.
- Why? — Why are you protecting yourself against disaster? Does it matter if you lose data? What losses will you suffer ($$$)?
- What? — What are you going to backup? Your entire hard drive or just some of the data?
- When? — When is the best time to backup your system? How often will you perform a backup? When will you use full backups and incremental backups.
- Where? — Where will the backups be stored? On-site? Off-Site? Cloud?
- Medium? — Attached storage (usb stick, usb hard drive, tape drive), backup server?
Backup
Types of Backup
- Recovery time objective (RTO): How fast should data be recovered? Can you continue to operate if data recovery is not recovered for a day, a week, etc?
- Recovery point objective (RPO): How much data can be lost. Can you lose two hours, two days or two weeks of data?
example: if you can withstand losing one week of data then a weekly backup would be sufficient, but if you can only withstand losing one day then you would need to employ a nightly backup (or a variation)
This document will cover three basic types of backup; Full, Incremental, and Differential.
Full: A full backup backs up all the files in the back up target.
Incremental: An incremental backup backs up all the files that have changed since the last backup.
Differential: A differential backup backs up all the files that have changed since the last full backup.
Backup Methods
- manual — Manual backup would be initiated on a schedule by the user and is the most common method for home users to backup their files. This method is also the least reliable.
- local automated — Automated backups that target a hard drive or tape drive attached to the physical box being backed up fall into this category. Advanced home users and small businesses will often use this method.
- remote automated — Automated backups that target a hard drive, tape drive or virtual tape library (VTL) over the network fall into this backup. This type of backup is often used by businesses that have money they can dedicate to the process of backup. As the organization becomes more mature they may even stage the backup on multiple mediums and increase the distance between backup and production systems.
mtime, atime and ctime
- mtime — modification time; this value is changed when the contents of the file is changed.
note: file system backups change atime while raw device backups will not. If you are implementing incremental or differential backups this is important
Recovery
note: many people consider only the backup part of this process and do nothing to verify that the backup can be restored. It is very important to test that your backup process is working and that data can be recovered.
- Restore many single files
- Restore an older version of a file
- Restore an entire folder
- Restore an entire drive and compare the checksum
If you do not test you may find out that nothing was being backed up when you need to restore the files in reality.
Программы резервного копирования Linux
Системные администраторы шутят, что люди делятся на два типа: те кто не делает резервные копии и те, кто уже делает резервные копии. В работе любого пользователя или системного администратора рано или поздно возникнет момент, когда что-то сломается и важные данные будут утеряны. Если до этого человек резервных копий не делал, то теперь научится и начнёт делать.
Если для домашних пользователей это, в принципе, не очень актуально, то для производственных серверов потеря данных может привести к большим финансовым потерям, поэтому важно всегда иметь хотя бы копию файлов и базы данных просто на всякий случай. В этой статье мы рассмотрим основные инструменты, которые можно использовать для резервного копирования различных элементов системы.
Программы для резервного копирования в Linux
1. Rsync
Утилита rsync не предназначена специально для резервного копирования, но её можно для этого использовать. Эта программа позволяет копировать файлы из одного компьютера на другой по протоколу SSH или своему собственному протоколу Rsync, но для последнего понадобиться чтобы на целевом компьютере был установлен сервер Rsync. Одно из преимуществ программы в том, что она позволяет не передавать через сеть всё содержимое файлов, а только те данные, которые изменились с последнего копирования. Это удобно для того чтобы не перегружать сеть лишними операциями. Никаких автоматизированных решений здесь нет, вам самим придётся настраивать что и куда копировать. Подробнее про Rsync читайте в этой статье.
2. AutoMysqlBackup
Если вам надо делать резервную копию базы данных MySQL, то для этого нельзя просто скопировать все файлы базы данных. Лучше скопировать нужные базы с помощью специального инструмента. К таким инструментам относится скрипт AutoMySQLBackup. С помощью него вы можете настроить регулярное резервное копирование вашей базы данных на другой сервер или в облако. Поддерживается ротация и удаление устаревших резервных копий.
3. Duplicity
Duplicity — это тоже небольшая утилита для резервного копирования файлов сервера, только в отличие от rsync она специально разработана для резервного копирования. Здесь тоже поддерживаются инкриментальные резервные копии и передача архивов по сети на другой сервер, но кроме того, поддерживается шифрование, а также восстановление из ранее сделанной резервной копии.
4. Rdiff-backup
Ещё одна небольшая утилита для резервного копирования, похожая на rsync. Она написана на Python и позволяет делать резервные копии только изменённых файлов. Кроме того, можно хранить резервную копию на другом сервере. На удалённый сервер можно записывать данные по протоколу rsync или ssh.
5. Bacula
Это уже не просто скрипт, а полноценная система резервного копирования, которую надо размещать на нескольких серверах. Она состоит из нескольких компонентов, каждый из которых имеет своё предназначение. Программа имеет открытый исходный код и предназначена, в первую очередь, для предприятий. Кроме полных резервных копий, так же как и в Rsync поддерживаются инкрементные, когда копируются только изменённые данные.
6. Backupninja
У программ, которые можно использовать для резервного копирования, таких как rsync, duplicity, tar и других нет конфигурационных файлов, с помощью которых можно было бы настроить и распланировать резервное копирование. И это понятно, они специально для этого не были предназначены. Backupninja — это оболочка для таких программ. Утилита позволяет настроить резервное копирование как файлов так и баз данных с помощью различных инструментов, но при этом хранит все конфигурационные файлы в одном месте — /etc/backups.d/. К тому же вместе у программой поставляется псевдографическая утилита ninjahelper, помогающая настроить всё почти в графическом интерфейсе.
7. Kbackup
Это небольшая графическая утилита для резервного копирования файлов разработанная для KDE. Позволяет выполнять как полные резервные копии так и архивировать только изменённые файлы. Копии хранятся только на том же компьютере, что и установлена программа, а автоматическое резервное копирование не поддерживается.
8. BackupPC
Это кроссплатформенная программа для резервного копирования, разработанная для больших предприятий. Для управлением резервным копированием используется веб-интерфейс. Можно делать как полные резервные копии, так и только для изменённых файлов. Можно запланировать автоматическое обновления или настроить уведомления о необходимости делать резервные копии.
9. Amanda
Amanda расшифровывается как Advanced Maryland Automatic Network Disk Archiver. Это тоже кроссплатфноменная программа для резервного копирования, созданная, в первую очередь, для предприятий. Она может располагаться на нескольких компьютерах, благодаря клиент-серверной архитектуре и сохранять резервные копии на другой сервер. Для создания резервных копий используются системные утилиты, в Linux это tar.
10. Back In Time
Это простая графическая утилита для настройки автоматического резервного копирования. Поддерживается как копирование на локальный компьютер, так и хранение копий удалённо. Вы можете выбрать папки, которые надо копировать и расположение, куда копировать.
11. Box Backup Tool
Ещё один инструмент корпоративного уровня. Его можно установить на несколько машин и выполнять резервное копирование между ними. Программой можно управлять только с помощью командной строки. Поддерживаются инкрементальные копии, а также шифрование данных.
12. Luckybackup
Это ещё одна оболочка над утилитой rsync, только на этот раз с графическим интерфейсом. Она позволяет планировать автоматическое резервное копирование, выполнять полные копии или только синхронизировать изменения с сервером. Интерфейс утилиты интуитивно понятный и достаточно удобен в использовании.
13. Timeshift
Раньше мы рассматривали программы, предназначенные для резервного копирования отдельных файлов и каталогов, однако существуют программы предназначенные для полного копирования всех файлов операционной системы. К ним относится Timeshift. Программа имеет как графический так и консольный интерфейс и позволяет создавать резервные копии системы с помощью rsync или btrfs. Подробнее об её возможностях читайте тут.
14. Clonezilla
В отличие от Timeshift программа Clonezilla поставляется на отдельном образе и запускается из BIOS. Она позволяет создать резервную копию как Linux так и Windows потому что копирует весь диск побайтово и потом позволяет всё это восстановить. Подробнее о том как пользоваться Clonezilla читайте в отдельной статье.
15. Systemback
Утилита Systemback чем-то похожа на Timeshift. Она тоже позволяет создавать точки восстановления операционной системы и потом с помощью них восстанавливать работу вашего дистрибутива. Кроме того, с помощью утилиты можно скопировать систему на другой диск или создать LiveCD образ для будущего восстановления.
Выводы
Всегда помните, что резервное копирование очень важно, оно помогает предотвратить потерю данных. Существует огромное количество программ резервного копирования Linux, которые помогут регулярно копировать ваши данные.
Вы можете выбрать один из выше рассмотренных инструментов, просто выберите что для вас подходит лучше. Если вы используете другую программу, не описанную здесь, напишите в комментариях!
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.