Разное

Резервное копирование linux: Программы резервного копирования Linux | Losst

Содержание

Программы резервного копирования Linux | Losst

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

Всегда держать резервную копию данных — это отличная практика, которая в будущем может сэкономить вам много времени. Резервное копирование Linux может выполняться вручную или автоматически. У многих утилит резервного копирования есть много дополнительных функций, которые позволяют настроить тип, время, файлы для выполнения копирования, протоколирование операций и многое другое.

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

Содержание статьи:

1. Rsync

Это очень популярная среди опытных пользователей Linux утилита командной строки для резервного копирования linux. У нее очень много функций, включая инкрементное резервное копирование, обновление дерева каталогов и файловой системы, сохранение прав доступа для файлов, владельца, ссылок, а также работа с резервными копиями как на локальной машине, так и на удаленной.

В утилиты также есть графический интерфейс под названием Grsync. Но главное преимущество в том, что все работы по резервному копированию могут быть автоматизированы с помощью скриптов и cron.

2. Fwbackups

Это бесплатный инструмент с открытым исходным кодом, который можно запускать как в Windows, так и в Linux. У программы простой и интуитивно понятный интерфейс, поэтому пользователи могут очень просто настроить и делать резервные копии.

Основные преимущества:

  • Простой в использовании интерфейс
  • Гибкость в настройке резервного копирования
  • Уделенное резервное копирование
  • Резервное копирование всей файловой системы
  • Исключение файлов и каталогов из копирования и многое другое.

3. Bacula

Это набор средств с открытым исходным кодом для резервного копирования, восстановления и проверки программного обеспечения. Он разработан для использования в условиях предприятий. Здесь есть такие функции, как удаленное резервное копирование, тонкая настройка и многое другое.

Программа имеет архитектуру сети и состоит из таких компонентов:

  • director — программа, которая управляет процессом резервного копирования.
  • console — инструмент, позволяющий пользователю взаимодействовать с director.
  • file — программа, которая устанавливается на компьютер и выполняет резервное копирование linux.
  • repostiry — используется для чтения и записи на диск.
  • directory — отвечает за используемые базы данных.
  • monitor — отслеживает все события, происходящие в других частях программы.

4. Backupninja

Эта мощная программа для резервного копирования позволяет создавать резервные копии файлов конфигурации и сохранять их в каталоге /etc/backup.d/.

Особенности программы:

  • Удобная настройка с помощью файлов ini
  • Использование сценариев для обработки новых типов резервных копий.
  • Отправка сообщений по электронной почте.
  • Легко выполняется создание резервных копий через терминал.
  • Интеграция с Linux-Vservers.

5. Simple Backup Suite (sbackup)

Это программа резервного копирования linux для рабочего стола Gnome. Пользователи могут выполнить всю настройку через графический интерфейс, для выбора файлов, которые нужно архивировать можно использовать регулярные выражения.

Особенности программы:

  • Создание сжатых и несжатых копий.
  • Поддержка нескольких профилей резервного копирования.
  • Поддержка регистрации, уведомлений по новой почте.
  • Планирование резервного копирования и копирование вручную.
  • Разделение несжатых копий на несколько частей.
  • Поддержка локального и удаленного резервного копирования linux.

6. Kbackup

Это простой инструмент резервного копирования для Unix и Linux. Он может создавать архивы и сжимать их с помощью gzip.

Преимущества программы резервного копирования linux:

  • Удобный интерфейс на основе меню
  • Поддержка сжатия, шифрования, двойной буферизации
  • Автоматическое не обслуживаемое резервное копирование
  • Высокая надежность
  • Поддержка полного и инкрементного резервного копирования
  • Резервное копирование linux по сети
  • Обширная документация

7. BackupPC

Это кроссплатформенное программное обеспечение для резервного копирования, которое может работать на Unix, Linux, Windows и MacOS. Оно разработано в первую очередь для предприятий с большой нагрузкой, но может использоваться не только на серверах, но и на персональных компьютерах.

Возможности программы:

  • Сжатие файлов для уменьшения размера
  • Нет необходимости в клиентской части программы
  • Гибкость резервного копирования
  • Гибкость настройки параметров
  • Уведомление пользователей о необходимости резервного копирования.

8. Amanda

Amanda — это программное обеспечение с открытым исходным кодом, которое работает на Unix, Linux и Windows. Здесь поддерживается использование системных утилит для выполнения резервного копирования, например, GNU tar в Linux. На компьютере с Windows используется собственная утилита. Пользователи могут настроить сервер для хранения копий на одной из машин сети.

9. Back Time

Это простое и легкое средство для резервного копирования операционной системы Linux. Работает с помощью создания снимков указанных директорий.

Поддерживаются такие функции:

  • Установка места хранения для создания снимков
  • Ручные и автоматические резервные копии
  • Словари для резервного копирования.

10. Mondorescue

Это бесплатное программное обеспечение для резервного копирования и восстановления системы, в котором есть все что нужно. Вы можете выполнять резервное копирование персонального компьютера, рабочих станций или сервреов, жестких дисков, NFS шар, CD, DVD и многое другое.

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

11. Box Backup Tool

Это инструмент с открытым исходным кодом для резервного копирования. Операции можно выполнять вручную, а можно настроить автоматическое выполнение. Возможности:

  • Резервное копирование онлайн
  • Демон для автоматического резервного копирования
  • Хранение резервных копий в файлах
  • Сжатие данных и шифрование
  • Выбор файлов и папок для копирования.

12. Luckybackup

Это бесплатный, мощный, быстрый, надежный и простой в использовании инструмент для резервного копирования и синхронизации на основе rsync.

Функциональность:

  • Сохранение прав собственности файлов
  • Создание нескольких резервных копий файлов
  • Продвинутые опции для файлов и каталогов
  • Позволяет использовать опции rsync.

13. Areca

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

Программа поддерживает такие функции:

  • Уведомления по электронной почте о процессе резервного копирования
  • Простота в использовании и настройке
  • Просмотр содержимого архивов.

14. Bareos Data Protection

Bareos Data Protection — это набор программ, который позволяет пользователям создавать резервные копии, а также восстанавливать и защищать данные в операционных системах семейства Linux. Программа реализована на основе Bacula и работает как сеть клиент — сервер.

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

Выводы

Всегда помните, что резервное копирование данных linux очень важно, оно помогает предотвратить потерю данных. Для Linux есть огромное количество программ резервного копирования Linux, которые помогут регулярно копировать ваши данные.

Вы можете выбрать один из выше рассмотренных инструментов, просто выберите что для вас подходит лучше. Если вы используете другую программу, не описанную здесь, напишите в комментариях!

Источник: http://www.tecmint.com

Бэкап Linux и восстановление его на другом железе / Хабр

Я работаю в организации с маленьким штатом, деятельность тесно связана с IT и у нас возникают задачи по системному администрированию. Мне это интересно и частенько я беру на себя решение некоторых.

На прошлой неделе мы настраивали FreePBX под debian 7.8, нанимали фрилансера. В процессе настройки оказалось, что сервер (да, я так называю обычный PC) не хочет грузится с HDD при подключенных USB 3G модемах, которые мы используем для звонков на мобильные, колупание BIOSа не помогло. Непорядок. Решил, что нужно перенести его на другую железяку. Так появилось сразу две связанные задачи:

  • сделать бэкап сервера;
  • восстановить бэкап на другом железе.

Гугление не дало внятных ответов, как это сделать, пришлось собирать информацию кусками и пробовать. Всякие acronis’ы отбросил сразу, ибо не интересно.

Опыт общения с linux-системами у меня небольшой: настройка VPN сервера на open-vpn, ftp-сервера и еще пара мелочей. Сам себя я характеризую как человека умеющего читать маны и править конфиги 🙂

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

Начинаем копать теорию:

По созданию бэкапов уйма статей, я для себя отметил два способа: tar — упаковывает и сжимает все файлы, при этом не сохраняется MBR, мой бэкап будет весить около 1.5 Gb; dd — делает полную копию раздела, включая MBR и всю область, где нет файлов, архив будет равен размеру раздела, в моем случае ~490 Gb.

Второй способ требует наличия внешнего жесткого диска объемом не меньше раздела, который архивируем. Да и что с ним потом делать, непонятно, хранить на полочке? Остановился на tar, чуть сложнее в реализации, нужно будет создать MBR, но время создания/восстановления архива существенно меньше, хранить бэкап проще, полтора гига можно закинуть в облако и скачать, когда будет нужно. Записывать его можно на ту же live-флэшку, с которой буду грузиться.

Итак, план действия:

  1. создание бэкапа;
  2. форматирование, разметка диска, создание файловой системы;
  3. восстановление бэкапа;
  4. создание MBR;
  5. тестирование и устранение неполадок.

1. Создание бэкапа

Грузимся с live-флэшки, у меня это debian-live-7.8.0-amd64-standard.

Переключаемся на root:

sudo su

Монтируем раздел, который будем архивировать, у меня это sda1, чтобы случайно не наломать дров, монтируем только для чтения. Посмотреть все свои разделы можно при помощи команд ls /dev | grep sd или df -l

mount -o ro /dev/sda1 /mnt 

Наша флэшка уже примонтирована, но в режиме только чтения, нужно перемонтировать для чтения-записи, чтобы писать туда бэкап.

mount -o remount,rw /dev/sdb1 /lib/live/mount/medium

Все готово для создания архива

tar -cvzpf /lib/live/mount/medium/backupYYYYMMDD.tgz --exclude=/mnt/var/spool/asterisk/monitor --exclude=/mnt/var/spool/asterisk/backup /mnt/

Здесь у нас параметры: c — создать архив, v — выводить информацию о процессе, z — использовать сжатие gzip, p — сохраняем данные о владельцах и правах доступа, f — пишем архив в файл, путь к файлу, —exclude — исключаем из архива каталог (я исключил каталоги с записями разговоров и каталог с бэкапами FreePBX), /mnt/ — каталог, который архивируем.

Ждем… у меня вся подготовка и создание архива заняли 10 минут. Будь флэшка быстрее, уложился бы в 7-8 минут.

Отмонтируем диск:

umount /mnt

… и перезагружаемся.

reboot

Складываем архив в надежное место за пределами офиса.

Восстановление бэкапа на другом железе

2. Размечаем диск, создаем файловую систему

Грузимся с live-флэшки, у меня все та же debian-live-7.8.0.

Переключаемся на root:

sudo su

Размечаем диск. Мне понравилась утилита с псевдографическим интерфейсом cfdisk. Там все просто и понятно.

cfdisk

Удаляем все имеющиеся разделы. Я создал два новых раздела, один на 490 Gb под / (sda1) и 10 Gb под swap (sda2) в конце диска, т.к. он практически не будет задействован. Проверим типы разделов. Который под систему должен иметь тип 83 Linux, второй — 82 Linux swap / Solaris. Помечаем системный раздел загрузочным (bootable), сохраняем изменения и выходим.

