问题描述
我使用 ubuntu
来处理日常工作。现在我买了一台新笔记本电脑,我想将我的整个系统(程序、包、数据、设置等)迁移到新机器上。
我知道我可以将我的主文件夹复制到新机器上,我将获得(几乎)所有数据和设置。但是有没有一种安全的方法来复制整个系统?或者这是一个坏主意?
最佳方案
先决条件:
两台机器上都安装了相同版本的 Ubuntu。架构(32/64 位)可以不同。
第 1 步:存储已安装软件包的列表
在源机器上运行以下命令,将安装的软件包名称存储在 ~/pkglist 中:
sudo dpkg --get-selections | sed "s/.*deinstall//" | sed "s/install$//g" > ~/pkglist
第 2 步:传输您的配置
使用 scp 或 rsync 甚至闪存驱动器来传输您的主目录 (~/, ~/.)、源列表 (/etc/apt/sources.list) 和您自定义或安装的任何其他文件(如 /下的 apache 配置)等或 /opt 上的软件)从源机器到目标机器。
第 3 步:安装软件包
在目标机器上的故障安全终端会话中运行以下命令来安装您的软件包:
sudo aptitude update && cat pkglist | xargs sudo aptitude install -y
摘自:
http://eggsonbread.com/2010/01/28/move-ubuntu-to-another-computer-in-3-simple-steps/
次佳方案
首先,How to list all installed packages 这个问题包括导出(然后安装)你的确切软件包集。
正如您所指出的,您的大部分配置都将在 /home 中。
话虽如此,每次我这样做时,我都可以说是从头开始。我将安装 ubuntu 并手动添加我知道我使用的软件包,一次配置一个。旧计算机上安装的软件包列表是查找不同部分的良好起点。一旦东西或多或少地设置好,我就会从我的旧计算机中只复制数据文件(而不是配置文件)。这确实需要更多时间来完成,但切换到最新版本是值得的。 (我的旧台式机运行 10.04,我的新台式机目前运行 11.10,虽然我计划将它更新到 12.04,当它已经存在了一个月以消除任何剩余的粗糙边)但这个计划适用于如果你对很少有事情与以前略有不同。如果您需要完全相同的东西,请继续执行上述操作。
第三种方案
我正在寻找一种更简单的方法,我找到了 Aptik :
Aptik is a tool for migrating settings and data from one Linux installation to another. It can be used while re-installing the operating system, and when moving to next release of a Linux distribution.
我只是用它从旧笔记本电脑迁移到新笔记本电脑,两者都运行 Ubuntu 18.04。似乎工作得很好。