Как клонировать жесткий диск linux с помощью gparted
Имеем Linux - Fedora 22,
HDD - на котором установлена система, требуется переехать на SDD который в два раза меньшего размера, но данных на HDD мало, поэтому влезут.
Оба диска подключены к компьютеру.
Вопрос: как клонировать диск? Желательно средствами GNU Linux.
Уточнения:
1. CD/DVD - нет.
2. gparted - не работает с активным системным разделом.
3. Куда tar архив размещать? в /dev/null ? два диска всего.
4. Диски разного размера!
Загружаешься с livecd, монтируешь существующий hdd, весь hdd пакуешь в tar, монтируешь ssd, распаковываешь tar на ssd. Дальше самое интересное, нужно указать grub откуда грузиться. Примерно так mount -t proc none /mnt/ssd/proc mount -o bind /sys /mnt/ssd/sys mount -o bind /dev /mnt/ssd/dev chroot /mnt/ssd /bin/bash grub root (hd0,0) setup (hd0) /mnt/ssd - примонтированый ssd
1. Clonezilla
Clonezilla представляет собой Live CD, созданный на основе Ubuntu и Debian и выпущенный под лицензией GPL 3. С его помощью можно клонировать все ваши данные на жестком диске или делать резервные копии; он похож на Norton Ghost для Windows, но более эффективный.
Как клонировать раздел Linux
С помощью команды dd вы можете скопировать весь жесткий диск или отдельный раздел Linux. Начнем с клонирования одного из наших разделов. В моем случае у меня есть следующие диски: /dev/sdb, /dev/sdc. Я буду клонировать /dev/sdb1 / в /dev/sdc1.
Сначала выведите список разделов диска, используя команду fdisk, как показано ниже.
Теперь клонируем раздел /dev/sdb1/ в /dev/sdc1 с помощью команды dd:
Приведенная выше команда указывает dd использовать /dev/sdb1 в качестве входного файла и записать его в выходной файл /dev/sdc1.
После клонирования раздела Linux вы можете проверить оба раздела с помощью команды:
Способ третий: Команда dd
Выглядит это в самом общем виде вот так:
В данном примере /dev/sda ≈ это диск, с которого снимается копия, а /dev/sdb ≈ диск на который копируется. Имейте в виду, что dd делает побайтовую копию всего диска, в том числе и загрузочного сектора (MBR). Команда dd позволяет также скопировать диск не на другой диск, а просто в файл, который впоследствии можно поместить на хранение куда угодно, можно записать на DVD, а в случае нужды при помощи той же команды копировать обратно на место:
Скорость при копировании при помощи команды dd в приведенном варианте будет невелика, примерно такая же, как при помощи программы GParted. Дело в том, что по умолчанию dd работает блоками по 512 байт. Но можно в несколько раз повысить эту скорость, применив другой размер блока, скажем 100Мб:
Советую вам прочесть либо ман dd, либо статью про эту команду.
Не важно, каким из трех способов вы воспользуетесь; важно, что у вас будет резервная копия всей системы. Компьютеры время от времени ломаются, и время их поломки всегда самое неудачное. Так что не ленитесь создать клон своего винчестера.
Оригинал: 8 Best Open Source “Disk Cloning/Backup” Softwares for Linux Servers
Автор: Hanny Helal
Дата публикации: July 3, 2014
Перевод: Н.Ромоданов
Дата перевода: август 2014 г.
Клонирование дисков представляет собой процесс копирования данных с одного жесткого диска на другой. На самом деле вы можете выполнить этот процесс с помощью операции копирования и вставки (copy & paste), но вы не сможете скопировать скрытые файлы и каталоги или файлы, которые в текущий момент используются, поэтому вам нужна программа клонирования, которая сделает эту работу. Также вам, возможно, потребуется отдельный процесс клонирования, который выполнит сохранение резервного образа ваших файлов и каталогов.
Работа программы клонирования состоит в том, чтобы взять все данные на диске, конвертировать их в один файл .img и предоставить его вам с тем, чтобы вы могли скопировать его на другой жесткий диск. В нашей статье мы рассказываем о восьми лучших программ клонирования, имеющих открытый исходный код, которые сделают за вас эту работу.
Возможности
- Поддерживает работу с базовыми атрибутами файлов, такими, как владелец, права доступа и т.п.
- Поддерживает работу с расширенными атрибутами, такими, которые используются в SELinux.
- Поддерживает работу с базовыми атрибутами файловых систем (метки, uuid, размер блока) для всех файловых систем Linux.
- Поддерживает работу с разделами NTFS в Windows и с Ext в системах Linux и Unix-подобных системах.
- Поддерживает работу с контрольными суммами, которые позволят вам проверять целостность данных.
- Возможность восстанавливать испорченные архивы путем простого пропуска испорченных файлов.
- Возможность использовать в архиве более одной файловой системы.
- Возможность сжимать архив с помощью многих форматов сжатия, например, lzo, gzip, bzip2, lzma/xz.
- Возможность разбивать большие файлы на несколько маленьких.
Вы можете скачать пакет FSArchiver и установить его в вашей системе, либо вы можете скачать диск SystemRescueCD , в котором также есть пакет FSArchiver.
4. Partimage
Пакет Partimage является программой резервного копирования с открытым исходным кодом; по умолчанию она работает по системе Linux и в большинстве дистрибутивов Linux доступна для установки из менеджера пакетов. Если у вас нет установленной системы Linux, то можно использовать диск «SystemRescueCd», являющийся «живым» диском Live CD, в состав которого по умолчанию входит пакет Partimage, позволяющий выполнить необходимый вам процесс клонирования.
Пакет Partimage выполняет клонирование очень быстро, но проблема в том, что в нем не поддерживается работа с разделами ext4 или btrfs, но вы можете пользоваться им для клонирования других файловых систем, например, ext3 и NTFS.
B) Copy Root Partition (/) From SOURCE to TARGET:
- Select the SOURCE disk (/dev/sda) and then click on the first partition (which is the 'root' partition in our example) of the SOURCE disk
- Right click on the first partition and select ‘Copy’
- Select the TARGET disk and then the unallocated partition – right click on this and select ‘Paste’
- On the window that appears next, resize the partition to suit (leave enough free space for a swap partition – that space must be equal or larger than the actual swap-space on the SOURCE disk)
NOTE: You can do the re-sizing of the partition one of two ways – visually or manually:
-
visually: drag the right hand pointer on the re-size window (the mouse pointer will change to a 2 headed arrow) to the desired position – see figure below
2 ответа 2
Все можно сделать, главное аккуратно. Нужны следующие вещи:
- livecd диск или лучше флешка. Можно другого совместимого дистрибутива, к примеру ubuntu.
- оба диска должны быть подключены к компу.
- загрузится с live
- открыть gparted или любую другую любимую утилиту для разбивки диска.
- разбить ssd как нужно (home, root, swap и дальше по предпочтениям), отформатировать
- монтируем новые диски и старые. Рекомендую сделать в /mount папку old (для старого диска) и new (для нового).
- копируем данные. Так как это линукс, то можно с помощью cp, главное сохранить права. К примеру home cp -a /mount/old/home/ /mount/new/home .
- аналогично копируется корень. Но тут есть особеность - не все нужно копировать. к примеру, папку tmp не нужно (хотя ничего плохого не будет). Если в папка /mount/old/proc и /mount/old/sys что то будет внутри - это копировать не нужно (содержимое этих папок система создает сама).
- не забываем о boot разделе.
- если имена устройств поменялись (к примеру, home это был /dev/sda*1*, а стал /dev/sdb*4* - тут важна цифра, а не буква), то открываем файл /mount/new/etc/fstab и правим по феншую.
- осталось последнее - перенести загрузочную запись. Вначале копируем старый dd if=/dev/sdX of=/path/to/mbr_file.img bs=512 count=1 , а потом переносим на новый. Так как мы не хотим потереть таблицу разделов, то нужно не все скопировать. dd if=/path/to/mbr_file.img of=/dev/sdX bs=446 count=1 .
Что делать, если ничего не завелось?
Старый диск скорее всего не поврежден. Так что им можно будет загрузиться. Плюс есть флешка. Можно восстановить.
Но если честно, то я переносил немного по другому. Все как выше, разбил диск, скопировал home раздел, потом вытянул старый диск, и загрузился с флешки. И начал установку как обычно. В процессе установки главное не отформатировать home раздел (хотя потом все равно можно скопировать). Так как home раздел есть, то сохранятся все настройки программ. Потом только возможно нужно будет доустановить недостающие программы.
Создать копию всего диска ≈ прекрасный способ сохранить не только ваши данные, но и саму систему. Цены на переносные USB жесткие диски постоянно снижаются, и весьма полезно иметь парочку для подобных работ. Если ваш основной винчестер испортится, вы сможете заменить его на запасной с копией системы и продолжить работу буквально через несколько минут. Дело только за изготовлением такой копии. Это можно сделать множеством способов, в этой статье мы опишем 3 из них.
Основная проблема при снятии точной копии диска заключается в необходимости загрузиться с другого носителя, чтобы копия была полноценной. Можно загрузиться с LiveCD, либо с загрузочной флешки. Вероятно, у вас где-нибудь хранится установочный диск вашего дистрибутива, можно воспользоваться им. В рамках данной статьи мы будем говорить о дистрибутиве Ubuntu 10.4. Второй способ снять копию жесткого диска ≈ использовать специальный клонирующий дистрибутив Clonezilla. Этот способ хорош для тех, кто еще плохо знает Linux и совсем неуверенно себя чувствует в командной строке. Третий способ позволяет снять копию вашего винчестера из любого дистрибутива Linux при помощи одной простой команды в терминале.
C) Create Extended Partition On TARGET:
- Select the unallocated (free) space on the TARGET disk and then click on ‘Partition’ button on the menu and select ‘New’
- On the window that appears next, create an extended partition on the unallocated space by setting the ‘Create as:’ field to ‘Extended Partition’ and then click ‘Add’
2. Redo Backup
Redo Bakcup также представляет собой инструмент Live CD для простого клонирования вашего дисков; Redo Backup является бесплатной «живой» системой с открытым исходным кодом, выпущенной под лицензией GPL 3, Как указано на сайте этого приложения, оно обладает следующими возможностями:
- Простая загрузка графического интерфейса менее, чем за минуту.
- Установка не требуется; работает с компакт диска или с устройства USB.
- Сохраняет и восстанавливает системы Linux и Windows
- Автоматически находит в локальной сети общедоступные хранилища данных.
- Получает доступ к файлам даже без логина.
- Быстро восстанавливает удаленные файлы, документы и медиафайлы.
- Доступ в интернет с помощью браузера Chromium для скачивания драйверов.
- Небольшой размер диска — только 250MB.
7. G4L
Способ второй: Clonezilla
Clonezilla ≈ это дистрибутив Linux специально созданный для клонирования дисков. Бывает двух видов: Live и SE. Live работает так же как уже описанный Ubuntu Live USB (CD). Вы загружаете компьютер с этого Live USB (CD)
и производите копирование любого диска на любой диск из числа подключенных к системе. Для этой цели дистрибутив содержит множество программ, объединенных одной простой системой меню, помогающей вам проделать нужную операцию. По умолчанию, программой копирования разделов является Partclone .
Clonezilla SE (Server Edition) предназначена для клонирования дисков через сети.
Последняя версия Clonezilla 1.2.5.17 выходит в Debian и Ubuntu вариантах. Доступна теперь и AMD64 версия, имеющая 64-битные версии всех программ и возможность копировать большие разделы. Все приложения обновлены до версии ядра Linux 2.6.32-12. Самое сложное при использовании Clonezilla ≈ не перепутать, какой из дисков является мастером, а какой копией. Clonezilla также обеспечивает копирование Главного Загрузочного Сектора (MBR), чего не делает GParted из Ubuntu Live CD. В последнем случае приходится делать это вручную через командную строку.
E) Re-install GRUB On The TARGET:
- Switch on the power to the PC
- After the POST beep, press the key to get to the boot menu (F12 for a Gigabyte motherboard)
Check the name of the new root partition on the new disk. In this case, it’s /dev/sda1
Procedure
Возможности
- Поддерживает многие файловые системы, например: ext2, ext3, ext4, btrfs, xfs и многие другие
- Поддерживает BIOS и UEFI
- Поддерживает разбиение дисков на разделы MPR и GPT
- Возможность переустановить grub 1 и 2 на любой из подключенных жестких дисков
- Работает на слабых компьютерах (необходимо только 200 MB оперативной памяти)
- Много других возможностей
Clonezilla для Linux
Клонирование всего жесткого диска
Клонирование жесткого диска Linux похоже на клонирование раздела. Однако вместо указания раздела вы просто используете весь диск. Обратите внимание, что в этом случае рекомендуется, чтобы целевой жесткий диск был такого же размера (или больше), что и исходный диск.
Эта команда должна была скопировать диск /dev/sdb с его разделами на целевой жесткий диск /dev/sdc. Вы можете проверить изменения на обеих дисках с помощью команды fdisk.
Downloading and Creating a USB Boot Drive
The full command for creating the USB boot disk is:
sudo dd if=/path-to-gparted-live.x.y.z-w.iso of=/dev/sdx bs=4M; sync
Replace ‘/dev/sdx’ in the command above by the actual USB device – which you can get from the ‘dmesg’ command. Also replace the ‘path-to-gparted-live.x.y.z-w’ with the actual path and the .iso file name.
Make sure that you have a 1 GB (or larger) USB thumb drive for GParted. If you have existing data on the USB drive, make sure that you make a backup copy of the data. Then plug in your USB drive into the PC. If need be, reformat the USB drive – make sure that you use a FAT or FAT32 partition. Then launch tuxboot, select ‘Pre Downloaded’, set it as ISO, then navigate to the Downloads folder and double-click on the GParted .iso image file (see figure below). Make sure that your USB disk is correctly set to the correct device, then click the ‘OK’ button. Wait until the process is completed (see figures below) – you now possess a GParted USB boot drive.
Способ первый: Загрузочный USB носитель с Ubuntu
Сделать загрузочный USB носитель совсем не сложно. Вам понадобится только ISO файл с дистрибутивом Ubuntu. Если его в вас нет, то нужно скачать его с сайта Ubuntu . На этой же странице есть инструкции по созданию загрузочного USB диска в Mac OS X, Ubuntu и Windows.
Как только диск создан, с него можно загружаться. Возможно, вам придется подключить загрузку с USB в BIOS вашего компьютера. На многих новых машинах, нажатием при старте клавиши F12 вызывается загрузочное меню, где указаны все типы загрузочных носителей.
Когда Ubuntu загрузится, можно приступать к созданию копии жесткого диска. Для этого воспользуемся программой GParted, умеющей создавать копии разделов и дисков.
Найти эту программу можно так: Система --> Администрирование --> Partition Editor (или нечто подобное). А можно нажать одновременно клавиши ALT и F2 и появившемся окне набрать "gksu gparted" (без кавычек).
Там же есть и программа Disk Utility, которая содержит множество утилит для работы со всеми дисками в вашей системе. С ее помощью можно примонтировать или отмонтировать диски, отформатировать их. Последнее, кстати, совсем нелишне проделать с тем диском, на котором вы будете создавать резервную копию, особенно если на нем раньше была Windows.
Сам процесс создания копии подробно описан на сайте GParted или на форуме Ubuntu . Существует также специальный GParted Live CD , который может заменить Ubuntu.
Процесс изготовления копии жесткого диска на съемный USB диск займет немало времени, в зависимости от объема диска; в нашем случае около четырех часов. Значительно ускорить этот процесс может адаптер с eSATA коннектором, типа Thermaltake BlackX ST0005U . Такую штуку полезно иметь всем, кто часто создает резервные копии дисков.
8. doClone
Пакет doClone также является бесплатным программным проектом, который был разработан для простого клонирования системных разделов Linux; он написан на языке C++, поддерживает до 12 различных файловых систем, может выполнять восстановления загрузчика Grub и может по сети передавать образ клона на другие компьютеры; doClone также позволяет выполнять «живое» клонирование, что означает, что вы можете создать клон системы, даже если система работает.
Есть много других инструментальных средств, предназначенных для клонирования ваших жестких дисков в системе Linux. Пользуетесь ли вы, когда выполняете резервное копирование ваших жестких дисков, какой-нибудь из систем клонирования из приведенного выше списка? Какая из них больше подходит для вас? А также сообщите нам, если есть какие-нибудь другие инструменты, о которых вы знаете и которые отсутствуют в списке.
Оригинал: How to Clone Linux Partition
Автор: Marin Todorov
Дата публикации: 18 декабря 2018 года
Перевод: А. Кривошей
Дата перевода: октябрь 2019 г.
Существует множество причин, по которым вы можете захотеть клонировать раздел Linux или даже весь жесткий диск, большинство из которых связаны с созданием резервных копий ваших данных. Есть несколько способов сделать это в Linux, используя внешние утилиты, такие как partimage или Clonezilla.
Однако в этом руководстве мы рассмотрим клонирование дисков Linux с помощью утилиты dd, которая чаще всего используется для преобразования или копирования файлов и предустановлена в большинстве дистрибутивов Linux.
Создание резервной копии MBR в Linux
Команда dd также может быть использована для резервного копирования MBR, которая находится в первом секторе диска перед первым разделом. Поэтому, если вы хотите создать резервную копию вашей MBR, просто выполните команду:
Приведенная выше команда указывает dd копировать /dev/sda в /backup/mbr.img с шагом 512 байт, а опция count указывает скопировать только 1 блок. Другими словами, вы говорите dd скопировать первые 512 байт из /dev/sda в указанный вами файл.
D) Copy Swap Partition From SOURCE to TARGET:
- Select the SOURCE disk (/dev/sda) and then click on the swap partition (which is the third partition in our example) of the SOURCE disk
- Right click on the swap partition and select ‘Copy’
- Select the TARGET disk and then the unallocated partition – right click on this and then click on the ‘Paste’ button in the pop-up window
NOTE: If you fail to leave a large enough free space for the swap, the ‘Paste’ button will be grayed out and you will NOT be able to copy the swap. If this happens, try re-sizing the ‘root’ partition on the TARGET disk.
6. Partclone
Partclone это бесплатный инструмент для клонирования и восстановления разделов, написанный на языке С и впервые появившийся в 2007 году. Он поддерживает множество файловых систем, например, ext2, ext3, ext4, xfs, nfs, reiserfs, reiser4, hfs+, btrfs и очень прост в использовании.
Распространяемый по лицензии GPL, он также доступен в качестве инструментального средства в Clonezilla; также вы можете скачать его в виде отдельного пакета.
5. FSArchiver
Пакет FSArchiver является продолжением пакета Partimage; он также является хорошим инструментом клонирования жестких дисков - поддерживает клонирование разделов Ext4 и NTFS.
Assumptions
- you wish to clone the SMALLER HDD (or SDD) to a LARGER HDD (or SDD). This SMALLER disk will be referred to as the SOURCE disk in this article.
- the LARGER HDD (or SDD) is unformatted (with or without an MSDOS type partition table) – this disk will be referred to as the TARGET disk in this article.
- the SOURCE disk contains the Linux OS (which you want to clone) on 3 partitions – one of which is an extended partition. Note that this is the standard way for the three most popular Linux distributions (according to Distrowatch) and this article assumes that you have followed suit. The 3 partitions are – root, extended and linux-swap. Note that if you have any other partition schemes, you can tweak this article to suit them.
- the SOURCE disk uses a NON-UEFI type layout – it DOES NOT use a GPT type partition but a plain old MSDOS/MBR scheme. Although, this article is written specifically for non-UEFI layouts, it is possible that they may work for UEFI style layouts, although this has not been tested by the writer.
A) Boot From GParted USB Drive:
- Attach both of your HDD's into the PC – old HDD (SOURCE disk) into secondary port and new HDD (TARGET disk) into primary port
- Plug in the GParted USB boot drive into a working USB port
- Switch on the power to the PC
- After the POST beep, press the key to get to the boot menu (F12 for a Gigabyte motherboard)
3. Mondo Rescue
В отличие от других программ клонирования, программа Mondo не конвертирует ваши жесткие диски в файл .img; поскольку она конвертирует их в образ .iso, то вы можете также создать свой собственный Live CD с Mondo — используйте для этого инструментальное средство mindi, разработанное для Mondo Rescue для клонирования данных с Live CD.
Программа поддерживает работу в большинстве дистрибутивов Linux, она также поддерживается в FreeBSD, причем под лицензией GPL. Вы можете установить Mondo Rescue, воспользовавшись следующей ссылкой.
Читайте также: