Як зробити віддалену резервну копію жорсткого диска в Linux

Жорсткі диски не живуть вічно. Через деякий час вони відмирають і потребують заміни. Часто замінити жорсткий диск комп’ютера або сервера, що вмирає, так само просто, як вимкнути його, від’єднати диск, віддалено клонувати його та відновити резервну копію на іншій машині. Для тих, хто працює з віддаленими комп’ютерами або серверами, це не так просто, оскільки фізично вас там немає. На щастя, все ще є способи зробити резервну копію віддаленого жорсткого диска та зберегти дані на жорсткому диску, що вмирає.

У цій статті ми розглянемо два простих способи, яким кожен може зробити швидку віддалену резервну копію жорсткого диска ПК з Linux.

Перше рішення, яке ми будемо використовувати, це рішення під назвою Rsync. Другим рішенням є DD через SSH.

Резервне копіювання віддаленого жорсткого диска – Rsync

Rsync ідеально підходить для створення резервної копії віддаленого жорсткого диска, оскільки протокол Rsync працює дуже швидко через локальну мережу та Інтернет. А найкраще те, що для використання не потрібні спеціальні програми, а отже, не потрібно багато налаштовувати. На додаток до всього цього, якщо ви не прихильник командного рядка, у Rsync навіть доступний акуратний графічний інструмент, який ми також детально пояснимо.

Rsync можна використовувати для резервного копіювання всіх критичних даних на жорсткому диску, якщо ви не хочете створити точне дзеркальне відображення жорсткого диска. Інструмент збереже права доступу до файлів тощо. І навпаки, використання чогось на кшталт базового архіву резервної копії Tar Gzip може закінчитися невдачею, якщо ви намагаєтеся скопіювати зламані файли тощо.

Установка

Щоб почати, переконайтеся, що у вас інстальовано інструмент Rsync як на віддаленому, так і на локальному ПК:

Ubuntu

sudo apt install rsync

Debian

sudo apt-get install rsync

Arch Linux

sudo pacman -S rsync

Fedora

sudo dnf install rsync

OpenSUSE

sudo zypper install rsync

Інші Linux

Інструмент Rsync легко знайти навіть у найбільш незрозумілих дистрибутивах Linux. Насправді, можливо, він уже є у вашій системі. Щоб встановити його, відкрийте інструмент керування пакетами, знайдіть «rsync» та встановіть його.

Спочатку визначте IP-адресу віддаленого комп’ютера (якщо ви ще не знаєте її за допомогою Ping).

Примітка: використовуйте root через SSH для резервного копіювання всіх системних файлів.

Інструкції LAN

Якщо на вашому віддаленому комп’ютері є доступ до Інтернету, але ви також можете підключитися до нього безпосередньо через локальну мережу, ви зможете визначити IP-адресу за допомогою перевірки імені хоста.

Пам’ятайте, що якщо ви перебуваєте в локальній мережі, вам, ймовірно, знадобиться лише IP. Робіть це лише тоді, коли використання імені хоста не працює. Наприклад:

ping ubuntu-server -c1

ВИХІД: PING ubuntu-server (192.168.1.126) 56 (84) байт даних.

тепер ми знаємо, що IP-адреса Ubuntu-сервера в локальній мережі: 192.168.1.126

Інтернет інструкції

Як і в інструкціях щодо локальної мережі, спробуйте використовувати Ping, щоб визначити IP-адресу. приклад:

ping google.com -c1

ВИХІД: PING google.com (172.217.11.142) 56(84) байт даних.

Коли ви визначите правильну IP-адресу, відкрийте термінал і введіть цю команду на локальній машині, де зберігатимуться дані резервної копії.

rsync -avP --numeric-ids --exclude="/dev" --exclude="/proc" --exclude="/sys" [email protected]:/remote/file/location /local/backup/destination/

Синхронізація всього жорсткого диска через Інтернет або навіть локальну мережу займе багато часу через багато факторів. Залиште обидва комп’ютери увімкненими та дайте завершення передачі.

Резервне копіювання віддаленого жорсткого диска – DD через SSH

Якщо вам потрібно швидко створити образ жорсткого диска сервера або віддаленого ПК з Linux через Інтернет, DD є простим рішенням. Він працює, використовуючи канали командного рядка, щоб ланцюгувати команду DD від однієї машини до іншої. Він може працювати, використовуючи локальний комп’ютер для надсилання образу диска на віддалений хост, або також у протилежному напрямку.

Щоб виконати це завдання, переконайтеся, що віддалений комп’ютер може приймати з’єднання SSH на порту 22 (або на будь-якому настроюваному порту). Також переконайтеся, що на обох комп’ютерах запущено протокол SSH. Не знаєте, як налаштувати з’єднання SSH? Перегляньте нашу статтю тут.

Примітка: у цьому прикладі жорсткий диск — /dev/sda, а розділ /dev/sda1. Ваші можуть відрізнятися. Використовуйте lsblk на віддаленому комп’ютері, щоб визначити ім’я букви диска.

Дистанційно до локального для всього жорсткого диска

ssh [email protected] "dd if=/dev/sda1 | gzip -1 -" | dd of=image.gz

Віддалено до локального для окремого розділу

ssh [email protected] "dd if=/dev/sda1 | gzip -1 -" | dd of=image.gz

Від локального до віддаленого для всього жорсткого диска

dd if=/dev/sda | gzip -1 - | ssh [email protected] dd of=image.gz

Локальний на віддалений для окремого розділу

dd if=/dev/sda1 | gzip -1 - | ssh [email protected] dd of=image.gz

Коли інструмент DD завершить створення резервної копії образу, ви зможете відновити її. Існує багато різних способів виконати це завдання в Linux, але для зручності використання ми рекомендуємо використовувати дискову утиліту Gnome. Щоб відновити резервну копію на новий жорсткий диск, знайдіть пристрій у лівій частині програми та натисніть на нього. Звідси натисніть меню у верхньому правому куті та натисніть кнопку «Відновити образ диска».

Примітка: відновлення резервних копій образу диска займе трохи часу. Будь ласка, будьте терплячі.

З’явиться діалогове вікно із запитом на пошук образу диска. Виберіть «усі файли», а потім виберіть «image.gz», щоб відновити його.

Утиліта Gnome Disk Utility також може відновити зображення розділів резервної копії DD таким же чином. Просто натисніть на жорсткий диск ліворуч, натисніть значок шестірні, а потім виберіть кнопку «Відновити образ розділу».