Как скопировать установку Ubuntu с одного ноутбука на другой

60

Я собираюсь изменить свою машину: с ноутбука с Ubuntu на другой ноутбук, где я собираюсь установить Ubuntu ...

Я вполне доволен существующей системой, и я боюсь, что придется перестраивать все, начиная с 0.

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

SoftTimur
источник
4
Разве вы не можете просто извлечь жесткий диск из старого ноутбука и установить его на новый ноутбук? Я изменил MB, MicroProcessor, RAM и HDD, просто сохранив загрузочный HDD и ожидал серьезной проблемы после загрузки, которая не произошла. Это может быть не очень красиво, но это работает как шарм.
Geppettvs D'Constanzo
Или просто создайте клон своей системы с помощью remastersys, UCK, Customizer ...
Uri Herrera
8
Я делал это несколько раз: подключите старый ноутбук к новому ноутбуку с помощью конвертера USB-SATA, загрузите новый ноутбук с компакт-диска Ubuntu Live, протрите новый диск с помощью gparted, скопируйте весь диск со старого на новый, измените размер раздела, загрузитесь, попробуйте печенье, перенастройте X11. Никогда не случится так просто с Windows!
Аквахерд
1
что это за переконфигурирование X11? Кроме того, копия является обычной простой копией-вставкой?
Вихрь разума

Ответы:

39

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

Метод 1: Свежая установка

Самый надежный и стабильный способ - это новая установка, а затем копирование конфигурации и переустановка всех ваших пакетов. Это также работает от старой версии до новой версии. Есть способы сделать это довольно быстро и автоматизировать большую часть процесса. Самая медленная часть - это загрузка всех пакетов, не включенных в установочный носитель. У меня было 8 образов дисков DVD, которые позволили мне установить намного быстрее, чем загрузка.

Я бы порекомендовал эту опцию, так как настройка и установка grub может сделать вашу систему непригодной для использования. Вы должны иметь твердое представление о личинке, чтобы использовать метод 2.

Перед выполнением новой установки (новый ноутбук) необходимо скопировать некоторую информацию из старой установки (старый ноутбук).

Ваша настройка или конфигурация

Все файлы, которые сохраняют ваши настройки, хранятся в двух местах. Первый и наиболее важный импорт - это каталог / home / [username]. Там могут быть сотни. [Package-config-dir] файлов и каталогов. Я собираюсь перечислить наиболее важные, но вы можете иметь больше и добавить больше, если хотите. Этот процесс может вызвать проблемы с пакетами, которые не работают правильно. Так что будьте осторожны, когда вы делаете это. Сделайте резервную копию вашей новой установки, прежде чем вставлять новые каталоги.

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

По умолчанию большинство программ создают. [Package-config-dir] при первом запуске. Если он не существует, он воссоздается. Вы не должны полагаться на это поведение, так как не все программы будут работать так.

  1. Используя Nautilus, перейдите в свой домашний каталог ( /home/[username])
  2. Выберите «Меню просмотра → Показать скрытые файлы» (или Ctrl+ H)

  3. Теперь вы должны увидеть все скрытые .*каталоги. Возможно, вам придется сделать это как root. просто запустите nautilus от имени пользователя root из командной строки.

    Выберите следующие каталоги и скопируйте их в отдельный каталог.

    /home/aaron/.config  
    /home/aaron/.gconf  
    /home/aaron/.gnome2  
    /home/aaron/.gnome2_private  
    /home/aaron/.local  
    /home/aaron/.mozilla  
    

    Я внес изменения в эти файлы. Так что я их тоже копирую.

    /home/aaron/.bash_aliases 
    /home/aaron/.bashrc 
    /home/aaron/.vimrc
    

    Может быть много других пакетов, которые вы используете, которые не хранят конфигурацию в этих каталогах. Скопируйте их, но будьте осторожны, если программы не работают должным образом. Вам может понадобиться восстановить .*файл или каталог. Вы можете сделать это, просто удалив файл или каталог, но вы должны были сделать резервную копию, прежде чем копировать каталоги.

  4. В зависимости от того, как вы используете вашу систему. Возможно, вы внесли изменения в некоторые файлы в /etcкаталоге. Если у вас есть, вы должны скопировать их. Я создаю собственный файл smb.conf для работы, и у меня есть много виртуальных хостов Apache, которые я использую для разработки, поэтому я также копирую их. Вы можете скопировать весь /etcкаталог, но это может создать проблемы, если ваш компьютер не имеет точно такой же настройки с точки зрения аппаратного обеспечения. Который не будет переходить с одной машины на другую.

    /etc/samba/smb.conf
    /etc/hosts
    /etc/apache2 # the whole directory.
    

    Скопируйте файлы конфигурации до или после установки нового программного обеспечения. Не делайте этого, пока идет установка программного пакета. Вы можете сломать установку.

Ваши установленные пакеты

Используя Synaptic, вы можете легко экспортировать все установленные пакеты, используя опцию меню экспортных меток.

  1. Меню Файл → Сохранить маркировку как
  2. Отметьте «Сохранить полное состояние, а не только изменения»
  3. Выберите имя и каталог для сохранения этого файла (вам, вероятно, придется поместить его на флэш-диск.)

Затем вы можете перезагрузить все установленные пакеты, выполнив в обратном порядке процесс:

  1. Меню Файл → Читать маркировку
  2. Выберите файл, который вы создали на первом шаге.

Это, вероятно, займет больше всего времени. Если вы загрузите много пакетов (1Gb пакетов), это займет несколько часов.

Способ 2. Использование образов дисков

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

Как скопировать установку Ubuntu с одного ноутбука на другой

nelaaro
источник
Что если последний шаг восстановления установленных пакетов завершится неудачно с этими ошибками ?
Крис
30

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

Метод 1: Свежая установка

Опубликовано отдельно. Как скопировать установку Ubuntu с одного ноутбука на другой

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

Способ 2. Использование образов дисков

Это может быть самый быстрый способ передвижения. Как скопировать разделы жесткого диска, так как образы дисков довольно быстрые. Если вы не хотите переустанавливать каждую часть программного обеспечения. Хотя создание, изменение размера и перемещение образов дисков может занять довольно много времени. Я бы порекомендовал это, только если вы не собираетесь обновлять Ubuntu до новой версии. Убедитесь, что вы понимаете разделы диска и grub. Большая часть того, что я делаю, будет использовать командную строку. Вы должны убедиться, что понимаете, что делает команда, прежде чем запускать ее. Я не несу ответственности за потерю данных в результате выполнения следующих инструкций.

Шаг первый создайте образ диска вашей установки.

Во-первых, нам нужно получить некоторую информацию о настройке. Использование parted -lиmount

$ sudo parted -l
Model: ATA ST9320423AS (scsi)
Disk /dev/sda: 320GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type      File system     Flags
 1      32.3kB  197MB   197MB   primary   ext4            boot
 2      197MB   10.2GB  10.0GB  primary   linux-swap(v1)
 3      10.2GB  50.2GB  40.0GB  primary   ext4
 4      50.2GB  299GB   249GB   extended
 5      50.2GB  54.4GB  4195MB  logical   ext4
 6      54.4GB  65.9GB  11.5GB  logical   ext4
 7      65.9GB  299GB   233GB   logical   ext4

$ mount
/dev/sda5 on / type ext4 (rw,errors=remount-ro)
/dev/sda7 on /home type ext4 (rw)
/dev/sda1 on /boot type ext4 (rw)
/dev/sda6 on /usr type ext4 (rw)
# I took out the entries that were not need for these instructions

$ cat /etc/fstab 
proc            /proc           proc    nodev,noexec,nosuid 0       0
UUID=ddc8c237-e8ac-4038-a0ed-f7c866d6603b /               ext4    errors=remount-ro 0    1
UUID=aa9881d1-5cc1-4e94-8cd7-8125e18ece2f /boot           ext4    defaults        0      2
UUID=31a6fde1-6b96-4cc3-acfd-88573f52be36 /home           ext4    defaults        0      2
UUID=073146a7-5668-4728-9a6f-1a599f358a8d /usr            ext4    defaults        0      2
UUID=540b96b6-b3c3-4092-b4ad-6b33bcbbe16d none            swap    sw              0      0

Ваша установка может выглядеть иначе. У меня есть отдельный раздел для /home, root ( /) и /usr.

Создание образов дисков

Я использую ddкак это просто и быстро. Убедитесь, что вы прочитали и поняли, как это работает. Вам понадобится пустой раздел, который больше, чем весь размер раздела, который вы копируете. Это может занять довольно много времени. Создание изменения размера и копирование разделов может занять несколько часов в зависимости от их размера. Вам нужно будет заменить внешний диск частью на носитель, который вы будете использовать для этого процесса.

sudo dd if=/dev/sda5 of=/media/externaldrive/sda5-root.img
sudo dd if=/dev/sda7 of=/media/externaldrive/sda7-home.img
sudo dd if=/dev/sda6 of=/media/externaldrive/sda6-usr.img

Вот реальный пример выхода после запуска этого на моей установке.

$ sudo dd if=/dev/sda5 of=/media/home0/sda5-root.img
8193087+0 records in
8193087+0 records out
4194860544 bytes (4.2 GB) copied, 55.3159 s, 75.8 MB/s

Мы можем уменьшить размер этого образа диска, используя инструменты, предоставляемые Linux.

$ sudo resize2fs -P sda5-root.img
 resize2fs 1.41.11 (14-Mar-2010)
 Estimated minimum size of the filesystem: 605972
$ ls -sh ./sda5-root.img
 4.0G ./sda5-root.img
$ sudo resize2fs -M sda5-root.img
 resize2fs 1.41.11 (14-Mar-2010)
 Please run 'e2fsck -f sda5-root.img' first.
$ sudo e2fsck -fy ./sda5-root.img # y makes it run without asking thousands of questions.

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

$ sudo resize2fs -M sda5-root.img
 resize2fs 1.41.11 (14-Mar-2010)
 Resizing the filesystem on sda5-root.img to 605505 (4k) blocks.
 Resizing the filesystem on sda5-root.img to 605505 (4k) blocks.
 The filesystem on sda5-root.img is now 605505 blocks long.
$ ls -sh ./sda5-root.img
 2.4G ./sda5-root.img

Это по существу удаляет все свободное пространство в разделе. Так что для более крупного раздела это может быть больше 50% размера диска. Гораздо быстрее скопировать файл меньшего размера

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

Теперь вы можете скопировать эти образы дисков в разделы на новом компьютере. Вы должны были уже настроить эти разделы. Использование живого диска и gpartedэто быстрый и простой способ сделать это. Убедитесь, что у вас есть все разделы, необходимые вашей системе. Вы можете сделать эти разделы больше, чем у вас в предыдущей системе. Когда мы копируем образы дисков в них, мы изменяем размеры файловой системы, и она занимает все свободное место в разделе.

Теперь шаг второй: копирование образов дисков на новый диск и в новые разделы.

sudo dd if=/media/exteranldrive/sda5-root.img of=/dev/sda3 # replace the [sda3] with your partition.  

На моей машине это выглядит так

$ sudo dd if=./sda5-root.img of=/dev/sdb6 
4844040+0 records in  
4844040+0 records out  
2480148480 bytes (2.5 GB) copied, 87.4921 s, 28.3 MB/s  

$ sudo fsck.ext4 -fy /dev/sdb6  
e2fsck 1.41.11 (14-Mar-2010)  
Pass 1: Checking inodes, blocks, and sizes  
Pass 2: Checking directory structure  
Pass 3: Checking directory connectivity  
Pass 4: Checking reference counts  
Pass 5: Checking group summary information  
root1: 50470/504000 files (1.4% non-contiguous), 616736/2060328 blocks  

Теперь нам нужно отредактировать файл fstab, чтобы он указывал на правильные устройства. Если вы только что скопировали новый раздел на новый диск, файл fstab находится на этом разделе, поэтому вам необходимо смонтировать его для доступа к файлу. Вам также нужно будет смонтировать корневой раздел, чтобы установить grub, если у вас нет отдельного загрузочного раздела.

$ sudo mkdir /mnt/tmp  
mount /dev/sdb6 /mnt/tmp  
$ sudo blkid  # to see what the disk uuid is   
/dev/sda5: LABEL="root1" UUID="ddc8c237-e8ac-4038-a0ed-f7c866d6603b" TYPE="ext4"  
/dev/sdb6: LABEL="root1" UUID="ddc8c237-e8ac-4038-a0ed-f7c866d6603b" TYPE="ext4"  
$ gksu gedit /mnt/tmp/etc/fstab  
replace the UUID with the UUID of your partition  
UUID=ddc8c237-e8ac-4038-a0ed-f7c866d6603b /               ext4    errors=remount-ro 0  1

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

Отредактируйте fstab и убедитесь, что uuid соответствует разделам, которые вы установили для root и home, и любым другим разделам, которые вы настроили.

Последний шаг - установить grub на ваш новый диск.

sudo chroot /mnt/tmp # your root partition.   
grub-install /dev/XXX  

В моем случае:

grub-install /dev/sdb
update-grub

Пожалуйста, прочитайте эти инструкции перед началом. Бесполезно иметь все данные на новом ноутбуке и не загружать его.

https://help.ubuntu.com/community/Grub2
https://help.ubuntu.com/community/RecoveringUbuntuAfterInstallWindows

nelaaro
источник
У меня были сомнения, если на целевом разделе будет больше места, чем на образе диска, dd позволит нам использовать дополнительное пространство или будет потрачено впустую?
Нихил
@nikhil. Ни один дд не будет использовать дополнительное место. Но это не предназначено для. Он не понимает файловые системы. fsck.ext4 с другой стороны понимает разделы и файловые системы. Частью проверки файловой системы является проверка размера раздела и проверка соответствия файловой системы размеру раздела.
nelaaro
8

Попробуйте клонезиллу. Clonezilla - это инструмент для создания образа / клонирования дисков. Вы можете использовать этот инструмент для клонирования вашего Ububtu в новую систему.

клонезилла загрузочное меню

Clonezilla клонирует ваши настройки, а также все разделы.

Доступны две версии клонезиллы. Clonezilla live подходит для одноразового использования.

Для получения дополнительной информации перейдите по этой ссылке .

Колаппан Н
источник
1
Хороший вариант. Помните, что восстановление на отличающемся оборудовании может быть не таким простым. Я думаю, что все будет в порядке, если вы восстановите раздел того же размера. Вы также можете попробовать PING (Partition-Image-Is-Not-Ghost). Это еще один инструмент.
Вихрь разума