Clonezilla —полностью бесплатный инструмент для клонирования дисков, позволяющий в том числе перенести установленную Windows 11 или Windows 10 с жесткого диска на SSD или другой HDD.
Далее в инструкции описан базовый способ переноса установленной системы на примере Windows 11 на другой диск с помощью Clonezilla, а также некоторые нюансы и проблемы, с которыми можно столкнуться в процессе.
Перенос Windows на другой диск в Clonezilla
Прежде чем приступить, несколько предупреждений, касающихся использования Clonezilla:
- По моему опыту, Clonezilla преподносит больше «сюрпризов» после клонирования дисков, чем другие популярные инструменты, о которых вы можете прочитать в статье Как перенести Windows на SSD или другой HDD. Обычно, ничего непоправимого, но иногда после переноса приходиться добиваться исправной загрузки, могут пригодиться навыки использования команд diskpart.
- Если загрузчик ОС у вас находится на одном диске (условно, Диск 1), а сама система — на другом (Диск 2), что не редкость, перенося систему с диска 2 на диск 1 мы потеряем загрузчик. Если вы не уверены в расположении загрузчика и в том, что сможете в дальнейшем исправить ситуацию, возможно, это не тот метод, который вам следует использовать.
- Всегда есть риск что что-то пойдёт не так. Позаботьтесь о сохранности важных данных.
Приступая, ещё раз: все действия, описанные далее, только под вашу ответственность.
Загрузка образа ISO Clonezilla и создание загрузочной флешки
Прежде всего нам потребуется скачать Clonezilla и создать загрузочную флешку:
- Зайдите на официальную страницу загрузки https://clonezilla.org/downloads/download.php?branch=stable
- В поле CPU architecture оставьте AMD64 (даже если у вас Intel), в пункте «File type» выберите ISO.
- Нажмите кнопку Download и дождитесь завершения загрузки образа ISO Clonezilla.
- Используя этот образ, запишите загрузочную флешку, можно использовать популярную программу Rufus. Используйте тот тип загрузки (UEFI/Legacy), который используется для загрузки вашей ОС.
- После записи накопителя перезагрузите компьютер и поставьте загрузку с флешки в БИОС/UEFI. Потребуется выключить Secure Boot, если опция включена.
Процесс переноса системы на другой диск
После загрузки с использованием созданного накопителя Clonezilla, можем приступать к клонированию. В тестовой системе подключено два накопителя, пробуем перенести ОС с одного диска на другой:
- На первом экране выберите первый вариант: Clonezilla live и нажмите Enter.
- В окне выбора языка присутствует русский, выберите его.
- В следующем окне с предложением сменить раскладку просто нажмите Enter, изменять не требуется.
- Оставьте выбранным пункт «Запуск Clonezilla» и нажмите Enter.
- Выберите 2-й пункт: «Работать непосредственно с диска на диск или с раздела на раздел» и нажмите Enter.
- На следующем экране лучше выбрать Expert — «Экспертный уровень», это позволит отключить одну из опций, включённых по умолчанию, которая может приводить к проблемам при переносе систем Windows.
- Выберите пункт «Клонировать локальный диск на локальный диск».
- Выберите исходный диск, то есть тот, информация с которого, включая все разделы будет клонироваться на другой диск. Внимание: общий размер разделов исходного диска (и занятого и свободного пространства) не должен быть больше размеров целевого диска.
- Выберите целевой диск.
- Если вы выбрали режим «Эксперт», отключите верхний пункт в следующем окне (в режиме Beginner оно не появляется) — нам не нужен GRUB на диске с Windows. Сделать это можно с помощью клавиши «пробел» или мышью. Нажмите Enter.
- Выберите вариант проверки файловой системы. Для ускорения процесса и, если вы уверены, что с исходным диском всё в порядке, оставьте выбранным пункт «Пропустить проверку» и нажмите Enter.
- В случае использования режима «Эксперт» в окне с запросом о таблице разделов просто нажмите Enter.
- Вам будет предложено выбрать, что сделать после завершения процесса — можно оставить выбранным первый пункт: «Спросить».
- Далее потребуется нажать Enter для продолжения, прочитать предупреждение (о том, что все данные с целевого диска на всех разделах будут удалены), ввести Y, если согласны и нажать Enter. А затем еще раз прочитать предупреждение и снова подтвердить, что вы понимаете, что делаете вводом Y.
- Начнется процесс клонирования дисков, который может занять разное, обычно — продолжительное, время.
- По завершении вам будет предложено нажать Enter для продолжения, а затем выбрать вариант действий (если вы не выбрали его на 13-м шаге): выключить компьютер, выполнить перезагрузку, перейти в командную строку или начать сначала. Выберите «Выключить питание» и дождитесь завершения обратного отсчёта.
- При выключении питания вам сообщат о необходимости отключить загрузочный накопитель с Clonezilla, чтобы следующая загрузка выполнялась не с него.
После того, как все шаги были выполнены, мы можем надеяться, что при отключении исходного диска или при изменении порядка загрузки в БИОС/UEFI загрузка с диска, на который была перенесена система, пройдёт успешно. В моем случае для Windows 11 в режиме UEFI всё прошло успешно. Однако, это не всегда так, кроме этого, существуют и дополнительные нюансы.
Возможные проблемы после клонирования диска в Clonezilla
Далее — не полный список того, с чем можно столкнуться после выполнения переноса системы с помощью Clonezilla и кратко о том, как исправить ситуацию:
- После отключения исходного диска при загрузке с диска, на который была перенесена система, сообщается об ошибке загрузки на синем экране. Решение: восстановить загрузчик, как описано в инструкциях Восстановление загрузчика Windows 11 и Восстановление загрузчика Windows 10 (2-й способ, в командной строке). Учтите, что после этого при загрузке системы может появиться меню с выбором двух ОС, одна из которых не загружается — удаляем не загружающийся пункт в Win+R — msconfig на вкладке «Загрузка».
- Целевой диск оказывается не подключен и не инициализирован. Если мы можем загрузиться в систему на исходном диске: включаем диск в диспетчере устройств, инициализируем в «Управлении дисками». Если исходный диск отключен, то инициализируем диск в diskpart (list disk, select disk N, online, exit).
- Если целевой диск имел больший объём, чем исходный, на нем появится не распределенное пространство. Его можно использовать для создания нового раздела или присоединения к одному из текущих разделов (через «расширить том» в управлении дисками).
- В некоторых случаях процесс усложняется и утилитой «Управление дисками» не обойтись. Например, в ситуации на скриншоте, когда между разделом с данными и не распределенной областью есть системный раздел, придется использовать сторонний софт, чтобы увеличить системный раздел на всю область незанятого пространства, а затем — отдать пространство от увеличившегося системного раздела в пользу диска C.
Это не исчерпывающий список возможных проблем и методов решения: в зависимости от изначальной конфигурации (тип загрузки, размеры дисков, расположение раздела с загрузчиком) они могут быть другими.
В этой статье мы расскажем, как клонировать Windows с одного жесткого диска на другой SSD или HDD с помощью бесплатного приложения Clonezilla. Мы покажем, как использовать Clonezilla для полного переноса системы, сохраняя загрузочные файлы и все необходимые разделы. Этот процесс подходит для случаев, когда исходный диск меньше или равен по объему целевому диску.
Приобрести оригинальные ключи активации Windows всегда можно у нас в каталоге от 1099 ₽
Шаг 1: Скачивание Clonezilla
Сначала необходимо скачать Clonezilla с официального сайта. При выборе архитектуры выберите amd64 (даже если у вас процессор Intel). Формат файла лучше выбрать ISO для создания загрузочной флешки.
Так же вы можете скачать Clonezilla с нашего сервера.
Шаг 2: Запись Clonezilla на флешку
Запишите ISO-образ на флешку с помощью приложения Rufus. Если ваша система загружается в режиме Legacy, выберите соответствующий режим, а для UEFI необходимо отключить Secure Boot в BIOS перед загрузкой с флешки.
Как записать ISO-образ на флешку с помощью Rufus, можно прочитать в нашей другой статье.
Шаг 3: Загрузка с флешки
Подключите флешку с Clonezilla и перезагрузите компьютер. Загрузитесь с флешки, выбрав её в BOOT Menu (обычно F12 или Esc при старте компьютера). После загрузки вы увидите экран выбора. Выберите Clonezilla live и нажмите Enter.
Шаг 4: Настройка Clonezilla
1. После запуска выберите язык. В списке есть русский язык.
2. Оставьте раскладку клавиатуры по умолчанию.
3. Далее выберите “Запуск Clonezilla” и нажмите Enter.
4. В следующем меню выберите “Работать с диска на диск”, чтобы клонировать один диск на другой.
Шаг 5: Выбор уровня настроек
Clonezilla предлагает выбрать уровень настроек: начальный или экспертный. Рекомендуется выбрать экспертный уровень, чтобы избежать проблем с загрузчиком Windows. В противном случае вам может потребоваться восстанавливать загрузчик вручную.
Шаг 6: Выбор дисков для клонирования
1. Выберите диск, с которого будет производиться клонирование (например, диск 0).
2. Затем выберите целевой диск, на который будет производиться клонирование. Учтите, что все данные на целевом диске будут удалены.
Шаг 7: Настройка дополнительных параметров
1. Снимите отметку с пункта, который влияет на загрузчик Windows, используя пробел.
2. Пропустите проверку восстановления исходного файла системы, если уверены в целостности файловой системы.
3. Оставьте таблицу разделов без изменений — все разделы будут перенесены так, как есть.
Шаг 8: Завершение настроек и запуск клонирования
1. Выберите, что делать после завершения клонирования: перезагрузить систему, выключить компьютер и т.д.
2. Нажмите Enter для начала клонирования.
Clonezilla предупредит вас о том, что все данные на целевом диске будут удалены. Введите “y” для подтверждения и нажмите Enter.
Шаг 9: Ожидание завершения клонирования
Дождитесь завершения процесса клонирования. Это может занять продолжительное время в зависимости от объема данных и скорости дисков. После завершения нажмите Enter для продолжения.
Шаг 10: Перезагрузка и проверка результата
После завершения клонирования вы можете:
— Перезагрузить компьютер и войти в BIOS, чтобы выбрать новый диск в качестве основного загрузочного устройства.
— Отключить исходный диск, чтобы загрузиться только с нового диска.
Корректировка разделов после клонирования
Если целевой диск больше исходного, на нем может остаться нераспределенная область. Чтобы её использовать:
1. Нажмите клавиши Win + R, введите diskmgmt.msc, чтобы открыть управление дисками.
2. Найдите нераспределенное пространство на новом диске и либо создайте новый раздел, либо расширьте существующий.
Clonezilla — мощное и бесплатное решение для клонирования жестких дисков. С его помощью можно легко перенести Windows на новый SSD или HDD, сохранив все системные файлы и настройки. Несмотря на то, что приложение может показаться сложным, следуя данной инструкции, вы сможете успешно выполнить клонирование и настроить систему для работы с нового диска. Удачи!
Clonezilla is a free tool based on Linux explicitly designed for drive cloning containing any data, similar to Macrium Reflect. It accomplishes this by copying all the bits on a drive to another equal or larger drive.
If you run Windows 10, you can also use Clonezilla to migrate the current installation with all your settings, apps, and files to a new equal, larger, or faster drive without reinstalling the operating system. Or you can use Clonezilla as a backup tool before changing your current setup.
In this guide, you will learn the steps to use Clonezilla to clone a hard drive with an installation of Windows 10 to another drive.
Warning: Although this is a non-destructive process, changing a drive has risks. As such, use these instructions carefully and at your own risk. If you plan to replace a hard drive, creating a backup of your data is also good before proceeding. You have been warned.
Although using Clonezilla to make an exact copy of a drive on a new drive is a straightforward process, you must follow some preparation and specific steps.
The steps below will guide you with everything you need to know, including connecting a new hard drive, downloading and creating a bootable media to use Clonezilla, the cloning process, and even the steps to ensure that you are using the entire available space after the process.
Connect clone drive
After reducing the volume size, you can connect the new drive to the motherboard. The process to connect a traditional HDD, SSD, and M.2 drives will differ per manufacturer and computer model. As such, check your computer manufacturer’s support website for more specific details.
- Seagate BarraCuda 2TB HDD | See at Amazon
- Samsung 870 EVO 500GB SSD | See at Amazon
- Samsung 970 EVO 500GB M.2 | See at Amazon
You can connect a drive using a USB adapter but shouldn’t use an external drive as you cannot use it as a boot drive. However, you can use a USB external drive you intend to create a backup, which you will be able to restore to the same or different drive.
- Western Digital 8TB USB | See at Amazon
Create Clonezilla bootable media
Before you can clone a drive, you must download the Clonezilla ISO file and create a bootable media to use the tool.
The easiest approach to create a Clonezilla bootable media is to use the ISO with Rufus, a third-party tool designed to create bootable USB flash drives.
You could download the Clonezilla zip file, but if you make a mistake using the instructions, it can break your current installation.
Use these steps to download and create a Clonezilla bootable USB flash drive:
Download Clonezilla ISO file
To download the Clonezilla ISO file, use these steps:
-
Open Clonezilla download page.
-
In step 2, select the ISO option as the file type.
-
Click the Download button.
After you complete the steps, you can use Rufus to create a USB bootable media.
Create Clonezilla bootable USB with Rufus
To create a bootable media, connect a USB flash drive with at least 4GB of storage, and then use these steps:
-
Open Rufus’ website.
-
Under the “Download” section, click the download link for the latest version.
-
Double-click the file to launch the tool.
-
Select the USB flash drive from the “Device” section.
-
Click the Select button.
-
Select the Clonezilla ISO file.
-
Click the Open button.
-
Click the Start button.
Create Clonezilla bootable USB with Tuxboot
Alternatively, you can create a Clonezilla USB with the Tuxboot open-source app with these steps:
-
Download tuxboot from SourceForge. (Select the latest stable version available.)
-
Double-click the tuxboot-x.x.x.exe file.
-
Click the Yes button to bypass the warning.
-
Select the “On-Line Distribution” option.
-
Use the drop-down menu and select the Clonezilla-live-stable option.
-
Select the USB Drive option from the “Type” setting.
-
Select the flash drive from the “Drive” setting.
-
Click the OK button.
Once you complete the steps, before starting your device with the tool, you need to ensure that your device can boot from USB.
Typically, you will need to access your device’s Basic Input/Output System (BIOS) or Unified Extensible Firmware Interface (UEFI) by hitting one of the function keys (F1, F2, F3, F10, or F12), the ESC, or the Delete key during boot.
Once inside the firmware, look for the Boot section and make sure the boot order is set to the drive that contains the Windows 10 installation files and do not forget to save the configuration.
The BIOS/UEFI can differ depending on the manufacturer and per computer model. As such, check your manufacturer support website for more specific instructions.
Clone Windows 10 using Clonezilla
To use Clonezilla to clone a Windows 10 installation to a new SSD or large HDD, use these steps:
-
Start computer with the bootable media.
-
Select the Clonezilla live option and press Enter.
-
Choose your language and press Enter.
-
Select the “Keep option to stay with default keyboard layout” option and press Enter.
-
Choose the “Start_Clonezilla” option and press Enter.
-
Select the “device_device” option and press Enter.
-
Choose the “Beginner mode” option and press Enter.
-
Select the “disk_to_local_disk local_disk_to_local_disk_clone” option and press Enter.
-
Choose the (source) drive containing the data you want to clone to another drive and press Enter.
Important: If you don’t specify this option correctly, you can wipe out the wrong drive.
-
Select the (destination) drive, the empty drive you want to replace (or backup storage), and press Enter.
-
Choose the “sfsck” option to skip the checking and repairing the source system files and press Enter.
-
Select the action to perform after the cloning is complete. Options available include “choose,” “reboot,” or “poweroff.” (You can select any option.)
-
Press Enter to continue.
-
Type “Y” and press Enter to confirm the cloning process.
-
Type “Y” and press Enter again to re-confirm that the process will be erased in the destination drive.
-
Type “Y” and press Enter to close the boot loader, which is the code that makes the Windows 10 drive bootable.
Once you complete the steps, Clonezilla will clone the data (bit-by-bit) from the source to the destination drive.
After the process is complete, replace the old with the new drive on your computer or remove the cloned drive if this is a backup.
Expanding cloned drive
If the clone drive is larger than the original drive you replaced, you will need to use the “Disk Management” app to expand the volume to make the additional space usable.
-
Open Start.
-
Search for Disk Management and click the top result to open the app.
-
Right-click the volume (C:) and select the Extend Volume option.
-
Click the Next button.
-
Select the disk with the space you want to allocate (usually the default settings).
-
Click the Next button.
-
Click the Finish button.
Once you complete the steps, the main volume on the drive should expand using the unallocated space, making the storage size bigger.
Move recovery partition
If you can’t expand the main partition because the recovery partition is on the right, you will need to use a third-party tool like GParted to move the partition to the end of the drive.
Warning: Although this process works, there’s a that it might break the installation. Use these instructions at your own risk.
-
Start your computer with the GParted USB drive.
-
Select the “GParted Live (Default settings)” option and press Enter.
-
Select the “Don’t touch keymap” option and press Enter.
-
Select your preferred language and press Enter.
-
Select “0” and press Enter.
-
Select the drive with the partition to move from the top-right drop-down menu.
-
Select the recovery partition and click the “Resize/Move” button.
-
Click and drag the partition to the end of the drive (right).
-
Click the “Resize/Move” button.
-
Click the Apply button.
-
Click the Yes button.
-
Click the Close button.
After you complete the steps, you can use the previous steps to expand the installation partition with available space on the drive.
We are focusing this guide on moving an existing installation of Windows 10 with apps, settings, and your personal files to a new drive to replace a hard drive or for backup purposes, but you can clone any drive with any data.
If you’ve ever wanted to clone your Windows 10 drive, you might’ve found that it takes some know-how.
There are many things that you need to keep an eye out for in this process, and many of them, if set-up the wrong way, might leave you with a cloned drive that doesn’t work like you intended it to. Fortunately, we got your back here, with detailed instructions on what to do.
Click on these links to jump to the different parts of the article:
- Why clone your drive?
- What is Clonezilla and why it is the tool that you need
- The downsides to Clonezilla
- The actual cloning steps
Why would people want to clone their drive?
There could be many reasons. They might want to do it…
- As a simple backup strategy: so they could have a clean installation in case their computer gets infected with a virus, or malfunctions.
- So they could have a faster version of their operating system on an SSD.
- So they could have all their files and preferences immediately on somebody else’s computer.
And to do all those things, I wholeheartedly recommend Clonezilla. It’s definitely a must-have.
What is Clonezilla and why is it the only tool you need for cloning
Clonezilla is an open source software. It is basically a combination of multiple packages which give you an extremely efficient piece of software that you can use to clone from one to forty machines simultaneously. For a personal user one is enough, but for an enterprise IT pro, this advanced functionality can be priceless.
Clonezilla comes with support for numerous file systems such as ext2, ext3, xfs, jfs, GNU/Linux, HFS+, NTFS, FAT etc. There’s also Multicast and LVM2 support. The software comes from the NCHC (National Center for High-Performance Computing) software labs and gives you plenty of flexibility.
You can clone anything from a single drive, to a single partition within the drive, to be able to recover it later. Storing the cloned data can be done as a duplicate copy, or as an image file, it is your choice, and it’s also up to you whether you store it on an internal/external drive, CD/DVD drive, or even on a networked drive.
Are there any downsides to Clonezilla?
It’s worth mentioning that there are two potential caveats to using Clonezilla, but they’re both pretty easy to deal with.
- The first one is the user interface. Many users aren’t really used to the cursor-based, DOS-like interface, and this might be a brick wall for them. However, one, the UI is nonetheless fairly intuitive, and two, we’ve outlined all the steps down below, so all you need to do is read them through.
- The second one is that Clonezilla isn’t really backed up by a large company that has your back when something goes wrong. It is, however, backed up by an open source community that is huge, and that has a lot of skills and knowledge – and to us that feels like enough.
Now that we have the details of what it is, why you need it, and why you need Clonezilla rather than something else, let’s jump into the cloning.
Let’s clone! Follow these steps:
- Download the Clonezilla ISO. Clonezilla works from a live CD or USB, so you’ll need to make one for the purpose of using it. The easiest option is to use something like Rufus or UNetbootin for this, as both are lightweight tools that are practically made for this. Once you have your live CD, or USB, ready, it’s time to get to work.
- Next, either attach the USB, or insert the CD, in the computer whose drive you want to clone. Afterwards, you will want to reboot the device. Interrupt the booting process (unless your boot order is set to boot from USB/CD first, and hard drive second), and boot from the Clonezilla media, instead of your boot drive. What you’ll see here is the Clonezilla boot screen. Choose Clonezilla Live, and let’s get started.
- Choose a language and continue. You’ll be asked to choose a keyboard layout, and you’ll be presented with two options. The default one is the US keyboard, so if that’s what you want, or are using, choose “Keep”. If you’re using a different one, choose “Change”, and select the layout you want accordingly.
- Here you can either go with a console, or start Clonezilla. Unless you’re someone who knows their way around both Clonezilla, and a console, go with the “Start Clonezilla” option.
From this point on, be extra cautious
- This is where you get to choose between doing the copy directly, device-to-device, or creating an image. The better option is to create an image, especially if you’re cloning or backing up for the first time.
- Next, you need to choose where you want Clonezilla to save your image. If you are someone who knows what they’re doing, you can choose SSH, NFS or Samba, but they all require setting up. Usually what you’ll be using is the local_dev option, which saves your image to an external drive. Note though, that since the image is pretty big, you’ll want the external drive to be at least as big as the drive you’re imaging. This might be obvious, but still, it’s important enough that it’s worth mentioning.
- Next, you should choose which repository holds your image. You must be careful here, as selecting the wrong partition might mean that your primary, working partition, gets overwritten. For example, in Linux, you have partitions labeled like “sda”, “sdb”, “sdd” etc. The partition that ends in a is the primary partition, and you must not overwrite it. Give your image a name, and let it work. A good idea here is to include a date, especially if you’re doing this often. That would help you to easily determine which backup it is.
After this, it’s time to let Clonezilla do its thing. As far as imaging tools go, it is actually pretty fast and snappy. That means that it would take take anywhere from half an hour to three hours. This depends on your drive’s size, how much data it has, as well as the interface you use to transfer the data. Once it completes, you’re good to reboot your machine. In case anything happens, you now have a fully working backup of your drive.
Frequently Asked Questions
Can Clonezilla also clone a perfect copy of Windows 11?
Yes, Clonezilla should definitely be able to clone a perfect copy of Windows 11 just like it is capable of cloning Windows 10 since both operating systems are extremely similar in the way they are built and the way that they function.
Is Clonezilla safe to use? I don’t want to risk infecting my PC.
Clonezilla supports encryption with the eCryptfs protocol, an open-source and thus well-vetted solution for AES-256 and other encryptions. With that said, the encryption protocol that it uses is one of the most secure we have ever seen, so you should not have any trouble with your data getting stolen, corrupted, or getting infected by malware, viruses, spyware, or, God forbid, ransomware.
Just remember your decryption key by storing it somewhere safely, either on your phone, another computer, or simply writing it down clearly so that you can recover your files once you want to migrate your installation.
Does Clonezilla work with an SSD?
Yes, Clonezilla works just fine with any SSD. If you are having trouble running it on your particular SSD, then the problem might be on your end. Either it can be a misconfigured setting, something wrong physically with your SSD, or any other similar problem. If you have encountered problems, we recommend checking out Clonezilla’s official website.
Is there a GUI version of Clonezilla or any other visual version that might help a newbie out?
Yes, and it’s called Rescuezilla (ironically enough). You can read more about it here.
Suggested Read: Can’t Install iTunes on Windows 10
The Bottom Line
Clonezilla and Rescuezilla should work just fine with just about any PC or laptop configuration out there. We hope that this guide has helped you out and we would kindly appreciate it if you shared this article with others in case you have found it useful.
Do you want to try out Clonezilla on your PC? Or would you recommend something else which probably would work best? Let us know in the comments below!
Do you got any other technical questions about your Windows 10 PC? Try visiting our website. You could find a topic that might help you with your concerns. Or you might have a direct question like Android Cleaning Apps.
Клонируем ОС автоматически без дополнительных серверов и пакетов
Время на прочтение8 мин
Количество просмотров61K
Как-то раз мне пришлось собирать несколько серверов виртуализации, и на них надо было установить порядка 500 машин, каждая из которых должна была быть клонирована.
Самые разношёрстные машины. Некоторые из них жили на Windows, а некоторые на Linux. Машины достаточно самостоятельные. В них уже установлены клиенты, которые занимались подключением и настройкой ОС, но сами ОС необходимо было доустанавливать.И если с Linux у нас всё ещё более-менее просто — rsync и grub, и всё готово, то Windows не настолько “переносимая” ОС (меня ждало создание sysprep образ и клонирование именно его).
Мне не хотелось устанавливать различные инструменты, такие как Puppet или Ansible. Более того, диски различных машин имели разный размер. К сожалению, надо было именно клонировать, а не просто копировать образы qcow дисков.
В итоге, просидев несколько дней над достаточно разрозненной документацией старого, надёжного и проверенного временем инструмента, я нашёл способ легко и безболезненно, а главное — автоматически, клонировать ОС.
Более того, в сети не пришлось устанавливать и настраивать никакие инструменты. Единственное, что мне потребовалось — это SSH сервер, на который были сложены образы ОС.
Итак, под кат.
Пользоваться мы сегодня будем замечательным, но подзабытым инструментом под названием Clonezilla. В своё время Clonezilla была одним из основных инструментов любого системного администратора. Со временем надобность в таком инструменте начала отпадать. Современные VPS предоставляют доступ к уже склонированным серверам, а установка ОС перестала быть занятием, которое отнимает полдня. Но когда вы пытаетесь установить систему на сотни компьютеров, вам не захочется клацать кнопками туда-сюда целый день.
Clonezilla имеет очень обширный инструментарий для заботливого переноса дисковой разметки с одного компьютера на другой. Это не просто dd
пространства диска в image где-то на файловой системе. Clonezilla сама обследует наличествующие разметки дискового пространства и предложит воспользоваться partclone
, ntfsclone
или dd
, в зависимости от ситуации.
Всё это происходит с пониманием того, как правильно переносить загрузчики различных ОС на другие разделы. Grub будет аккуратно пересобран под chroot после клонирования, а Winboot соответственно поправлен и ткнут носом туда, откуда его надо грузить.
Более того, несмотря на свой возраст, система не имеет никаких проблем с UEFI, GPT и другими современными системами загрузки, BIOS и разметками дисков.
И что ещё было немаловажно для меня — Clonezilla умеет заботливо изменять конечную файловую систему, чтобы та аккуратно занимала всё доступное место на диске. Вам не надо будет заниматься ресайзингом файловой системы в работающей ОС. В случае Linux это просто лишний скрипт, а в случае с Windows — это та ещё возня.
Самое приятное, вам нужно будет всего лишь расшарить одну папку где-нибудь в сети, чтобы поднять систему клонирования. Не нужно поднимать сервер или писать конфиги к чему-нибудь ещё, есть image, бери и клонируй.
Кстати, до того как клонировать виртуальные ОС, мы склонировали ОС на самих хостах виртуализации. Уж очень всё просто получалось.
Что ж, приступим. Для начала идём на сайт Clonezilla и загружаем рабочий стабильный образ самой Clonezilla. Загрузите iso и zip. Они оба нам понадобятся.
Также я рекомендую вставить iso в какую-нибудь виртуалку и попробовать склонировать её. Clonezilla не прощает людей, которые не читают документацию. Например, с первого раза Linux у меня не запустился. Пришлось пробовать два раза, перед тем как всё действительно нормально заработало.
В интернетах полно инструкций о том, как всё это делать. Можно, например, почитать вот это.
Для простоты я опишу вам, что такое процесс клонирования в Clonezilla.
- Мы загружаемся в live-linux дистрибутив, который тут же запускает TUI скрипт для клонирования дисков.
- Первым делом вас попросят выбрать способ клонирования. Просто переписать один диск на другой или диск в image.
- Если вы сохраняете жёсткий диск в image, вы должны будете выбрать папку, где эти image будут храниться.
- Если вы выбираете сетевое окружение, то вы сможете подключиться к сети и настроить сервер, с которого надо будет тянуть образы дисков.
- После всей этой предварительной настройки вы выбираете, в каком направлении клонировать и как клонировать.
- После чего уходите пить чай и грабить корованы, пока всё идёт своим путём.
Огромное количество админов, которым приходилось работать со стационарными компьютерами, делали себе чудо-флешку, в которой достаточно было выбрать ОС, и всё автоматически за 3 минуты устанавливалось на любой компьютер.
Более благородным и продвинутым вариантом был PXE-boot сервер, который запускал эту Clonezilla по сети и позволял устанавливать ОС по сети.
Сегодня мы попробуем другой подход. Мы создадим iso образ, который будет без каких-либо телодвижений со стороны пользователя устанавливать определённую систему на компьютер.
Итак, первым делом вам нужно будет освоиться с Clonezilla и склонировать хотя бы одну ОС руками. Вам всё равно придётся это сделать хотя бы один раз, перед тем как переходить на клонирование всего этого дела автоматически.
Если вы посмотрите внимательно, то перед самым последним вопросом, перед тем как приступить к клонированию, Clonezilla объявит вам зелёным текстом, что к клонированию готовы, сейчас будем прожигать диски. В следующий раз, если хочется такое повторить, то пользуйтесь вот такой-то командой.
ocs-sr -g auto -e1 auto -e2 -batch -p poweroff -nogui -r -j2 -k1 -scr -icds -p true restoredisk ubuntu-disk-20.04-2022.03.01 vda
Вот это пример того, как я клонирую свои линуксы. Вы можете обратиться к инструкции по ocs-sr, которую кто-то заботливо выложил вот здесь. Все эти мелкие и нечитабельные параметры описываются в документе.
Опять же, эти параметры отражают то, что вы выбрали в TUI интерфейсе перед началом клонирования.
Итак, у вас есть клон, и вы знаете, как его правильно запускать, используя скрипт ocs-sr
. Теперь мы можем приступать к созданию нашего собственного образа.
Варианта у нас два:
- Вам повезло, и вы можете настроить всё автоматически.
- Вам не повезло, и вам придётся менять содержимое
squashfs
, для того чтобы серьёзно перешить Clonezilla.
Я пройдусь по второму варианту, чтобы показать вам, что даже он не так-то и страшен.
Давайте скажем, что нам не хочется забивать в образ Clonezilla логины и пароли для доступа к расшаренным папкам. Поэтому я решил, что буду использовать SSH и авторизацию по ключам. Для этого мне надо будет загрузить приватные ключи в сам образ Clonezilla и заставить SSH сервер принимать эти ключи.
Начнём.
Первым делом установите все инструменты:
apt install -y xorriso p7zip-full fakeroot binutils isolinux squashfs-tools
После этого вам нужно будет распаковать ZIP архив с Clonezilla. А потом найти файл
live/filesystem.squashfs. Это и есть те самые бинарники и скрипты Live Linux, которые запускает Clonezilla.
Команда unsquashfs
распакует файловую систему в заданную директорию.
После этого можно создавать и записывать SSH ключи куда только захочется. Я оставил их в /opt/
, потому что директория ~/.ssh
для пользователя partimag (который является дефолтным пользователем с id 1000 в Live версии) ещё не создана.
Особое внимание уделяем тому, как и какие права мы раздаём на этот файл. Для того чтобы SSH смог подключиться, вы должны предоставить доступ к файлу для пользователя с id 1000, но ни в коем случае не пытаться делать chmod 777
.
Далее давайте подкрутим кое-какие гайки в самом ssh. Конечно же, при подключении к серверу нас будут спрашивать о том, хотим ли мы добавить этот сервер в список надёжных серверов. И нас не просто попросят нажать y
на клавиатуре, а ещё и напечатать yes
. Это никак не будет считаться автоматической установкой. Посему в /etc/ssh/ssh_config
мы добавляем следующие строчки:
StrictHostKeyChecking no
IdentityFile /opt/ssh/keys/id_rsa
User partimag
IdentitiesOnly yes
UserKnownHostsFile /dev/null
Тут всё понятно, мы просто объяснили ssh, как правильно подключиться к нашему хранилищу образов и при этом не задавать глупых вопросов.
Идём далее.
mksquashfs squashfs-root filesystem.squashfs -b 1024k -comp xz -Xbcj x86 -e boot
После того как мы закончили менять сам Live дистрибутив, мы можем его упаковать обратно с помощью этой команды. Внимательно относитесь ко всем параметрам в этом вызове. Моя копия squashfs была распакована в squashfs-root. А параметры были найдены в непроходимых дебрях документации. С другими параметрами Clonezilla не хотела грузиться.
Отлично. Теперь наш live образ понимает, что такое SSH, и в нём установлен сертификат. Это можно проверить, загрузившись в live и выбрав CMD в TUI. После чего вы просто попадаете в консоль.
ssh-copy-id 10.10.10.1
Все выполняется на ура и правильно копирует публичный ключ на удалённый сервер. Отлично. Теперь мы можем продолжать колдовство.
Все остальные настройки можно проводить без издевательств над squashfs, а просто производя изменения в /syslinux/isolinux.cfg
Давайте туда и заглянем.
(Кстати, если вы захотите сделать подобные изменения в USB версии дистрибутива, то вам придётся производить их в syslinux.cfg)
Итак, смотрим в большой и объёмный файл конфигурации.
Первым делом заменим timeout
. Нам не нужно ждать 30 секунд в меню загрузки. Одной — и то много.
timeout 10
Далее находим самую первую строку загрузки и серьёзно поработаем над ней.
append initrd=/live/initrd.img boot=live union=overlay username=user config components quiet noswap edd=on nomodeset enforcing=0 locales=en_US.UTF-8 keyboard-layouts=NONE ocs_prerun1="dhclient -v eth0" ocs_prerun2="sleep 2" ocs_prerun3="sshfs 10.10.10.1:/home/partimag /home/partimag" ocs_live_run="ocs-sr -g auto -e1 auto -e2 -batch -p poweroff -nogui -r -j2 -k1 -scr -icds -p true restoredisk ubuntu-disk-20.04-2022.03.01 vda" ocs_live_extra_param="" ocs_live_batch="yes" ocs_overwrite_postaction="poweroff-on-restoredisk" noeject vga=788 ip= net.ifnames=0 nosplash i915.blacklist=yes radeonhd.blacklist=yes nouveau.blacklist=yes vmwgfx.enable_fbdev=1
Давайте разберёмся, что тут происходит.
locales=en_US.UTF-8 keyboard-layouts=NONE
Этими двумя опциями мы говорим Clonezilla не париться по поводу раскладок клавиатуры и не спрашивать пользователя о них.
ocs_prerun1="dhclient -v eth0"
ocs_prerun2="sleep 2"
ocs_prerun3="sshfs 10.10.10.1:/home/partimag /home/partimag"
Следующими тремя опциями мы говорим, что нужно подключиться к dhcp на eth0, подождать пару секунд, а после смонтировать /home/partimag на удалённом сервере по SSH в live образе.
Вы можете добавить ещё ocs_prerun
команд, если, например, вам нужно будет смонтировать nfs
или samba
шару. Но вы учтите, я заморачивался с SSH, потому что мне не хотелось извращаться с запихиванием паролей в систему на этом этапе. Ведь большинство подобных систем не позволяют вводить пароль из консоли, и приходится заниматься чёрт знает чем.
Итак, результатом prerun
у нас становится смонтированный раздел с образами ОС.
Далее, собственно говоря, мы запускаем сам скрипт клонирования:
ocs_live_run="ocs-sr -g auto -e1 auto -e2 -batch -p poweroff -nogui -r -j2 -k1 -scr -icds -p true restoredisk ubuntu-disk-20.04-2022.03.01 vda"
(Как раз та команда, на которую я просил вас обратить внимание ранее.)
А после мы добавляем две очень полезные настройки.
ocs_live_batch="yes" ocs_overwrite_postaction="poweroff-on-restoredisk"
Первая подавляет запросы на ввод от пользователя. Учтите, что работает эта команда только с самим скриптом клонирования. Если mount
или sshfs
попросят вас ввести что-то из консоли, то тут ничего не поможет.
Последняя команда говорит, что систему после успешного клонирования надо выключить.
Давайте теперь соберём всё это воедино:
-as mkisofs -R -r -J -joliet-long -l -cache-inodes -iso-level 3 -isohybrid-mbr /usr/lib/ISOLINUX/isohdpfx.bin -partition_offset 16 -A 'Clonezilla live CD' -b syslinux/isolinux.bin -c syslinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -eltorito-alt-boot --efi-boot boot/grub/efi.img -isohybrid-gpt-basdat -isohybrid-apm-hfsplus ./ > ../clonezilla-altered.iso
Эта команда создаст новый образ iso со всеми параметрами, которые вы записали в ваш isolinux.cfg.
Теперь у вас в руках бомба.
Будьте аккуратны. Попытка загрузиться с этого диска на работающем компьютере приведёт к полной и безвозвратной потере всех данных. Так что не сохраняйте этот диск в общую папку и не разбрасывайте его направо и налево.
Проверяем.
Загружаем QEMU, создаём новую ОС. Говорим, что будет у нас Linux. Настраиваем размер жёсткого диска. В настройках выбираем “установить ОС из ISO” и указываем ISO, который мы только что создали.
А теперь — добро пожаловать в страну чудес. Всё произойдёт автоматически. Вы просто наблюдаете за тем, как Linux достаточно быстро появляется на новой виртуальной машине.
Изначальный размер диска составлял 25 гигабайт. После клонирования я получил image размером в 8 гигабайт. Установка по сети заняла 3 минуты от начала до конца. (Обычно Ubuntu ставится порядка пяти минут, потому что все пакеты обычно грузятся с репозиториев.)
Но самое главное — вся установка произошла полностью автоматически. Машина выключена, диск из машины изъят.
Теперь просто включаем виртуалку ещё раз и — ура! У вас в руках работающая система.
И вам не нужно было ничего, кроме хранилища файлов.
Естественно, минус этого способа заключается в том, что вам придётся создавать отдельный ISO для каждой системы, которую вы хотите установить. Но, в моём случае это даже упростило установку новых ОС.
Надеюсь это вам поможет.
НЛО прилетело и оставило здесь промокод для читателей нашего блога:
— 15% на все тарифы VDS (кроме тарифа Прогрев) — HABRFIRSTVDS.