Есть несколько способов скопировать ваш конфиг и настроить. Это зависит от того, насколько велики изменения, которые вы внесли. И если вы переходите на новую версию. Некоторые из методов полезны при обновлении между версиями, но будьте осторожны, так как они могут помешать правильной работе некоторых программ.
Метод 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