Cоздаем файловую систему на первом разделе.

mkfs.ext4 /dev/sda1

3. Распаковываем архив.

Монтируем отформатированный раздел

mount /dev/sda1 /mnt

Распаковываем архив прямо с флэшки

tar --same-owner -xvpf /lib/live/mount/medium/backupYYYYMMDD.tgz -C /mnt/

Параметр —same-owner — сохраняет владельцев у распаковываемых файлов, x — извлекаем из архива, v — выводить информацию о процессе, p — сохраняем права доступа, f — указываем файл, который распаковываем, C — распаковываем в категорию.

4. Создаем MBR на новом диске.

Чтобы корректно создать загрузочную запись, монтируем рабочие каталоги к нашему будущему root-каталогу, у меня это /mnt. Каталоги /dev и /proc сейчас используются live-системой, используем параметр bind, чтобы они были доступны сразу в двух местах:

mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc

Переключаемся на новую систему используя chroot:

chroot /mnt

Делаем swap-раздел для новой системы:

mkswap /dev/sda2 

Подключаем его же:

swapon /dev/sda2

Чтобы grub работал, нужно указать ему правильные UUID разделов в fstab, сейчас там прописаны разделы предыдущей системы:

nano /etc/fstab

Открываем второй терминал (Alt+F2) под root:

sudo su

Вызываем:

blkid

И видим текущие UUID разделов.

Вручную переписываем их в fstab переключаясь между Alt+F1 и Alt+F2. Да, муторно, но попытки копировать занимали у меня больше времени, чем переписывание. Сохраняем fstab.

Устанавливаем grub2. У меня один физический диск, поэтому ставим его на sda:

grub-install /dev/sda

На чистый диск должно встать без ошибок. Обновляем информацию из fstab:

update-grub

Возвращаемся в Live-систему:

exit

Размонтируем все каталоги:

umount /mnt/dev
umount /mnt/proc
umount /mnt

Если вылазят процессы, которые используют эти каталоги, убиваем их используя fuser.

Все, поехали. Грузимся с жесткого диска:

reboot

Здесь статья должна была закончиться, но у меня возникли проблемы с подключением к интернету. Сервер видит сеть, видит компьютеры в ней, но в интернет не ходит… а это как бы важно для телефонии.

5. Тестирование и устранение неполадок.
ifconfig -a

Показывет интерфейсы eth2 и lo, гугление сказало, что gateway можно прописать только подключению eth0, остальные рассчитаны только на работу внутри сети.

Похоже, отсутствие eth0 вызвано способом переноса системы. Находим файл, который отвечает за нумерацию интерфейсов, смотрим туда:

nano /etc/udev/rules.d/70-persistent-net.rules

Действительно, там два активных интерфейса, определенных MAC’ами. Комментируем первый, второму прописываем eth0.

Перезапуск /etс/init.d/networking не помог, поэтому перезагружаемся:

reboot

Подключаем донглы, проверяем, все работает.
Спасибо за внимание.

🤴 Топ 10 бесплатных программ резервного копирования для Linux — Information Security Squad

Вступление

Резервное копирование — это один из важнейших способов защиты вашего бизнеса от полной катастрофы в случае серьезного сбоя или случайного удаления ваших ценных данных.

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

Тут анализируются их особенности и что они могут предложить.

Не стесняйтесь попробовать любой из этих инструментов, который соответствует вашим потребностям.

Как выбрать средство резервного копирования для Linux?

1. Restic

Restic, написанный на языке программирования Go, — это открытая, быстрая, безопасная и кроссплатформенная программа резервного копирования. Этот инструмент резервного копирования шифрует данные с помощью AES-256 в режиме счетчика и аутентифицирует их, используя код аутентификации криптографических сообщений Poly1305-AES.

Более подробно мы его рассмотрели ранее:

Restic — быстрое, безопасное и эффективное приложение для резервного копирования

Лучшее защищенное приложение резервного копирования для Linux, macOS и Windows

2. Borg

В качестве программы резервного копирования с дедупликацией Borg стремится обеспечить эффективный и безопасный способ резервного копирования данных.

К вашему сведению: дедупликация данных — это метод устранения дублирующих копий повторяющихся данных.

Поскольку для резервного копирования данных используется метод дедупликации, это делает Borg пригодным для ежедневного резервного копирования, поскольку сохраняются только изменения.

Особенности Borg

Borg — это бесплатное программное обеспечение с открытым исходным кодом: оно лицензировано по лицензии BSD (3 пункт)
Быстрая и простая установка на нескольких платформах — резервное копирование Borg может выполняться на: Linux, Mac OS X, FreeBSD, OpenBSD и NetBSD (пока нет поддержки xattrs / ACL или бинарных файлов), Cygwin (экспериментальный, еще нет бинарных файлов), подсистема Linux Windows 10 (экспериментальный).
Поддержка сжатия: Если вам необходимо сжать резервную копию, что является необязательным, вам будет интересно узнать, что все данные могут быть сжаты с помощью следующих утилит: zlib (средняя скорость и сжатие), lzma (низкая скорость, высокая степень сжатия), lz4 (супер быстрая, низкая компрессия), zstd (широкий диапазон от высокой скорости и низкой компрессии до высокой компрессии и низкой скорости).
Поддержка бэкэндов удаленных хостов: инструмент резервного копирования Borg может хранить данные на любом удаленном хосте, доступном через Secure Shell (SSH). Если Borg установлен на удаленном хосте, можно добиться большого прироста производительности по сравнению с использованием сетевой файловой системы, такой как nfs и другие.
Безопасность: данные на стороне клиента могут быть зашифрованы с использованием 256-битного алгоритма шифрования AES. Проверка тех же зашифрованных данных может быть выполнена с использованием HMAC-SHA256
Скорость: локальное кэширование данных индекса файлов / чанков, быстрое обнаружение неизмененных файлов, C / Cython используется в критически важном для производительности коде, таком как чанкинг, сжатие и шифрование.
Эффективное хранилище. Как уже указывалось ранее, Borg — это программа резервного копирования с дедупликацией. Что удивительно, так это то, что при дедупликации учитываются все фрагменты в одном и том же репозитории, независимо от того, приходят ли они с разных машин, из предыдущих резервных копий, из одной и той же резервной копии или даже из одного и того же файла.

В отличие от других методов дедупликации, Borg не зависит от следующего:

  • имена файлов / каталогов остаются прежними: так что вы можете перемещать свои вещи без сбоев дедупликации, даже между машинами с общим репо.
  • Полные файлы или отметки времени остаются неизменными: если большой файл немного изменяется, необходимо сохранить только несколько новых фрагментов — это отлично подходит для виртуальных машин или сырых дисков.
  • Абсолютная позиция фрагмента данных внутри файла: материал может быть сдвинут и все равно будет найден алгоритмом дедупликации.

3. Duplicati

Duplicati является одним из многих клиентов резервного копирования, который является бесплатным, c открытым исходным кодом и надежно хранит зашифрованные, инкрементные, сжатые резервные копии в облачных хранилищах и на удаленных файловых серверах.

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

Duplicati имеет встроенный планировщик, поэтому с ним легко создавать регулярные и актуальные резервные копии.

Особенности Duplicati

  • Интегрированный апдейтер уведомляет вас о выходе новой версии
  • Duplicati использует шифрование AES-256 (или GNU Privacy Guard) для защиты всех данных перед их загрузкой.
  • Duplicati изначально загружает полную резервную копию, а затем сохраняет небольшие инкрементные обновления для экономии пропускной способности и дискового пространства.
  • Планировщик автоматически поддерживает актуальность резервных копий.
  • Зашифрованные файлы резервных копий передаются на такие цели, как FTP, Cloudfiles, WebDAV, SSH (SFTP), Amazon S3 и другие.
  • Duplicati позволяет создавать резервные копии папок, документы таких типов, как, например, документы или изображения, или пользовательские правила фильтрации.
  • Duplicati доступен в виде приложения с простым в использовании пользовательским интерфейсом и в качестве инструмента командной строки.
  • Duplicati может создавать правильные резервные копии открытых или заблокированных файлов, используя службу моментальных снимков томов (VSS) под Windows или диспетчер логических томов (LVM) под Linux. Это позволяет Duplicati создавать резервные копии файла Microsoft Outlook PST во время работы Outlook.
  • Duplicati использует шифрование AES-256 (или GNU Privacy Guard) для защиты всех данных перед их загрузкой. Поэтому ваши данные защищены от плохих парней.
  • Duplicati изначально загружает полную резервную копию, а затем сохраняет небольшие инкрементные обновления для экономии пропускной способности и дискового пространства.
  • Планировщик автоматически поддерживает актуальность резервных копий.
  • Большое энтузиастическое сообщество готово помочь вам в случае любых ошибок и проблем.

4. Bacula

Bacula — это инструмент резервного копирования, который можно использовать для управления резервным копированием, восстановлением и проверкой компьютерных данных в сети компьютеров разных типов или на одном сервере.

Bacula имеет возможность резервного копирования на различные типы носителей, включая ленту и диск.

Более подробно мы рассмотрели его ранее:

Bacula — инструмент резервного копирования с открытым исходным кодом

5. Bareos

Со своей стороны Bareos (Backup Archiving Recovery Open Sourced) представляет собой надежное межсетевое программное обеспечение с открытым исходным кодом для резервного копирования, архивирования и восстановления данных для всех хорошо зарекомендовавших себя операционных систем.

Более подробно он был рассмотрен ранее в нескольких наших статьях:

6. Barman

Barman (Backup and Recovery Manager) — это инструмент администрирования с открытым исходным кодом для аварийного восстановления серверов PostgreSQL, написанный на Python (pgbarman.org, 2019).

Barman позволяет организациям выполнять удаленное резервное копирование нескольких серверов в критически важных для бизнеса средах и помогает администраторам баз данных на этапе восстановления.

Особенности Barman

Barman имеет очень много функций, которые постоянно востребованы клиентами, включая следующие:

  • Полное «горячее» физическое резервное копирование сервера PostgreSQL
  • Восстановление в определенный момент времени (PITR)
  • Управление несколькими серверами PostgreSQL одновременно
  • Удаленное резервное копирование через rsync / SSH или pg_basebackup (включая режим ожидания 9.2+)
  • Поддержка как локального, так и удаленного (через SSH) восстановления
  • Поддержка архивации и потоковой передачи WAL
  • Поддержка синхронной потоковой передачи WAL («нулевая потеря данных», RPO = 0)
  • Инкрементное резервное копирование и восстановление
  • Параллельное резервное копирование и восстановление
  • Центр файлов WAL для расширенной интеграции с резервными серверами
  • Управление политиками хранения резервных копий и файлов WAL
  • Состояние сервера и информация
  • Сжатие файлов WAL (bzip2, gzip или custom)
  • Управление базовыми резервными копиями и файлами WAL через каталог
  • Простой файл конфигурации INI
  • Полностью написан на Python
  • Перемещение PGDATA и табличных пространств во время восстановления
  • Общая информация и информация об использовании резервных копий
  • Диагностика сервера для резервного копирования
  • Интеграция со стандартными инструментами архивации (например, tar)
  • Pre / Post скрипты хуков резервного копирования
  • Локальное хранилище метаданных

7. BackupPC

Что такое BackupPC?

BackupPC — это высокопроизводительная система корпоративного уровня для резервного копирования компьютеров, ноутбуков и компьютеров под управлением Linux, Windows и macOS на диск сервера.

BackupPC легко настраивается и прост в установке и обслуживании (backuppc.github.io, 2019)

Особенности BackupPC
  • Дедупликация данных: идентичные файлы в нескольких резервных копиях одного и того же или разных компьютеров хранятся только один раз, что приводит к значительной экономии дискового пространства и дискового ввода-вывода
  • Открытый исходный код
  • Веб-интерфейс позволяет администраторам просматривать файлы журналов, конфигурацию, текущее состояние и позволяет пользователям запускать и отменять резервные копии, а также просматривать и восстанавливать файлы из резервных копий.
  • Никакого программного обеспечения на стороне клиента не требуется. Стандартный протокол smb используется для извлечения данных резервного копирования на клиентах Windows. На клиентах Linux для резервного копирования данных используется tar over ssh / rsh / nfs. В версии 2.0.0 rsync также поддерживается на любом клиенте с rsync или rysncd.
  • Мощный пользовательский веб-интерфейс (http / cgi) позволяет администраторам просматривать файлы журналов, конфигурацию, текущее состояние и позволяет пользователям запускать и отменять резервные копии, а также просматривать и восстанавливать файлы из резервных копий.
  • Поддерживается полный набор параметров восстановления, включая прямое восстановление (через smbclient, tar или rsync / rsyncd) или загрузку файлов zip или tar.
  • Поддерживает мобильные среды, где ноутбуки только периодически подключаются к сети и имеют динамические IP-адреса (DHCP).
  • Гибкие параметры конфигурации позволяют выполнять несколько резервных копий параллельно, указание, какие общие ресурсы для резервного копирования, какие каталоги для резервного копирования или нет, различные расписания для полного и инкрементного резервного копирования, расписания для напоминаний по электронной почте пользователям и так далее. Параметры конфигурации могут быть установлены для всей системы или для каждого ПК.
  • Пользователям отправляются периодические напоминания по электронной почте, если их компьютер не был недавно скопирован. Содержание электронной почты, сроки и политики настраиваются.
  • Протестировано на хостах Linux, Freenix и Solaris, а также на клиентах Linux, Windows 95, 98, 2000 и XP.
  • Дополнительная поддержка сжатия еще больше сокращает объем дискового пространства.
  • Умная схема пула минимизирует дисковое хранилище и дисковый ввод-вывод (Источник backuppc.github.io, 2019)

8. Bup

Со своего основного сайта документации:

Bup — очень эффективная система резервного копирования, основанная на формате git packfile, обеспечивающая быстрое инкрементное сохранение и глобальную дедупликацию (среди файлов и внутри файлов, включая образы виртуальных машин) https://bup.github.io, 2019.

Крутые функции Bup, которые выделяют его среди остальных
  • Он использует алгоритм скользящей контрольной суммы (аналогично rsync) для разделения больших файлов на куски. Это выгодно потому, что вы можете постепенно создавать резервные копии образов дисков, баз данных и файлов XML огромных виртуальных машин.
  • Он использует формат packfile из git (система контроля версий с открытым исходным кодом), поэтому вы можете получить доступ к сохраненным данным, даже если вам не нравится пользовательский интерфейс bup.
  • Он написан на Python (с некоторыми частями C, чтобы сделать его быстрее), поэтому вам легко расширять и поддерживать.
  • Bup может использовать избыточность «par2» для восстановления поврежденных резервных копий, даже если на вашем диске обнаружены поврежденные сектора.
  • Вы можете выполнить резервное копирование непосредственно на удаленный сервер bup, не требуя тонны временного дискового пространства на резервном компьютере
  • Вы можете возобновить резервное копирование, если оно было прервано
  • В отличие от git, он записывает упаковочные файлы напрямую (вместо отдельной стадии сборки / переупаковки мусора), поэтому работает быстро даже с огромными объемами данных.
  • Данные «автоматически» распределяются между инкрементными резервными копиями без необходимости знать, какая резервная копия основана на какой другой.

9. Lsyncd

Разработанный для синхронизации медленно меняющегося дерева локальных каталогов с удаленным зеркалом, Lsyncd использует интерфейс событий файловой системы (inotify или fsevents) для отслеживания изменений в локальных файлах и каталогах.

Lsyncd сопоставляет эти события в течение нескольких секунд, а затем запускает один или несколько процессов для синхронизации изменений в удаленной файловой системе.

По умолчанию используется метод синхронизации rsync.

Характеристики

  • Lsyncd — это легкое решение для «живого» зеркала.
  • Lsyncd сравнительно прост в установке
  • Lsyncd не требует новых файловых систем или блочных устройств
  • В отличие от rsync, Lysncd не снижает производительность локальной файловой системы.

10. Rclone

Rclone («rsync для облачного хранилища») — это программа командной строки для синхронизации файлов и каталогов между различными поставщиками облачного хранилища.

Он поддерживает облачные провайдеры, такие как Amazon S3, Amazon Drive, Box, Ceph, DigitalOcean Spaces, Dropbox, Google Cloud Storage, Google Drive, Mega и многие другие.

Особенности Rclone

  • MD5 / SHA-1 хэши всегда проверяются на целостность файла
  • Временные метки сохраняются в файлах
  • Частичная синхронизация поддерживается для всего файла
  • Режим копирования, чтобы просто копировать новые / измененные файлы
  • Синхронный (односторонний) режим, чтобы сделать каталог идентичным
  • Режим проверки, чтобы проверить равенство хеш-файлов
  • Может синхронизироваться с сетью, например, две разные облачные учетные записи
  • Дополнительное шифрование (Crypt)
  • Дополнительный кеш (Cache)

 

 

Резервное копирование Ubuntu | Losst

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

Если вы делаете резервное копирование Ubuntu, то потом сможете все очень просто восстановить, даже если система была почти убита. Уже существует множество программ для создания резервных копий как файлов, так и всего диска, одна из самых популярных из них — это CloneZilla. Но мы не будем их сегодня рассматривать. В этой статье мы поговорим о том, как выполнить резервное копирование системы без сторонних программ, с помощью системных команд. Это может быть полезнее в некоторых случаях.

Содержание статьи:

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

Рассмотрим самые распространенные способы копирования среди администраторов и обычных пользователей.

Способ 1. Список пакетов

Самый простой способ резервного копирования Ubuntu, кстати, именно эту возможность использует MintBackup в LinuxMint, это получение списка всех установленных пакетов. Да, тут вы не сохраните всю конфигурацию, зато сможете очень быстро восстановить все установленные программы.

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

dpkg --get-selections | grep -v deinstall > backup.txt

Далее, скопируйте полученный файл в надежное место. Когда система сломается, переустановите ее с установочного носителя, а затем просто выполните команды:

sudo dpkg --set-selections < backup.txt

sudo apt-get -y update
$ sudo apt-get dselect-upgrade

Файл со списком пакетов нужно поместить в текущую папку. Таким образом, вы очень быстро вернете все ранее установленные программы с минимальными затратами времени и в то же время получите чистую систему.

Способ 2. Создание архива

Резервное копирование таким способом более надежно, поскольку вы не просто создаете список установленных программ, а делаете архив из всей файловой системе. Фактически, вы можете потом развернуть этот архив на любой машине и получить полноценную операционную систему после настройки драйверов.

Таким способом часто создаются резервные копии систем на серверах и для него достаточно просто использовать утилиту tar и не нужны сторонние программы. Для создания архива используйте такую команду:

sudo tar czf /backup.tar.gz --exclude=/backup.tar.gz --exclude=/home --exclude=/media --exclude=/dev --exclude=/mnt --exclude=/proc --exclude=/sys --exclude=/tmp /

В этой команде все достаточно просто несмотря на ее запутанность. Опция c означает, что нужно создать архив (Create), z — включает сжатие Gzip. Затем с помощью опции -f мы указываем файл, в который нужно сохранить результат. Затем с помощью серии опций —exclude мы исключаем из архива сам файл архива, домашний каталог и директории с виртуальными файловыми системами. В самом конце указываем папку, с которой стоит начать сбор данных — /. Вот и все. Процесс займет очень много времени, но когда он завершится, вы получите полную резервную копию системы в корневом каталоге.

Если система повреждена, вам нужно загрузиться с LiveCD/USB, и примонтировать корневой каталог в /mnt/. Затем подключите носитель с резервной копией и выполните команду для распаковки:

sudo tar xf /run/media/имя_носителя/backup.tar.gz -C /mnt

Команда быстро распакует все, что было сохранено и вам останется только перезагрузить компьютер, чтобы вернуться к своей основной системе. Здесь не восстанавливается только загрузчик, восстановить Grub нужно отдельно если он был поврежден.

Способ 3. Резервное копирование в rsync

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

rsync -aAXv --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} / /папка/назначения

Набор опций -aAX включают передачу в режиме архива, что гарантирует полное копирование символических ссылок, устройств, разрешений и расширенных атрибутов, при условии, что их поддерживает целевая файловая система. Опция —exclude, как и раньше, исключает из копии виртуальные файловые системы.

После завершения копирования вам останется отредактировать /etc/fstab и заменить в нем адрес корневого раздела на новый. А также создать новый конфигурационный файл для загрузчика, автоматически или вручную.

Способ 4. Создание образа раздела

Команда dd linux позволяет создать полную копию раздела или даже всего диска. Это самый надежный, но в то же время потребляющий большое количество памяти способ выполнить резервное копирование системы Ubuntu. Утилита просто переносит весь диск по одному байту в образ. Команда выглядит вот так:

sudo dd if=/dev/sda4 of=~/backup.img

Здесь /dev/sda4 — это ваш корневой раздел. После завершения выполнения команды вы получите готовый образ, затем, чтобы восстановить систему из этой копии достаточно поменять опции местами и указать путь к файлу копии:

sudo dd if=~/backup.img of=/dev/sda4

Правда, процесс может занять достаточно много времени, в зависимости от скорости работы вашего диска.

Способ 5. Создание Squashfs образа

Преимущество Squashfs в том, что это полноценная файловая система в одном файле, которую можно очень быстро примонтировать и быстро извлечь нужные файлы. Кроме того, файловую систему можно открыть привычными менеджерами архивов. Для создания образа со всей системы используйте:

sudo mksquashfs / /root-backup.sqsh -e root-backup.sqsh home media dev run mnt proc sys tmp

Теперь, чтобы примонтировать созданный образ будет достаточно набрать такую команду:

sudo mount /root-backup.sqsh /mnt/ -t squashfs -o loop

А уже отсюда вы можете извлечь любой файл или перенести все это в реальную файловую систему с помощью cp -p.

Выводы

Резервное копирование Ubuntu 16.04 очень важно для поддержания вашей операционной системы в нормальном состоянии. В случае любой неожиданной ситуации вы сможете все восстановить. Если вас интересуют графические программы для бэкапа, вы можете попробовать remastersys или timeshift. Надеюсь, эта информация была полезной для вас.

Оцените статью:

Загрузка…

4 удобных приложения для резервного копирования в Linux

1. DejaDup

Простое и понятное приложение, которое предустановлено во многих популярных дистрибутивах. К примеру, оно присутствует в той же Ubuntu, только называется «Резервные копии». DejaDup не смутит даже самых неопытных пользователей. В главном окне программы всего две кнопки: «Восстановление» и «Создать резервную копию».

На боковой панели в разделе «Папки для сохранения» выберите, что именно хотите копировать. По умолчанию делается бэкап вашей пользовательской папки. В следующем разделе — «Исключённые папки» — отметьте те данные, которые сохранять не следует.

DejaDup умеет отправлять копии на локальные диски, ваши личные серверы в локальной сети, а также в облака Google и Nextcloud. Планировщик тут тоже в наличии, хотя настройки довольно скудные. Приложение может делать копии каждый день или неделю и — при необходимости — удалять старые данные (раз в полгода или год).

Чтобы установить DejaDup, просто введите в терминал команду, подходящую для вашего дистрибутива:

  • Ubuntu: sudo apt‑get install deja‑dup
  • Fedora: sudo dnf install deja‑dup
  • openSUSE: sudo zypper install deja‑dup
  • Arch: sudo pacman -S deja‑dup

2. Cronopete

Создатель Cronopete прямо заявляет на своём сайте, что при разработке своего приложения вдохновлялся Time Machine на Mac. А потому настроек тут минимум. При первом запуске Chronopete спросит вас, где хранить копии — в какой‑то папке или на внешнем жёстком диске, — и предложит выбрать файлы, которые следует копировать.

После этого приложение поселится в вашем трее и будет периодически делать бэкапы. А ещё Chronopete станет автоматически удалять старые файлы, когда ваш диск начнёт переполняться.

Установить Cronopete можно, загрузив пакет с сайта автора.

Загрузить Chronopete →

Сейчас читают
🔥

3. Back in Time

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

Поначалу может показаться, что настроек у Back in Time слишком много. Но, в принципе, разобраться в нём не так сложно.

Отдельная приятная особенность Back in Time в том, что оно умеет создавать резервные копии не только по расписанию, но и каждый раз, когда подключается подходящий внешний носитель. Вы подсоединяете жёсткий диск, и через несколько минут на нём появляется резервная копия.

Установить Back in Time можно так:

  • Ubuntu: sudo add‑apt‑repository ppa:bit‑team/stable; sudo apt update; sudo apt install backintime‑gnome
  • Fedora: sudo dnf install backintime‑qt4
  • openSUSE: sudo zypper install backintime‑qt4
  • Другие дистрибутивы: загрузить Back in Time →

4. Timeshift

Чрезвычайно мощное приложение для защиты всей вашей системы от нежелательных изменений. Помните точки восстановления в Windows? Timeshift делает то же самое, но в Linux.

При первом запуске программа спросит у вас, какой из двух типов резервного копирования следует использовать. Режим Rsync работает во всех системах Linux, но он довольно медленный. Btrfs быстрее, но его можно применить только для вариантов, установленных на разделы Btrfs (тип файловой системы указывается при инсталляции Linux).

Затем вам нужно будет выбрать, какие разделы копировать (по умолчанию включён только системный) и как часто это делать. Обычно Timeshift выполняет бэкапы ежедневно. После установки Timeshift вы можете вытворять со своей системой что хотите: если вы что‑то повредите, всегда можно будет откатиться на стабильный «снимок».

Даже если ваша ОС перестала запускаться совсем, ничего страшного. Возьмите флешку или диск с Linux, загрузитесь в live‑режиме. Затем введите команду на инсталляцию Timeshift (не переживайте, установка произойдёт только в оперативной памяти). Укажите, где вы храните резервные «снимки», и выберите нужный. Через пять минут система будет восстановлена.

Но учтите, что разработчик Timeshift не рекомендует программу для резервного копирования документов и личных файлов. Она заточена под сохранение настроек и состояния самой системы.

Установить Timeshift можно вот так:

  • Ubuntu: sudo sudo apt‑add‑repository -y ppa:teejee2008/ppa; apt update; apt install timeshift
  • Fedora: sudo dnf install timeshift
  • Arch: sudo yaourt timeshift
  • Другие дистрибутивы: загрузить Timeshift →

Читайте также
🧐

Резервное копирование системы | Русскоязычная документация по Ubuntu

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

Сразу стоит отметить, что все операции стоит производить не «по-живому», т.е. не на работающей системе, а с liveCD или установленной на соседнем разделе/флэшке/usb-hdd системы. В случаях, когда простой в несколько минут критичен для системы, возможно копирование системы из-под самой себя, но при этом нужно учитывать некоторые дополнительные условия, которые в данной статье пока что не рассматриваются

Далее по тексту для действий, выполняемые от имени суперпользователя, будет использоваться команда sudo, что является стандартом для Ubuntu. В других системах возможно получение привелегий суперпользователя через su, некоторые liveCD-системы по умолчанию работают в режиме суперпользователя


tar

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

Создание архива

Для начала создайте точки монтирования для корневого раздела и для раздела, на котором вы собираетесь создавать бэкап, например так

sudo mkdir /mnt/{root,backup}

Смонтируйте оба раздела. Для большей надежности можно смонтировать корневой раздел в режиме read-only (только для чтения), чтобы исключить вероятность случайного изменения данных

sudo mount /dev/sdXY /mnt/root -o ro
sudo mount /dev/sdXY /mnt/backup

(Вместо «sdXY» используйте ваши значения для нужных разделов. определить их можно с помощью sudo fdisk -l или sudo blkid)

В случае, если вы используете отдельные разделы для /boot, /usr, /home и пр. и хотите включить их содержимое в бэкап, примонтируйте их в соответствующие папки

sudo mount /dev/sdXY /mnt/root/usr -o ro
sudo mount /dev/sdXY /mnt/root/home -o ro

При необходимости создайте на бэкап-разделе папку, в которой вы хотите разместить архив, например

sudo mkdir -p /mnt/backup/ubuntu/root

Теперь можно приступить к созданию архива. Чтобы создать архив с gzip-сжатием, выполните

sudo tar -cvzpf -C /mnt/root /mnt/backup/ubuntu-sda1.tar.gz .

(Ключ -p включает сохранение владельцев и прав доступа для файлов 1))

Для bzip2-сжатия используйте

sudo tar -cvjpf /mnt/backup/ubuntu-sda1.tar.bz2 /mnt/root

Для lzma-сжатия

sudo tar --lzma -cvpf /mnt/backup/ubuntu-sda1.tar.lzma /mnt/root

Аналогично для lzo-сжатия — ключ --lzop вместо --lzma

Различные алгоритмы сжатия дают разный размер архива, а также отличаются по производительности

По завершении процесса отмонтируйте все смонтированные разделы

sudo umount /mnt/root{/boot,/var,/home,} /mnt/backup

Восстановление из архива

Внимание! Данный способ предполагает полный откат к состоянию на момент создания архива с заменой всех данных!

Создайте точки монтирования для корневого раздела и раздела, на котором хранится ваш архив

sudo mkdir /mnt/{root,backup}

Примонтируйте раздел с архивом-бэкапом

sudo mount /dev/sdXY /mnt/backup -o ro

Отформатируйте корневой раздел в ту же (или другую) ФС. Если вы используете отдельные разделы для /usr, /boot и пр. и архивировали их, отформатируйте их тоже

sudo mkfs.reiserfs -l "root" /dev/sdXY
sudo mkfs.ext2 -L "boot" /dev/sdXY
sudo mkfs.ext4 -L "home" /dev/sdXY

(если вы восстанавливаете систему на новый жесткий диск, разметьте его с помощью fdisk/gparted и отформатируйте разделы)

Некоторые файловые системы поддерживают задание UUID при форматировании. Это дает возможность создать ФС с таким же UUID, как у старой, что позволит избежать необходимости править fstab.

Для ext2/3/4 UUID задается с помощью ключа -U, а еще больше упростить задачу можно командой вида

sudo mkfs.ext4 -L "label" -U "$(sudo blkid -o value -s UUID /dev/sda1)" /dev/sda1

Для reiserfs это будет ключ -u, для reiser4 -U, для остальных см. man mkfs.тип

Смонтируйте свежесозданные ФС

sudo mount /dev/sdXY /mnt/root
sudo mount /dev/sdXY /mnt/root/home

Теперь можно распаковать содержимое архива на место

sudo tar --same-owner -xvpf /mnt/backup/ubuntu-2010-10-07.tar.bz2 -C /mnt/root/

(ключ -C задает каталог, в который нужно распаковать файлы. ключ --same-owner сохраняет владельцев файлов при распаковке)

Если вы воспользовались советом выше и создали ФС тех же типов с теми же UUID — можете смело пропустить этот пункт. В противном случае вам придется исправить fstab в соответствии с произведенными изменениями. Откройте этот файл в любимом текстовом редакторе (например, nano) и замените UUID (и тип ФС, если форматировали что-либо в другую ФС) нужных разделов

sudo nano /mnt/root/etc/fstab

Сохраните файл, выйдите из редактора и отмонтируйте все смонтированные разделы

sudo umount /mnt/root{/var,/boot,} /mnt/backup

dd — копирование раздела

dd — достаточно универсальная программа, применяемая для всевозможных целей. Здесь мы рассмотрим бэкап раздела диска с ее помощью. Сразу стоит отметить, что данный способ принципиально отличается от других тем, что dd работает не с файловой системой (и файлами на ней), а напрямую с данными, записанными в заданную область жесткого диска.

Данный метод имеет следующие преимущества:

  • полное сохранение прав доступа, xattr (расширенные атрибуты файлов), acl и прочих атрибутов файлов — раздел копируется вместе с файловой системой и всем ее содержимым в том виде, в каком данные записаны на диск
  • универсальность — dd присутствует в любой Linux-системе

  • возможность копирования разделов с экзотическими ФС (например, Reiser4)
  • возможность работы с образом как с реальным разделом

Однако, есть целый ряд недостатков:

  • если файловая система содержит ошибки, после восстановления из такого бэкапа вы получите ФС с теми же ошибками

  • для распаковки такого бэкапа потребуется раздел объемом не меньше исходного, вне зависимости от количества занятого места на разделе

  • копируется все содержимое раздела, будь то ваши файлы или просто свободное место, что сказывается на скорости

  • необходимость дополнительных манипуляций при распаковке на раздел большего размера

  • нестандартный сопособ получения информации о процессе работы утилиты

Учитывая вышеизложенное можно сказать, что dd — не самый лучший инструмент в данном случае. С другой стороны, в освоении и использовании он проще многих других средств.

Создание образа

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

  1. Раздел отмонтирован (как в этой статье)

  2. Раздел смонтирован только для чтения

  3. Используются снапшоты (например, с помощью LVM)

Создайте точки монтирования для корневого и бэкап-разделов

sudo mkdir /mnt/{root,backup}

Смонтируем раздел для бэкапа

sudo mount /dev/sdXY /mnt/root

Теперь мы применим одну хитрость — прочистим свободное место от старого мусора (остатков удаленных файлов), перезаписав его нулевыми (пустыми) байтами. Эта операция не обязательна, но может заметно помочь при сжатии образа. Если сжимать образ не требуется, то следующие две команды вам не нужны.

sudo dd if=/dev/zero of=/mnt/root/zero bs=4M

(Опция if задает входной файл, в данном случае это /dev/zero — псевдоустройство, генерирующее поток нулевых байтов; опция of — выходной файл, в которые записываются наши данные; bs задает размер блока, т.е. количество информации, считываемой/записываемой за один раз — в данном случае это 4МБ)

Под конец процесса dd завершится с ошибкой — это нормально, потому что генератор нулей у нас бесконечный, а место на диске не резиновое. Теперь удалите полученный файл

sudo rm -v /mnt/root/zero

Отмонтируйте корневой раздел

sudo umount /mnt/root

Все, можно приступать к процессу.

Монтируем тот раздел, куда будем сохранять бэкап

sudo mount /dev/sdXY /mnt/backup

Выполняем операцию, по созданию бэкапа

sudo dd if=/dev/sdXY bs=1M conv=noerror | gzip -c > /mnt/backup/root.dd.gz

sdXY — ваш корневой раздел. (в данном примере мы используем немного усложненный вариант — по мере копирования сразу же пропускаем данные через архиватор, в итоге получая уже сжатый образ. вместо gzip вы можете применить lzma или другой архиватор на ваш выбор. также можете поэкспериментировать с размером блока — данная опция влияет на производительность. с опцией conv=noerror процесс не будет прекращен при ошибке чтения/записи)

знающие люди, распишите кто-нибудь про оптимальный подбор bs (что конкретно оно дает),

[i|o]bs — размер блока при работе с потоком. ibs — размер блока при чтении, obs — размер блока при записи, bs — устанавливает оба значения сразу.
Рекомендуется ставить кратным степени двойки, умноженной на размер кластера файловой системы (обычно это 4096 байт). Для современных жестких дисков 1Мб — это нормально, но значения, бОльшие 64кб, на мой взгляд, не ускоряют операций с диском. — AnrDaemon 2012/03/12 22:40

а заодно про conv=sync (нужен ли он)

НЕТ!!!!!!!!!!!!!!!!!! Это может привести к повреждению результирующего образа.
man dd для разнообразия? Там даже пример есть. На русском, если у вас русские маны стоят.
А вот iflag=direct (либо, при записи на блочное устройство — oflag) при работе с блочными устройствами использовать стОит, чтобы не получить на выходе файл «образа» раз в 5 бОльше исходного раздела. — AnrDaemon 2012/03/12 22:40

Понятно чем больше значение bs, тем бóльшими блоками данных будет оперировать dd и тем быстрее работа. Оптимальным для скорости считается размер блока, равным или чуть меньшим половины объёма кэша жесткого диска. Но нужно еще выяснить есть ли опасность задания слишком больших значений bs. Не известно есть ли возможность при большом параметре bs «зацепить» в образ одного раздела кусок следующего? И что случится при восстановлении раздела из такого образа? Не затронет ли dd соседний раздел?

Если не использовать копирование напрямую с диска (/dev/sdL), а работать с разделами (/dev/sdLN) или файлами (ранее созданными резервными копиями), и не использовать ненужных опций, типа conv=sync — никакой опасности нет. Чтение просто остановится в конце файла(устройства). — AnrDaemon 2012/03/12 22:41

Для слабых компьютеров имеет смысл применить вариант без архивации «на лету»

sudo dd if=/dev/sdXY of=/mnt/backup/root.dd bs=1M conv=noerror

При желании вы сможете позже сжать образ с помощью любого архиватора на другом компьютере

dd работает весьма «молчаливо», но есть хитрый способ узнать о ходе процесса. В соседней tty-консоли (обычно переключаются по Alt + F1Alt + F6) или новой вкладке графического терминала выполните

killall -s USR1 dd

Теперь вернитесь на вкладку/консоль с dd — там вы увидите информацию об объеме скопированных данных и скорости записи.

Если вы хотите видеть вывод данных о работе dd постоянно (через определенные промежутки времени), то во второй консоли следует ввыполнить:

sudo watch -n2 killall -SIGUSR1 dd

в параметре -n22 означает выполнять команду каждые две секунды.

Повторите все этапы для отдельных разделов (/boot, /usr и пр.), если таковые имеются.

По завершении процесса отмонтируйте бэкап-раздел

sudo umount /mnt/backup

Восстановление раздела из образа

Внимание! Данный способ предполагает полный откат к состоянию на момент создания архива с заменой всех данных!

Смонтируйте раздел с образом-бэкапом

sudo mount /dev/sdXY /mnt

Собственно, можно приступать (дополнительных манипуляций вроде форматирования раздела в данном случае не требуется)

gzip -dc /mnt/root.dd.gz | sudo dd of=/dev/sdXY bs=1M conv=noerror

Или же для несжатого образа

sudo dd if=/mnt/root.dd of=/dev/sdXY bs=1M conv=noerror

(в обоих случаях sdXY — ваш корневой раздел)

Если вы хотите распаковать систему на новый жесткий диск, разметьте его с помощью fdisk/gparted/etc (чем умеете), создав корневой раздел того же размера (или больше, главное — не меньше). В случае, если новый раздел больше исходного, вам потребуется после распаковки расширить раздел с помощью parted/gparted, а также ФС на разделе (не все ФС поддерживают увеличние размера!)

Монтирование образа

С образом раздела, сделанным с помощью dd можно работать как с настоящим разделом, т.е. записывать на него файлы, удалять или изменять существующие и т.д. Для этого нужно лишь смонтировать образ как loop-устройство

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

bzip2 -dv /media/backup/sda5.dd.bz

Теперь можно смонтировать образ

sudo mount /media/backup/sda5.dd -o loop /mnt

(С опцией loop программа mount автоматически «подцепит» файл-образ на свободное loop-устройство, после чего смонтирует файловую систему)

Теперь вы можете работать с содержимым образа как с обычной файловой системой, все ваши изменения запишутся в образ. По завершении работы отмонтируйте образ как обычную ФС

sudo umount /mnt

dd — копирование всего жесткого диска

В данном случае мы снова воспользуемся dd, только на сей раз сохраним все содержимое жесткого диска — с таблицей разделов, самими разделами и всеми данными. Преимущество данного метода в том, что можно за один шаг сохранить все установленные на этом жестком диске системы без необходимости бэкапить каждый раздел отдельно. Кроме того, при таком бэкапе сохранятся все данные, относящиеся к загрузчику — таким образом, после восстановления из бэкапа вам не нужны будут дополнительные манипуляции, вы сможете сразу же загрузиться с этого жесткого диска.

Создание образа

В целом процедура аналогична описанной выше для бэкапа отдельных разделов. В данном случае также применим совет о прочистке свободного места «нулями» — при наличии свободного времени проделайте это со всеми разделами.

Перед началом операции убедитесь, что ни один из разделов данного жесткого диска не смонтирован. Сделать это можно запустив команду mount без параметров.

Выберите раздел, на котором вы собираетесь разместить файл-обарз. Разумеется, это должен быть раздел другого жесткого диска. Также убедитесь в наличии достаточного количества свободного места на этом разделе (например, с помощью утилиты df) — объем свободного места должен соответствовать объему копируемого жесткого диска (при сжатии образ получится меньше, но это зависит от типа хранимых данных).

Смонтируйте бэкап-раздел

sudo mount /dev/sdXY /mnt

Теперь можно приступать

sudo dd if=/dev/sdX bs=1M conv=noerror,sync | lzma -cv > /mnt/hdd.dd.lzma

(здесь «sdX» — диск, а не раздел! для копирования без сжатия команда аналогична приведенной выше для бэкапа раздела)

В зависимости от размера жесткого диска и производительности компьютера процедура может занять продолжительное время (до нескольких часов). По завершении отмонтируйте бэкап-раздел

sudo umount /mnt

Восстановление из образа

Внимание! Данный способ предполагает полный откат к состоянию на момент создания архива с заменой всех данных!

Перед началом работы убедитесь в надежности электропитания. Подключите сетевой адаптер, если у вас ноутбук, а также по возможности используйте ИБП или стабилизатор. При высокой интенсивности записи возрастает риск повреждения диска в случае сбоя питания

Убедитесь, что ни один раздел восстанавливаемого диска не используется. Смонтируйте бэкап-раздел

sudo mount /dev/sdXY /mnt

Можно приступать к процедуре

bzip2 -dc /mnt/hdd.dd.bz | sudo dd of=/dev/sdX bs=1M conv=sync,noerror

Или же для несжатого образа

sudo dd if=/mnt/hdd.dd.bz of=/dev/sdX bs=1M conv=sync,noerror

По завершении отмонтируйте бэкап-раздел

sudo umount /mnt

Если вы хотите распаковать образ на другой жесткий диск, он должен иметь размер не меньше оригинального. В случае, если новый диск большего объема, вы сможете расширить разделы либо создать новый раздел на свободном месте с помощью parted/fdisk/gparted/etc

Не используйте оба жестких диска («дубликат» и «оригинал») одновременно! При подключении обоих дисков в системе будет по два раздела на каждый UUID, что приведет к проблемам в работе или невозможности загрузки

Монтирование образа

По аналогии с образом раздела вы можете работать с образом жесткого диска как с обычным жестким диском. В данном случае процедура несколько усложняется, поскольку образ содержит несколько разделов.

Если образ сжатый — распакуйте его. Теперь «подцепите» образ на loop-устройство

sudo losetup -fv /media/backup/sda.dd

(С ключом -f программа автоматически найдет свободное loop-устройство, иначе необходимо явно указывать его)

losetup выведет на экран имя использованного устройства — если вы не работаете с другим файлами-образами (iso, шифрованными контейнерами и пр.), это скорее всего будет /dev/loop0

Теперь мы имеем устройство, являющееся для системы жестким диском, но не имеем доступа к его разделам. Добраться до разделов поможет программа kpartx (может потребоваться установка одноименного пакета)

sudo kpartx -av /dev/loop0

(Ключ -a — добавить разделы для заданного устройства; -v — информативный вывод)

Программа выведет имена созданных устройств для разделов диска: loop0p1 для первого раздела, loop0p2 — для второго, по аналогии с разделами обычного диска. Файлы устройств будут находиться в папке /dev/mapper

Теперь можно работать с разделами и ФС на них. Например, смонтировать бывший sda5 и записать на него файлы

sudo mount /dev/mapper/loop0p5 /mnt

По заверешнии отмонтируйте раздел

sudo umount /mnt

Удалите устройства-разделы с помощью kpartx

sudo kpartx -dv /dev/loop0

и освободите loop-устройство

sudo losetup -v -d /dev/loop0

Все! Изменения записались, а ваш образ снова стал обычным файлом


cp

Здесь мы рассмотрим бэкап с помощью утилиты cp, т.е. с использованием простого копирования. Вообще-то, это не самый оптимальный способ, и подходит он скорее для копирования системы на другой жесткий диск / раздел / компьютер, нежели для создания резервной копии.

С другой стороны, данный способ имеет ряд преимуществ:

  • универсальность — cp вы найдете в любой Linux-системе

  • низкая требовательность к ресурсам (вследствие отсутствия сжатия и простоты механизма)

  • простота дальнейшей работы с резервной копией (добавления/изменения/удаления файлов, извлечения нужных данных и пр.)

Создание копии

Создайте точки монтирования для корневого и бэкап-разделов

sudo mkdir /mnt/{root,backup}

Смонтируйте оба раздела

sudo mount /dev/sdXY -o ro /mnt/root
sudo mount /dev/sdXY /mnt/backup

Смонтируйте разделы для /usr, /boot и пр., если таковые имеются

sudo mount /dev/sdXY -o ro /mnt/root/home

Создайте на бэкап-разделе папку для своего бэкапа

sudo mkdir /mnt/backup/ubuntu

Можно начинать

sudo cp -av /mnt/root/* /mnt/backup/ubuntu

(ключ -a включает копирование ссылок «как есть», сохранение всех возможных атрибутов файлов и рекурсивный режим. ключ -v — вывод информации о происходящем)

По завершении процесса отмонтируйте все разделы

sudo umount /mnt/backup /mnt/root/{usr,home,}

В дальнейшем вы сможете заархивировать ваши данные любым удобным способом

Восстановление из копии

Внимание! Данный способ предполагает полный откат к состоянию на момент создания архива с заменой всех данных!

Создайте точки монтирования для разделов

sudo mkdir /mnt/{root,backup}

Смонтируйте бэкап-раздел

sudo mount /dev/sdXY -o ro /mnt/backup

Отформатируйте корневой раздел и разделы /usr, /boot и пр., если таковые имеются. (Про форматирование разделов с сохранением UUID см. в разделе про tar)

sudo mkfs.reiserfs -l "root" /dev/sdXY
sudo mkfs.ext2 -L "boot" /dev/sdXY
sudo mkfs.ext4 -L "home" /dev/sdXY

Смонтируйте свежесозданные ФС

sudo mount /dev/sdXY /mnt/root
sudo mount /dev/sdXY /mnt/root/usr
sudo mount /dev/sdXY /mnt/root/var

Процесс копирования происходит аналогично, только в обратном направлении

sudo cp /mnt/backup/ubuntu/* -av /mnt/root

По завершении копирования отредактируйте fstab, исправив UUID разделов

sudo nano /mnt/root/etc/fstab

Отмонтируйте разделы

sudo umount /mnt/backup /mnt/root/{usr,home,}

squashfs

squashfs — файловая система, создаваемая в виде файла-образа, использующая сжатие.

Она имеет целый ряд преимуществ, таких как:

  • возможность работы со сжатым образом напрямую, без предварительной распаковки

  • очень информативный вывод информации о ходе рабты

  • возможность монтирования образа как обычной ФС (через loop-устройство)
  • сохранение атрибутов файлов (прав доступа, владельцев, временных отметок, а с версии 4.1 также и xattr) по умолчанию
  • поддержка файлов больших размеров (максимальный размер файла, как и самой ФС — 264 байт)

  • оптимизаия под многоядерные процессоры

Из недостатков можно выделить следующее:

  • невозможность удаления файлов из образа или изменения существующих (можно только добавлять файлы в образ)

  • утилиты для работы с squashfs присутствуют не во всех дистрибутивах

Последний пункт означает, что для начала вам потребуется подобрать дистрибутив, содержащий пакет утилит для squashfs или же имеющий возможность установки из репозитория. В качестве примера можно предложить Parted Maigc, а вообще-то подойдет и liveCD Ubuntu, нужно будет просто установить пакет squashfs-tools

Создание образа

Cоздайте точки монтирования для корневого и бэкап-разделов

sudo mkdir /mnt/{root,backup}

Cмонтируйте оба раздела

sudo mount /dev/sdXY -o ro /mnt/root
sudo mount /dev/sdXY /mnt/backup

Cмонтируйте отдельные разделы для /boot, /usr и пр. (если имеются) в соответствующие папки

sudo mount /dev/sdXY -o ro /mnt/root/home

Все, можно приступать. Для создания образа используется утилита mksquashfs

sudo mksquashfs /mnt/root /mnt/backup/ubuntu-root.sqfs -no-duplicates

(С опцией -no-duplicates программа не будет исключать одинаковые по содержимому файлы. Многие программы используют пустые файлы для различных целей — без данной опции такие файлы не вошли бы в образ как дубликаты. Кроме того, можете поэкспериментировать с опцией -b — она задает объем данных, который будет считан/записан за один раз, до 1 МБ)

В отличие от многих других инструментов mksquashfs покажет индикатор прогресса с указанием процентов. По завершении программа также выведет информацию о количестве файлов/папок/ссылок, коэффициенте сжатия и пр.

Готово! Осталость лишь отмонтировать разделы

sudo umount /mnt/backup /mnt/root{/usr,/var,/home,}

Помимо стандартного gzip-сжатия squashfs также поддерживает другие алгоритмы, список которых можно увидеть, выполнив mksquashfs --help. Имейте в виду, что поддержка lzma, lzo, xz может отсутствовать в более старых версиях squashfs-tools (идущих в составе старых LiveCD, например). Кроме того, для монтирования таких образов потребуется относительно свежее ядро с поддержкой squashfs соответствующих алгоритмов сжатия (например, см. CONFIG_SQUASHFS_XZ=y)

Кроме этого, можно создать образ и без сжатия — для этого используйте mksquashfs с опцией -noD

Восстановление из образа

Внимание! Данный способ предполагает полный откат к состоянию на момент создания архива с заменой всех данных!

Создайте точки монтирования для разделов

sudo mkdir /mnt/{root.backup}

Смонтируйте бэкап-раздел

sudo mount /dev/sdXY -o ro /mnt/backup

Отформатируйте корневой раздел и разделы /usr, /boot и пр., если таковые имеются. (Про форматирование разделов с сохранением UUID см. в разделе про tar)

sudo mkfs.reiserfs -l "root" /dev/sdXY
sudo mkfs.ext2 -L "boot" /dev/sdXY
sudo mkfs.ext4 -L "home" /dev/sdXY

Смонтируйте свежесозданные ФС

sudo mount /dev/sdXY /mnt/root
sudo mount /dev/sdXY /mnt/root/usr
sudo mount /dev/sdXY /mnt/root/var

Можно приступать! Для распаковки образа используется утилита unsquashfs

sudo unsquashfs -d /mnt/root -f /mnt/backup/ubuntu-root.sqfs

(Ключ -d задает путь для распаковки, с ключом -f программа будет использовать существующие папки вместо попыток создать новые)

Как и при создании образа, вы увидите индикатор прогресса и множество другой полезной информации.

По завершении отредактируйте fstab, заменив UUID разделов на новые (если вы форматировали разделы с теми же UUID, пропустите этот шаг)

sudo nano /mnt/root/etc/fstab

Сохраните файл и отмонтируйте все разделы

sudo umount /mnt/backup /mnt/root{/usr,/var,}

Монтирование образа

squashfs монтируется как любой другой образ — через loop-устройство. Поддержка squashfs ядром включена во множестве дистрибутивов, в том числе и в Ubuntu, так что достаточно будет просто воспользоваться командой mount с опцией loop

sudo mount /media/backup/ubuntu-root.sqfs -o ro,loop /mnt

(Опция ro не обязательна, т.к. записать туда все равно ничего не получится)

Теперь вы можете скопировать из образа любые нужные файлы. Добавить что-либо таким способом не получится, для этого нужно будет опять воспользоваться mksquashfs

По завершении отмонтируйте образ как обычную ФС

sudo umount /mnt

rsync

Подобно cp, rsync работает с файлами, а не с блочными устройствами. Особенность rsync в том, что он не копирует файлы, которые уже есть в точке назначения. По умолчанию он проверяет размер и время изменения файлов, но можно проверять и хэш (обычно это делается, когда нужна повышенная безопасность).

Простое использование

Синтаксис rsync подобен cp:

rsync -a /mnt/root /mnt/backup

Параметра -a очень часто бывает достаточно, он обеспечивает самое нужное: рекурсивное копирование директорий, сохранение информации о владельце и группе и т.д. Для отображения подробной информации о копировании используется ключ -v, с ним будьте внимательны, в потоке данных можно пропустить сообщение об ошибке. Ключ -x гарантирует, что rsync не выйдет за пределы указанной файловой системы.

В документации к rsync описана масса параметров. Например, есть такие, которые позволяют выполнять копирование по SSH, или удаляют файл из точки назначения, если он был удалён в исходной директории.

«Умное» копирование позволяет сократить время простоя системы. Запускаем rsync прямо на работающей системе, данные в которой постоянно изменяется, rsync копирует данные, скажем, в течение нескольких часов. Затем переводим систему в read-only, снова запускаем rsync, теперь он копирует только те файлы, которые изменились за эти несколько часов. Через несколько минут мы имеем полную копию исходной ФС. Время простоя при этом сократилось на порядок по сравнению с оффлайн-копированием. А в некоторых случаях будет достаточно и одного онлайн-копирования без перевода системы в read-only.

Сохранение предыдущих копий

Строго говоря rsync не является средством резервного копирования – это средство синхронизации. Это важно при создании регулярных копий, поскольку, если какой либо важный файл был удалён в рабочем каталоге источнике – rsync удалит его и в резервной копии. Для повышения сохранности данных целесообразно сохранять старые резервные копии. Однако простое сохранение нескольких копий потребует много памяти на жёстком диске. Если копии имеют много одинаковых файлов, то это приводит к ненужной избыточности. Эту проблему позволяет решить использование жёстких ссылок.

Суть состоит в том, что в современных файловых системах (в том числе Ext4) адресация файла производится в два этапа: имя файла указывает на уникальный номер файла (индексный дескриптор или i-node), а этому номеру сопоставлены сами данные. Любое имя файла это, по факту, жёсткая ссылка на этот номер. Следовательно, файл (набор данных) может иметь несколько имён и быть разных каталогах, а это позволяет устранить избыточность в случае необходимости дублирования файлов (ведь жёсткая ссылка занимает мало памяти). Сами данные не удаляются до тех пор пока не будет запрошено удаление последней жёсткой ссылки.

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

Синхронизация содержимого каталога для текущей резервной копии с каталогом источником:

rsync \
	--archive \ # сохранять всю дополнительную информацию о файлах
	--delete --delete-excluded \ # удаление из резервной копии несуществующих в источнике и исключённых файлов
	--progress \ # выводить информацию о прогрессе передачи
	"/home/user/Files/" \ # каталог источник
	"/backup/latest/" \ # каталог для текущей резервной копии
	--exclude='/Public/' # исключение ненужных каталогов

В каталоге «/backup/latest/» будет создана копия всех необходимых файлов и каталогов из источника и удалено всё лишнее.

Создание ещё одной текущей резервной копии без избыточности:

cp \
	--archive \ # сохранять всю дополнительную информацию о файлах
	--link \ # использовать жёсткие ссылки для файлов - устранение избыточности
	"/backup/latest/" \ # источником является полученная выше текущая резервная копия
	"/backup/$(date +%Y-%m-%d_%H-%M-%S)/" # пункт назначения - каталог с датой в имени для удобства (см. man date)

При следующем создании резервной копии rsync удалит в каталоге «/backup/latest/» файлы которые были удалены/исключены/изменены в каталоге источнике (измененные файлы сначала удаляются, а затем записывается новая версия). Однако удалены будут лишь имена файлов (те же жёсткие ссылки), сами файлы (данные) сохранены, поскольку на них были созданы жёсткие ссылки в соседнем каталоге командой «cp».

Прочие инструменты

Существует масса приложений для создания бекапов в Linux. Можно воспользоваться поиском по слову «backup» в Центре приложений Ubuntu, чтобы найти доступные в Ubuntu программы для работы с резервными копиями.

Для корпоративной среды и просто для достаточно масштабных и критичных заданий бекапа можно порекомендовать разобраться в одной из самых популярных и мощных систем резервного копирования для Linux, которая называется Bacula.

Также существуют различные LiveCD-дистрибутивы, специально предназначенные для резервного копирования данных. вот наиболее популярные из них:

CLonezilla

Clonezilla — универсальное средство для бэкапа разделов или целых дисков с гибкой настройкой процесса. Данный дистрибутив поддерживает множество файловых систем, работает с LVM2 и RAID-массивами (только аппаратные) и имеет локализацию для многих языков, включая русский. Clonezilla имеет понятный «пошаговый» псевдографический интерфейс, а решить возникающие вопросы поможет в изобилии доступная документация

Кстати, в сети можно найти и русскоязычные руководства

Parted Magic

Parted Magic — еще один отличный, но платный дистрибутив, содержащий целую коллекцию средств для бэкапа и восстановления информации, работы с дисками и разделами, а также восстановления утерянных данных. Он поддерживает множество ФС, LVM2 и RAID (как аппаратный, так и программный) и содержит в себе таки средства как fsarchiver, GParted, вышеупомянтый Clonezilla, и все, что потребуется для описанных в этой статье способов. Кроме того, в состав дистрибутива входит веб-браузер и некоторое другое дополнительное ПО. Дистрибутив переведен на несколько языков, включая русский, и имеет полноценный графический интерфейс.

LParted

LParted — полнофункциональный LiveCD, предназначенный в первую очередь для работы с разделами жестких дисков (HDD), безвозвратного удаления или восстановления данных и тестирования оборудования. Основан LiveCD на Lubuntu Linux. LParted является функциональным аналогом Parted Magic.

сюда бы добавить про SystemRescueCD и прочие

Ещё немного о сохранении данных

  • Для важных данных можно сделать зеркальный раздел на двух дисках. Для этого совсем не обязательно иметь RAID-контроллер и диски одинакового размера — можно, например, собрать зеркало из 80-гигабайтного старого винта и 80-гигабайтного же раздела на новом. Зеркалирование можно реализовать с помощью LVM или программного RAID. Однако, такой способ бесполезен в случае, например, попадания на шину +5В напряжения ~220В или падения метеорита на системный блок компьютера.
  • Гики-айтишники, имеющие дома свой сервер, могут расширить идею зеркалирования и использовать DRBD. Тот же RAID-1, но жёсткие диски находятся в разных компьютерах, что повышает надёжность.
  • Современное удобное решение — бэкапить данные в «облака», например, с помощью Ubuntu One, Dropbox, http://www.adrive.com/ и других.
  • Ни зеркалирование, ни репликация на Ubuntu One не спасут от случайного нажатия Delete, поэтому в любом случае делайте «классические» бэкапы. И в один прекрасный ужасный день все ваши труды и старания будут вознаграждены.

Ссылки

Быстрая настройка резервного копирования под Linux и не только (UrBackup) / Хабр

Примерно год назад у меня возникла «острая» необходимость перевести систему резервного копирования данных в корпоративной сети на бесплатные рельсы. До этого использовался платный продукт от Symantec, по нему, конечно, много нареканий, но он работал, хоть и не всегда справлялся. Как обычно, все надо было сделать «вчера», и я приступил к поиску вариантов.

Для начала начал искать решение для резервного копирования файлов, очевидным решением было простая настройка скриптов на Linux по cron, но это не очень удобное и надежное решение, если серверов более одного(а у меня их около 50-ти) и структура достаточно динамична. Тем более если инфраструктура смешанная, Linux + Windows. Хотелось что-нибудь простое в дальнейшем обслуживании и извлечении самих копий, например, переложить восстановление пользовательских файлов на группу поддержки. Порывшись пару часов в интернете, я наткнулся на интересный проект UrBackup, он удовлетворял всем моим условиям.


Как операционную систему я выбрал CentOS 6 в конфигурации minimal, взять можно тут. Подробно на установке и первичной настройке останавливаться не будут, т.к. манулов по этой процедуре уже достаточно на Хабре. Перейдем к установке виновника топика UrBackup.

Предыдущие версии UrBackup приходилось собирать из исходников, но слава разработчикам, для последних версий появились репозитории для большинства популярных систем. Хотя собрать из исходников проблем не составляло, репозиторий сильно упрощает жизнь, особенно при обновлениях.

Итак, приступим:

yum install wget nano -y
cd /etc/yum.repos.d/
wget http://download.opensuse.org/repositories/home:kot1grun/CentOS_6/home:kot1grun.repo
yum install urbackup-server -y

Тут мы подключаем репозиторий и устанавливаем собственно сервер. Далее, чтобы мы могли подключится к серверу из вне, нам необходимо поправить iptables:

# nano /etc/sysconfig/iptables
# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
# правило для urbackup
-A INPUT -m state --state NEW -m tcp -p tcp --dport 55414 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

Перезагружаем iptables:

service iptables restart

Так же для серверов внутри сети отключаем selinux:

# nano /etc/sysconfig/selinux
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

Отключаем selinux без перезагрузки:

# setenforce 0

Устанавливаем сервис в автозагрузку и запускаем:

chkconfig urbackup-server on
service urbackup-server restart

Готово. Можно подключаться и настраивать.

Заходим по адресу

http://my-server-ip:55414

. При желании выбираем язык и идем в настройки:

Тут для первичной настройки нам необходимо указать только путь для хранения бекапов. Не забываем нажать кнопку «сохранить» и мы можем переходить к настройке клиентов.

Для начала нам необходимо установить клиент на сервер, который мы хотим копировать. Клиент для Windows систем можно скачать с сайта разработчиков, но так как мы в данный момент рассматриваем linux-системы, рассмотрим установку на тот же CentOS 6:

cd /etc/yum.repos.d/
wget http://download.opensuse.org/repositories/home:kot1grun/CentOS_6/home:kot1grun.repo
yum install urbackup-client-nogui -y
chkconfig urbackup-client on
service urbackup-client start

Добавляем правила в iptables:

# nano /etc/sysconfig/iptables
# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
# правила для urbackup
-A INPUT -m state --state NEW -m tcp -p tcp --dport 35621 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 35622 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 35623 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

Перегружаем iptables:

service iptables restart

Не забываем отключить selinux, если, конечно, в нем нет необходимости. И можно добавлять клиента на сервер. Возвращаемся на сервер

http://my-server-ip:55414

. Идем в раздел «статус»:

Вбиваем в поле «Имя/IP» IP-адрес сервера, с которого мы хотим бекапить данные, и нажимаем добавить. Ждем пару минут, пока клиент появится в списке.

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

Идем в настройки:

Выбираем наш сервер из списка и настраиваем «каталоги по умолчанию для бекапа».

Сохраняем.

Готово. Сервер настроен и работает. Во время работы мы видим нечто подобное:

Сервер работает на удивление быстро и очень компактно использует место на диске, используя подобие дедубликации на основе симлинков.

Это минимальная настройка сервера, при желании можно настроить авторизацию, архивацию, создание образов систем (Windows), резервное копирование через интернет и т.д. В дальнейших статьях планирую рассказать, как на этот же сервер настроить резервное копирование MSSQL и Exchange, если это, конечно, будет интересно читателям.

31 Лучшее бесплатное программное обеспечение для резервного копирования Linux (обновлено в 2020 г.)

Программное обеспечение

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

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

Хотя всегда можно было использовать инструменты командной строки для резервного копирования файлов в Linux, это может быть сложной задачей для новичков и конечных пользователей. В этой статье рассказывается, как создание регулярных резервных копий может быть безболезненной задачей.Мы исследуем программное обеспечение для резервного копирования с интуитивно понятным графическим интерфейсом, приложения для резервного копирования систем с помощью моментальных снимков, не забывая при этом о существующих мощных инструментах командной строки.

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

Теперь давайте рассмотрим 31 имеющийся инструмент резервного копирования.Для каждого заголовка мы составили отдельную страницу портала, предоставив снимок экрана с действующим программным обеспечением (где это необходимо), полное описание с подробным анализом его функций, а также ссылки на соответствующие ресурсы.

Резервное копирование
BackupPC Высокопроизводительная система корпоративного уровня для резервного копирования ПК
restic Быстрое, эффективное и безопасное программное обеспечение для резервного копирования
Clonezilla Предлагает функции, аналогичные Symantec Ghost
TimeShift Делает регулярные инкрементные снимки файловой системы
Mondo Rescue Мощный пакет для аварийного восстановления
Дублирование Зашифрованное резервное копирование с эффективным использованием полосы пропускания
Borg Программа дедупликации резервного копирования
bup Резервное копирование системы на основе формата git packfile
Déjà Dup Правильно скрывает сложность резервного копирования
Bacula Сетевое резервное копирование, восстановление и проверка
Amanda Advanced Maryland Automatic Network Disk Archiver
Duplicati Хранить зашифрованные резервные копии в Интернете
Bareos Резервное копирование Архивирование Восстановление с открытым исходным кодом
rsync Программа быстрого удаленного копирования файлов
Назад в прошлое Эквивалент машины времени OS X
UrBackup Простая установка системы резервного копирования клиент / сервер с открытым исходным кодом
Rescuezilla Простое резервное копирование, восстановление и восстановление с нуля
KBackup Программа резервного копирования, ориентированная на некомпьютерных специалистов
fwbackups Многофункциональное программное обеспечение для резервного копирования
rsnapshot Утилита создания моментальных снимков локальной и удаленной файловой системы
Partclone Предоставляет утилиты для сохранения и восстановления использованных блоков на разделе
XtraBackup Инструмент резервного копирования для баз данных InnoDB и XtraDB
куп Планировщик резервного копирования для рабочего стола Plasma
FOG Решение для клонирования / визуализации / аварийный пакет
BURP Использует librsync для экономии сетевого трафика и пространства
PING Также предлагает функции, аналогичные Symantec Ghost
tar Утилита архивации tar
dar Полнофункциональный архиватор с поддержкой дифференциального резервного копирования
Cronopete Графическая утилита резервного копирования на основе Apple Time Machine
SafeKeep Централизованная и простая в использовании программа резервного копирования
Cedar Backup Локальное и удаленное резервное копирование на CD или DVD

Возможно, вы читали историю о человеке, который удалил всю свою компанию с помощью одного ошибочного фрагмента кода: случайно неправильно использовал rm -rf в Ansible.Это была довольно очевидная мистификация, задуманная как попытка вирусного маркетинга. Эта цель была достигнута, поскольку об этом рассказывалось во многих СМИ. Но, по крайней мере, это предупредит читателей о важности обеспечения безопасности их данных. Но помните, что человеческая ошибка — не единственный источник потери данных. Другие способы потери данных включают механическое повреждение RAID или дисков, повреждение файловой системы, кражу, пожар, а также вирусы и вредоносное ПО.

Статьи по теме

.

4 способа резервного копирования всего жесткого диска в Linux

У каждого есть важные данные — данные, которые нужно хранить в безопасности. В большинстве случаев это можно сделать, просто создав учетную запись DropBox или Google Drive и загрузив в нее важные файлы.

Однако иногда необходимо создать резервную копию всего жесткого диска. Вот четыре способа резервного копирования всего содержимого жесткого диска в Linux. Для каждого элемента списка есть разные способы резервного копирования. Какой способ лучше?

1.Дисковая утилита Gnome

linux-harddrive-gnome-disks

Возможно, наиболее удобный способ резервного копирования жесткого диска в Linux — это использовать Gnome Disk Utility. Это инструмент, который входит в состав большинства дистрибутивов Linux, использующих преимущества настольных компьютеров и программного обеспечения Gnome. Резервное копирование с помощью Дисковой утилиты говорит само за себя: выберите, на каком жестком диске вы хотите создать резервную копию (в виде необработанного файла .IMG), выберите место для сохранения резервной копии и расслабьтесь.

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

2. Clonezilla

linux-harddrive-Clonezilla

Популярным способом резервного копирования жестких дисков в Linux является использование Clonezilla. Это утилита для живого диска, которую можно записать на USB-накопитель или оптический носитель, с которого вы можете загрузиться. После загрузки Clonezilla может клонировать целые диски или даже разделы. Он может клонировать один диск напрямую на другой. Или, если хотите, Clonezilla может клонировать в необработанные файлы .IMG.

Если вы ищете отличное решение для резервного копирования жесткого диска, подобное Gnome Disk Utility, но с дополнительными опциями и настройками для опытных пользователей, ознакомьтесь с этой программой.Здесь есть полное руководство по Clonezila.

3. DD

linux-harddrive-DD

Скорее всего, если вы когда-либо использовали Linux, то в тот или иной момент сталкивались с командой dd . Инструмент невероятно прост в использовании. Вот как использовать инструмент DD для создания резервной копии жесткого диска Linux.

Вам нужно открыть окно терминала.

Как только вы войдете в терминал, выясните, на каком жестком диске вы хотите создать резервную копию, с помощью команды lsblk . В этом руководстве создается резервная копия диска «/ dev / sda».

После того, как мы позаботились о «/ dev / sda», пришло время выяснить, почему

.

Онлайн-резервное копирование для Linux с минимальным написанием скриптов

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

Вариант 1:

Используйте скрипты

Если вы не очень знакомы со средой Linux, простой способ — использовать сценарии для защиты данных Linux. Пакет сценариев IBackup — это набор сценариев Perl. Чтобы выполнить все операции с IBackup, загрузите сценарии и следуйте инструкциям, приведенным в файле readme.txt, или посетите нашу страницу сценариев для получения дополнительной информации.

Экспресс-резервное копирование Linux с использованием сценариев

Вы также можете использовать сценарии для передачи большого количества данных с ваших Linux-машин через временное физическое хранилище.

IBackup Express для пользователей Linux
  • Перенесите большие объемы данных с компьютера Linux в свою учетную запись в Интернете в течение недели.
  • На протяжении всего процесса передачи ваши данные будут защищены 256-битным шифрованием AES военного уровня и дополнительным закрытым ключом.
  • После завершения передачи данных в вашу учетную запись IBackup вы можете продолжить инкрементное резервное копирование.
  • Нет потребления полосы пропускания в процессе передачи данных.

Вы можете воспользоваться услугой IBackup Express, если у вас есть как минимум 100 ГБ данных для передачи в или из вашей облачной учетной записи.

Услуга IBackup Express включает стоимость обратной доставки и доступна только в США.Экспресс-резервное копирование предоставляется бесплатно, а экспресс-восстановление стоит 99,50 долларов за запрос.

Как только вы получите экспресс-устройство хранения, сделайте резервную копию данных на вашей машине Linux на экспресс-устройстве. С экспресс-устройства ваши данные копируются на основные устройства хранения IBackup. Впоследствии вы можете продолжить инкрементное резервное копирование.

Форма отгрузки

Вариант 2:

Используйте утилиту командной строки

Если вы предпочитаете использовать команды Linux и хотите создавать собственные сценарии, выполните операции IBackup с помощью утилиты командной строки.

Шагов:

1. Щелкните здесь, чтобы загрузить утилиту командной строки

Утилита командной строки

(idevsutil) — Загрузить

Версия 1.0.2.8 (от 18.03.2015)

Утилита командной строки

для Synology

Утилита командной строки

для QNAP

Утилита командной строки

для Netgear

Утилита командной строки

— универсальная сборка для Linux

2.Настройте свою учетную запись с помощью шифрования

а. Настроить с шифрованием по умолчанию

Синтаксис:

$ idevsutil —config-account —enc-type = DEFAULT —user = <имя пользователя> —password-file = <пароль учетной записи>

  • —enc-type:
    —enc-type = DEFAULT, чтобы установить шифрование по умолчанию для вашей учетной записи IBackup.
  • Имя пользователя IBackup. Если у вас нет действующего имени пользователя, зарегистрируйтесь с помощью IBackup.

  • —password-file = PATH_OF_PSWD_FILE
    Считывает пароль учетной записи из указанного файла. Кроме того, вы можете напрямую установить пароль, используя
    —password-file = <пароль учетной записи>

Код:

$ idevsutil —config-account —enc-type = DEFAULT —user = —password-file = «MyPassword»

Выход:

г.Настроить с использованием «частного шифрования»

Синтаксис:

$ idevsutil —config-account —enc-type = PRIVATE —pvt-key = <путь к ключевому файлу> —user = <имя пользователя> —password-file = <пароль учетной записи>

  • —enc-type:
    —enc-type = PRIVATE, чтобы установить закрытый ключ шифрования для вашей учетной записи IBackup EVS.
  • —pvt-key = PATH_OF_PVT_KEY_FILE:
    Считывает закрытый ключ шифрования для 256-битного шифрования AES для всех передач данных.Длина закрытого ключа шифрования может варьироваться от минимум 4 до максимум 255 символов.
  • Имя пользователя:
    Имя пользователя IBackup. Если у вас нет действующего имени пользователя, зарегистрируйтесь с помощью IBackup.
  • —password-file = PATH_OF_PSWD_FILE
    Считывает пароль учетной записи из указанного файла. Кроме того, вы можете напрямую установить пароль, используя
    —password-file = <пароль учетной записи>

3.Резервное копирование файлов / папок в личный кабинет

а. Для начала откройте блокнот, запишите пути к файлам / папкам, для которых вы хотите сделать резервную копию, и сохраните их.

Пример:

‘filelist.txt’ содержание

  • / C / DATA / Выбор редакции .rtf
  • /C/DATA/office_inventory.doc
  • /C/DATA/tax_details.xls
  • /C/DOC/daily_status.doc
  • / C / DOC / Features.xls
  • / C / DOC / inventory /
  • / C / DOC / Ежемесячный отчет /
г. Чтобы выполнить полное / инкрементное резервное копирование, выполните следующие действия:

Синтаксис:

—files-from = FILE: Считывает список путей к файлам / папкам, которые вы хотите сохранить в своей учетной записи IBackup.

$ idevsutil —xml-output —pvt-key = <путь к файлу ключа> —files-from = <путь к файлу списка файлов> / <имя пользователя> @ <адрес сервера> :: home /

Примечание. Параметр —pvt-key является необязательным и не требуется, если ваша учетная запись настроена с использованием «ключа шифрования по умолчанию».

Код:

$ idevsutil —xml-output —pvt-key = enc_key —files-from = filelist.txt / john @ <адрес сервера> :: home /

г. Чтобы восстановить определенный файл (ы) / папку (ы), следуйте инструкциям ниже:

Синтаксис:

—files-from = FILE: Считывает список путей к файлам / папкам, которые вы хотите восстановить, из своей учетной записи IBackup.

$ idevsutil —xml-output —pvt-key = <путь к файлу ключа> —files-from = <путь к файлу списка файлов> <имя пользователя> @ <адрес сервера> :: home / / <место загрузки на вашем компьютере > /

Примечание. Параметр —pvt-key является необязательным и не требуется, если в вашей учетной записи настроен «ключ шифрования по умолчанию».

Код:

$ idevsutil —xml-output —pvt-key = enc_key —files-from = список файлов.txt john @ <адрес сервера> :: home / / C / download_data /

.

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *