这就是我的情况:
我已经在 250GB 驱动器上安装了 Ubuntu Server 12.04 一段时间了,我花了一些时间用一些程序对其进行正确配置。我想将数据/配置迁移到更大的驱动器,但dd
我没有像普通人一样使用或 Clonezilla,而是在新驱动器上进行了全新安装 - 我想更改主管理员用户名,安装时不使用主文件夹加密(我手动从旧驱动器中删除了加密),并停止对单驱动器机器使用 LVM。
我现在的情况是这样的:我在新磁盘上安装了 Ubuntu Server,旧磁盘的主分区目前安装在/mnt/old_drive
,所以我可以访问所有文件和内容。我还有一个在旧机器上安装的所有软件包的转储列表。
所以我的问题是:有多少东西我可以直接复制过去,然后重启并运行? 只是/etc
? 我有一些东西,比如 MySQL 和 PostgreSQL DB,我不确定是否可以直接用 复制过去cp
。
或者我最好安装每个包并单独配置/迁移它们?我认为我在新安装上更改管理员用户名这一事实可能会增加麻烦(或不会)。
编辑:我也知道我需要编辑fstab
而不是复制它。
答案1
如果您愿意学习,请尝试备份当前的新驱动器/etc
,然后将文件从/etc
旧驱动器逐步复制到新驱动器。只要您不更改软件包的版本,大多数软件都可以很好地处理这个问题。但是,有一些文件无法正常工作,/etc/fstab
这是一个突出的例子。还要小心处理文件/etc/udev
(因为这很可能包含硬件细节,如网络硬件的 MAC 地址等)
然而,如果您想安全起见,就不要复制文件并手动重做更改。
当然,您也可以使用 kdiff3 或类似的工具来比较差异并直观地迁移设置。
我个人认为,您更改管理员用户名(我猜您指的是主要使用计算机的用户)确实可能会造成一些麻烦,特别是对于 SQL DB,因为它们往往将访问权限存储在 DB 中的某个位置,但是这可能可以通过自动搜索和替换 SQL 语句来解决。另外,grep -R
使用您的旧用户名在旧/etc
目录中运行,看看除了通常的(passwd、shadow、groups)之外是否还会得到任何其他结果,然后进行改进 ;-)