Лучший способ клонировать установку (копирование на идентичное оборудование)

Вроде как этот вопрос , но немного отличается (я думаю) тем, что у меня есть 6 идентичных машин Acer Aspire Revo R3610. Один (почти) настроен под мои требования - когда я закончу его готовить, я бы хотел сделать остальные 5 машин абсолютно одинаковыми. Я очень новичок в Ubuntu, какой самый простой (самый простой) способ сделать это?

Машины будут жить в разных сетях, если в противном случае это может быть проблемой (например, с Windows вы можете клонировать диски но затем вы должны внести изменения в реестр, если они будут работать в той же сети и т. д.). Аппаратура на всех 6 машинах, я подчеркиваю, одинакова!

Как эффективно клонировать один исходный образ на эти идентичные машины?

Пожалуйста, ограничьте одно программное обеспечение / решение на ответить

55
задан 12 April 2017 в 10:23

12 ответов

Clonezilla звучит так, как будто он соответствует вашим потребностям

31
ответ дан 12 April 2017 в 10:23

Partimage

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

2
ответ дан 12 April 2017 в 10:23

Самый простой способ сделать это - запустить установку Ubuntu с пустыми костями на жесткий диск, установить VirtualBox и настроить виртуальную машину Ubuntu. Запустите виртуальную машину и настройте эту установку так, как вы хотите, со всеми колокольчиками и свистками, которые вам нужны. Делайте всю работу и игры на виртуальном компьютере.

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

На данный момент на этом внешнем диске есть и Windows 7, и виртуальная машина Ubuntu 12. Все системные обновления, программы, личные файлы, фотографии, что угодно, сохраняются на этих виртуальных машинах. Резервное копирование такого типа очень быстро, так как один большой файл образа диска будет передаваться намного быстрее, чем куча отдельных файлов. Так как VirtualBox постоянно поддерживает файлы в этом формате, виртуальная машина всегда настроена на резервное копирование.

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

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

И нет, я не работаю на VirtualBox.

3
ответ дан 12 April 2017 в 10:23

G4L

Ghost for Linux

Ghost for Linux - это инструмент для создания образов жесткого диска и разделов и клонирования, похожий на Norton Ghost(c) и (tm) от Symantec. По желанию созданные образы сжимаются и могут быть сохранены на локальном жестком диске или переданы на анонимный FTP-сервер. Диск может быть клонирован с помощью функции Click'n'Clone. g4l поддерживает разделение файлов, если локальная файловая система не поддерживает запись файлов объемом > 2 ГБ. Входящее в комплект ядро поддерживает диски ATA, serial-ATA и SCSI. Поддерживаются общие сетевые карты. Он упакован в виде загрузочного образа CD с графическим интерфейсом ncurses для простоты использования.

1
ответ дан 12 April 2017 в 10:23

Fsarchiver

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

Я использовал его, и это очень просто. Например, для клонирования раздела скажем /dev/sda1 вы используете команду вида this

fsarchiver -A -j 2 -z 1 savefs /media/anwar/USB_Drive/myrootpartition /dev/sda1

Опция -A позволяет вам скопировать раздел, даже если он используется! Отличная возможность!

-j 2 говорит об использовании 2-х процессорных ядер для сжатия. Полезно для многоядерного процессора и если вы используете компрессию

-z 1 устанавливает уровень сжатия.

Для восстановления файловой системы, которую вы использовали

fsarchiver restfs /data/myrootpartition.fsa id=0,dest=/dev/sda2

ID=0 говорит, что вы восстанавливаете первую файловую систему из архива (даже если вы не сохранили несколько разделов в одном архиве, вы должны это указать). И dest=/dev/sda2 устанавливает место назначения восстановления.

1
ответ дан 12 April 2017 в 10:23

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

В остальном, я бы сказал, что netboot, вероятно, лучший вариант для вас. Создайте главный сервер, заставьте его делать то, что вы хотите, а затем загрузите и установите с него все остальные машины. Автоматическое выполнение скриптов (ala run-once) не должно быть слишком сложным. Вы делаете все второстепенные вещи через кикстарт.

Больше (хотя это немного старовато): https://help.ubuntu.com/community/PXEInstallServer

Правка: Есть приложение с именем system-config-kickstart, которое должно помочь сделать генерацию кикстарт-файла намного проще. YMMV.

alt text

-1
ответ дан 12 April 2017 в 10:23

Другой вариант для мас-стендов - Ubuntu Landscape/private cloud подход, при котором вы (в основном) предоставляете серверы динамически на основе пула аппаратного обеспечения. Умные вещи.

-1
ответ дан 12 April 2017 в 10:23

dd

Низкоуровневая копия с помощью dd сделает трюк!

Следите за конфликтующими IP-адресами и именами хостов.

В основном, поместите диск-источник и диск-получатель на одну машину, загрузитесь на живой диск. И запустите что-нибудь вроде следующего, где /dev/sda - источник, а /dev/sdb - место назначения:

dd if=/dev/sda=/dev/sdb bs=4096

Я запоминаю операнды по:

if -> входной файл

из -> выходной файл

bs -> размер блока (сколько байт читать одновременно)

17
ответ дан 12 April 2017 в 10:23

Я часто это делаю, используя rsync.

Сначала вы можете запустить rsync, чтобы загрузить все данные на внешний жесткий диск (ваш внешний жесткий диск должен быть в ext4 - я использую это, поэтому знаю, что это работает): Я предполагаю, что у вас есть два раздела: / dev / sda1 (root) и / dev / sda2 (swap).

Запустите на исходном компьютере:

sudo rsync -avuorpESHAX /* /your/hard/drive

После копирования данных загрузите следующий компьютер с USB-накопителя и Отформатируйте внутренний жесткий диск как исходный.

Подключите внешний диск к / mnt и скопируйте UUID всех разделов. Отредактируйте UUID разделов нового компьютера и поместите те же UUID, которые вы скопировали из исходных данных (они находятся в / mnt / etc / fstab ).

Завершите свопинг:

sudo swapoff -a

Создайте новый своп, используя исходный UUID, скопированный из / mnt / etc / fstab :

sudo mkswap /dev/sda2 -U original-UUID

(Я полагаю, ваш своп находится в / dev / sda2 )

Далее , измените UUID / dev / sda1 : (раздел должен быть размонтирован, чтобы изменить UUID)

sudo umount /mnt
sudo tune2fs /dev/sda1 -U old-UUID

Сделано это, смонтировать целевой раздел:

sudo mount /dev/sda1 /mnt

Обратить rsync к месту назначения:

sudo rsync -avuorpESHAX /media/your-backup /mnt

Переустановите личинку:

sudo grub-install --root-directory /mnt /dev/sda

Это сработает. Не забудьте отредактировать / etc / hostname и / etc / hosts , чтобы изменить имя хоста для каждой машины, чтобы избежать сетевых конфликтов.

0
ответ дан 12 April 2017 в 10:23

Создайте образ, используя Remastersys, перенесите его на флешку, используя утилиту Startup Disk Creator, и установите на другую систему.

3
ответ дан 12 April 2017 в 10:23

Я использую ddrescue именно для этой задачи. Работает безупречно. Супер просто.

Подробности см. В этой ветке на technibble

2
ответ дан 12 April 2017 в 10:23

Я бы получил один компьютер так, как вы хотите, и установил бы пакет openssh-server. Сгенерируйте пару ключей ssh с помощью ssh-keygen -t rsa. Добавить открытый ключ в /root/.ssh/authorized_keys2. Затем я бы загрузил новые компьютеры с живым cd и подключил бы usb-флешку с помощью ssh-ключа. Используйте gparted для создания нового раздела. Затем смонтируйте новый раздел и запустите что-нибудь вроде sudo rsync -avzx -e "ssh -i /media/disk/path/to/privatekey" --exclude=".gvfs" root@:/ /path/to/new/partition/

Используйте команду blkid, чтобы найти UUID только что созданной вами файловой системы. Отредактируйте /path/to/new/partition/etc/fstab, чтобы отразить новый UUID (и тип файловой системы, если вы используете другую файловую систему.)

Тогда я буду следовать инструкциям на https://help.ubuntu.com/community/Grub2/Installing#via_ChRoot о том, как устанавливать из chroot.

Упрощенная версия этой страницы (которая не учитывает lvm, программный рейд, или bcache, или отдельный /boot, как это делает вики-страница):

Установите критические виртуальные файловые системы. Выполните одну единственную команду:

for i in /dev /dev/pts /proc /sys /run; do sudo mount -B $i /mnt$i; done

Chroot в ваше обычное системное устройство:

sudo chroot /mnt

Переустановите GRUB 2 (замените нужное устройство на sda, sdb и т.д.). Не указывайте номер раздела):

grub-install /dev/sdX

Восстановите файл меню GRUB 2 (grub.cfg)

update-grub

Выход из chroot: CTRL-D на клавиатуре

Кстати, это тоже хорошо работает для резервного копирования. В Ubuntu, в отличие от Windows, похоже, нет проблем с пересадкой на другое оборудование. Я поместил жесткие диски с одного компьютера на другой, и он отлично справился, и я скопировал установки на разное оборудование, и он отлично справился.

2
ответ дан 12 April 2017 в 10:23

Другие вопросы по тегам:

Похожие вопросы: