Чем скопировать linux диск

Перенос Linux на другой диск

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

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

Как перенести Linux на другой диск

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

1. Подготовка к переносу

Сначала рассмотрим, как использовать утилиту cp для переноса файлов операционной системы. В папку /mnt примонтируйте раздел, на котором будет располагаться новый Linux. Например, это /dev/sdb1:

Теперь нужно рекурсивно скопировать все файлы из текущего корня в нашу папку /mnt. Лучше всего это делать, загрузившись с LiveCD диска, тогда точно все нужные данные будут сохранены. Но это не обязательно, вы можете делать перенос и работающей системы, только перед этим остановите все запущенные базы данных и сервисы по максимуму, чтобы они сохранили свои настройки и вы ничего не потеряли в новой версии системы. Например, если у вас запущена база данных MariaDB или MySQL, то её нужно остановить:

sudo systemctl stop mariadb

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

2. Перенос Linux утилитой cp

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

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

sudo mkdir /mnt/
sudo cp -rxa /boot /mnt/boot/
sudo cp -rxa /home /mnt/home/

Если вам не нужна домашняя папка, то вы можете её не копировать.

3. Перенос Linux утилитой tar

Это альтернативный вариант переноса, если вы не хотите использовать cp, то можете применить tar. Чтобы сразу перенести файлы в другое расположение, нужно создать туннель, на одном конце которого данные будут запаковываться, а на другом — распаковываться:

Читайте также:  Linux mint ночной режим экрана

sudo tar -cpv —one-file-system / | sudo tar -x -C /mnt

Опция -p — заставляет утилиту сохранять метаданные файлов при переносе. Опция —one-file-system указывает, что утилита будет брать файлы только из корневой файловой системы, поэтому все примонтированые файловые системы, как и в предыдущем варианте, будут пропущены. Поэтому каталоги /boot и /home вам придётся копировать аналогичной командой. Или же можно не использовать эту опцию и передавать всё, кроме ненужного:

sudo tar -cpv —exclude /mnt —exclude /dev —exclude /sys —exclude /proc —exclude /tmp —exclude /run / | sudo tar -x -C /mnt/

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

sudo tar -cvpzf system.tar.gz —exclude system.tar.gz —one-file-system /

Вместо опции —one-file-system можно использовать опции —exclude, чтобы исключить ненужные каталоги, как в предыдущей команде. А для распаковки используйте команду:

sudo tar xvzf system.tar.gz -C /mnt

Здесь, /mnt — это каталог, в который нужно извлечь файлы архива.

4. Перенос с помощью rsync

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

Эта команда работает аналогично команде tar, копирует всё что есть в новое расположение. Опции -aAX включают сохранение всех метаданных файла, символических ссылок, владельцев, групп, и так далее.

5. Правка /etc/fstab

Далее будем работать только с новой системой. Первым делом нужно исправить файл /etc/fstab, чтобы там был указан правильный UUID корневого раздела. Узнать UUID нужного раздела можно командой blkid:

Теперь замените полученным UUID, значение этого параметра корневого раздела в /mnt/etc/fstab:

6. Установка загрузчика

Далее нужно установить загрузчик Grub в новом Linux. Сначала примонтируйте в него папки /sys, /proc и /dev:

sudo mount —bind /sys /mnt/sys
sudo mount —bind /proc /mnt/proc
sudo mount —bind /dev /mnt/dev

Затем войдите в chroot окружение:

Затем установите загрузчик на тот диск, на который вы переносили Linux, в моём случае это /dev/sdb:

И осталось только создать конфигурационный файл для загрузчика:

В дистрибутивах, не основанных на Ubuntu, вместо update-grub2 можно использовать команду:

sudo grub2-mkconfig -o /boot/grub/grub.cfg

7. Перезагрузка

Выйдите из chroot-окружения командой:

Затем размотрируйте системные каталоги и ваш раздел:

sudo umount /mnt/sys
sudo umount /mnt/proc
sudo umount /mnt/dev
sudo umount /mnt

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

Выводы

В этой статье мы разобрали, как перенести Linux на другой жёсткий диск с помощью утилит tar, cp или rsync. Как видите, это достаточно просто и быстро. Ещё мы могли бы использовать утилиту dd, однако она копирует весь диск побайтово, поэтому будет работать дольше и её архивы будут занимать больше места на диске. Ещё можно воспользоваться инструментом Clonezilla.

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Читайте также:  Ssh linux другой порт

Источник

Клонирование жёсткого диска на Linux

То, что вы работаете в операционной системе Linux, не означает, что вы не будете время от времени сталкиваться с проблемами. Всегда хорошо иметь план резервного копирования, на случай, если возникнет проблема. Возможно, редкий вирус Linux будет атаковать; возможно, вы будете жертвами мошенников-вымогателей. Может быть, жесткий диск (HDD) выйдет из строя.

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

Инструменты клонирования дисков Linux

Ваша установка Linux может привести к ошибке; Вы можете обновить жесткий диск до большего объема. Безотносительно проблемы, если у вас есть резервная копия вашего диска, восстановить и запустить все будет относительно просто.

В Linux есть четыре решения для клонирования дисков, которые вы должны рассмотреть:

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

Давайте рассмотрим каждый из четырех основных вариантов клонирования диска в Linux.

1. dd: инструмент для клонирования Native Linux

Возможно, самый мощный инструмент Linux из всех, dd (иногда называемый «разрушитель диска»), может клонировать весь жесткий диск или раздел диска в другой. Но в случае неправильного использования он может удалить содержимое вашего диска.

Таким образом, вы должны использовать с особой осторожностью. Вы найдете dd встроенный в большинство операционных систем Linux. Если нет, установите его из менеджера пакетов. Чтобы клонировать жесткий диск вашего компьютера, используйте команду:

dd if=/dev/sdX of=/dev/sdY bs=64K conv=noerror,sync

Здесь sdX — это исходный диск, а sdY — место назначения. Числовое значение 64K соответствует команде размера блока, bs. Значение по умолчанию составляет 512 байт, что очень мало, поэтому лучше включить 64K или более 128K в качестве условия. Однако: хотя больший размер блока делает передачу быстрее, меньший размер блока делает передачу более надежной.

Если вы хотите клонировать только раздел вашего диска, используйте

dd if=/dev/sda1 of=/dev/sdb1 bs=64K conv=noerror,sync

Как вы можете видеть, раздел sda1 (то есть раздел 1 на устройстве sda) будет клонирован в sdb1 (вновь созданный раздел 1 на устройстве sdb), например, вторичный или внешний жесткий диск, подключенный к вашему компьютеру.

Нажмите Enter, чтобы запустить команду. Сколько времени это займет, будет зависеть от размера диска или раздела. Просто убедитесь, что объем назначения достаточно велик для его хранения!

2. Инструмент клонирования разделов Linux, Partimage

Если вы столкнулись с проблемами, пытаясь разобраться с инструкциями с помощью dd, или предпочли бы избежать случайного удаления вашего жесткого диска с опечаткой, partimage также доступен для большинства дистрибутивов и не несет риска «уничтожения диска»!

Однако partimage не поддерживает файловую систему ext4, поэтому избегайте ее использования для клонирования дисков или разделов этого типа. Однако при необходимости его можно использовать для клонирования дисковых форматов Windows (FAT32 или NTFS, хотя это экспериментально), а также для более широко используемой файловой системы Linux ext3 и других более старых альтернатив.

Перед началом убедитесь, что раздел, который вы хотите клонировать, отключен ( с помощью команды umount ). В противном случае вам нужно будет выйти из partimage, прежде чем продолжить процесс. Вы можете выйти в любое время с помощью клавиши F6 .

sudo apt install partimage

Запустите из командной строки:

Читайте также:  Linux bash if elif

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

Нажмите вправо на клавиши со стрелками, чтобы перейти к следующему разделу, затем Image file to create/use и дайте ему имя (или введите имя файла изображения, которое будет восстановлено).

Выберите Action to be done (убедитесь, что у выбранной опции есть звездочка) и нажмите F5, чтобы продолжить. На следующем экране выберите уровень сжатия и предпочитаемые параметры. Вы также можете выбрать режим разделения изображений и указать, что должно произойти после создания резервной копии.

Нажмите F5, чтобы продолжить, подтвердите данные, затем нажмите OK, чтобы начать процесс. Скорость этого будет зависеть от мощности вашего компьютера.

Если вы ищете быстрое и грязное, но безопасное решение для клонирования дисков для Linux, используйте partimage.

3. Partclone: ​​программное обеспечение для создания разделов и клонирования

Для более зрелой альтернативы dd, которая поддерживает резервное копирование файловой системы ext4, partclone прост в использовании, но опять же требует текстовых команд, а не интерфейса, управляемого клавиатурой или мышью. Установить с помощью:

sudo apt install partclone

… Где [fstype] — тип файловой системы раздела, который вы хотите клонировать.

Следующая команда создаст образ диска hda1 (жесткий диск 1, раздел 1) с именем hda1.img:

partclone.ext3 -c -d -s /dev/hda1 -o hda1.img

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

partclone.extfs -r -d -s hda1.img -o /dev/hda1

Более подробную информацию об использовании можно найти на сайте partclone.

4. Клонируйте свой диск Linux с помощью Clonezilla

Для более гибкого решения, почему бы не попробовать Clonezilla? Это популярное решение для аварийного восстановления основано на Partclone и предназначено для ряда задач клонирования дисков. Поддерживаются все ожидаемые файловые системы в Linux, Windows и MacOS (и за ее пределами).

В отличие от dd и Partclone, Clonezilla доступен в виде загрузочного ISO. Вы можете записать это на DVD или USB-накопитель, чтобы полностью клонировать жесткий диск Linux. Clonezilla проста в использовании, с меню на клавиатуре, а не с непонятными командами, так что любой может справиться с этим.

Хотя Clonezilla можно настроить как отдельную утилиту, вы можете предпочесть использовать ее как часть инструмента восстановления Boot CD от Hiren.

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

Клонировать ваш жесткий диск Linux легко

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

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

Насколько публикация полезна?

Нажмите на звезду, чтобы оценить!

Средняя оценка / 5. Количество оценок:

Оценок пока нет. Поставьте оценку первым.

Источник

Оцените статью
Adblock
detector