Всякий раз, когда я получаю новый ноутбук, мне приходится испытывать трудности, связанные с выполнением sudo apt-get install xxx
всех вещей, к которым я привык, то есть мне приходится заново создавать всю среду.
Есть ли простой способ перехода с одного ноутбука на другой, учитывая, что я бы использовал Ubuntu на обоих из них? (Кроме того, чтобы быть на ВМ все время? Я также пытался физически VM, используя Vmware, но это не было гладким опытом)
2 ответа
Да, вы можете, в некоторой степени
это предполагает, что у вас есть те же файлы /etc/apt/sources.list
и /etc/apt/sources.list.d/
которые предназначены для обычных репозиториев, а во вторых, в Ubuntu добавляются PPA. Скопируйте это из вашей исходной системы в вашу целевую систему и выполните команду обновления центра программного обеспечения apt-get/aptitude/ubuntu - см. Этот ответ в AU для более подробной информации.
Я адаптировал инструкции для передачи списка пакетов от Ubuntugeek.Вы можете вывести список пакетов из исходной системы в текстовый файл с именем instalpackages с помощью
sudo dpkg --get-selections | grep '[[:space:]]install$='| awk '{print $1}' > installedpackages
и скопируйте установочные пакеты в целевую систему, а затем переустановите их с помощью установленных пакетов cat installedpackages | xargs sudo aptitude install
в папку, в которой установлен пакет
Копирование в /etc / может быть хорошей идеей и для основных конфигурационных файлов.
И, конечно, скопируйте /home/username
, чтобы получить копию рабочей среды, такой как домашние папки и рабочий стол.
Вывод и переустановка списка пакетов взяты с сайта ubuntugeek.com
Это должно охватывать большую часть файлов при установке ubuntu на настольном компьютере. Там могут быть некоторые конкретные вещи, которые это может упустить (apache virtualhosts приходит на ум), но настройки, относящиеся к пакетам и рабочему столу, должны быть исключены.
Вы можете скопировать целые файловые системы из одного раздела в другой. Например, используя комбинацию dd
и nc
.
root@old# dd if=/dev/sda1 bs=4M | nc -l -p 4444
root@new# nc old 4444 | dd of=/dev/sda1 bs=4M
Это предполагает, что вы используете работающую систему, например, с установочного компакт-диска, в новой системе. И что у вас есть имя хоста или IP-адрес для старой системы, поэтому вы можете подключиться к нему через TCP. предполагается, что sda1
является разделом файловой системы linux; при необходимости измените, если вы используете другой раздел или несколько разделов. Если вы можете подключить оба диска к одной и той же машине, вы можете использовать dd
без nc
.
После копирования файловой системы, как указано выше, вы можете
- Отрегулируйте размер файловой системы, используя
resize2fs
если новый раздел больше. - Смонтируйте где-нибудь файловую систему и выполните в ней
chroot
для установки загрузчика. Возможно, вам придетсяmount --bind
дополнительных файловых систем, таких как/dev
внутри работающей системы. - Снова внутри chroot, отрегулируйте набор установленных драйверов в соответствии с новым оборудованием.
Я перенес свои файловые системы на несколько разных аппаратных конфигураций, включая несколько жестких дисков. Переход с 32-битной на 64-битную версию был более сложным, но с Gentoo я даже справился с этим, не переустанавливая свою систему с нуля.