如何在不丢失设置的情况下从x86升级到x64?


26

有没有简单的方法可以将系统从x86升级到x64,而又不会丢失设置和重新分区等?


这是相同的问题,但不应将其标记为重复,因为这里也有其他答案:是否可以从32位安装“升级”到64位安装?
rubo77 2014年

本指南实际上为我工作,尽管在此过程中需要花很多时间进行摆弄,并且您确实需要成为Ubuntu / Debian专家。许多软件包损坏,您必须手动找出解决方法。不为微弱的心脏,而对大多数人来说(如其他建议在这里),你应该做一个干净的安装和恢复您的配置
大卫·弗雷泽

Answers:


19

您可以仅在现有i386安装的顶部执行x86-64安装。无需重新格式化或重新分区-Ubuntu安装程序现在支持将/home和(大部分)/etc(以及其他数据目录)的内容保留几个版本。

那将带您到那里。您将保留所有配置,但不会安装相同的软件。

为此,此答案中的指南应起作用:

  1. 在安装x86-64版本之前,请通过dpkg --get-selections > ~/installed-software在终端中运行转储当前安装的软件包的列表。
  2. 安装之后,请先运行,sudo dpkg --set-selections < ~/installed-software然后还原,以恢复已安装软件包的列表sudo apt-get -f install。可能会有些软件包无法安装,因为有些i386软件包没有x86-64对应版本libc6-686-686优化的libc是常见的示例。

您自己尝试过吗?
延长

我没有尝试在i386版本上安装amd64版本,没有。我已经安装了现有安装,没有重新格式化;这样可行。
RAOF 2010年

从理论上讲,当它们位于32位和64位时,可能还会有一些程序以不同的方式存储数据/缓存/配置,但是我认为大多数程序都应该是安全的……
JanC 2010年

是的 Windows程序倾向于将内存中的内容转储到磁盘上,从而导致此问题。通常在编写Linux程序时会考虑更多的可移植性。
RAOF

1
您可以使用aptitude做同样的事情,也可以排除作为依赖项自动安装的软件包。(您可能希望让他们重新自动选择;-) 资质搜索“?和(?安装?不是(?自动))” -F%P>〜/安装的软件 然后在新系统上安装与他们须藤aptitude install $(cat〜/ installed-software)
杰西(Jesse the Wind Wanderer

7

不,嗯...不是值得的。

有一些指南提供了从32bit到64bit的免责声明模糊的途径,但是当我说我对Linux进行修补已有多年的经验时,请相信我,我只是不想接受它。这是一个巨大的黑客,故意破坏东西来欺骗32位系统以采用64位软件包。弄错一件事,您就中断了安装过程……这似乎需要很长时间。

事实是,它只是变得更轻松备份您不能替换的东西(/etc//home/,的部分/var)到另一个驱动器,弹出在64位的live CD / USB并重新安装。上次我从USB安装到SSD上花费了12分钟。

重新安装后,请创建一个新用户并复制您想要恢复的配置文件的任何内容。您可以将其全部转回,也可以花一点时间进行老式的清理。


好吧,如果您使用的是Apache /etc/home则需要备份更多。
内森·奥斯曼

6

应该很简单。

  1. 备份您的/etc/home文件夹(我拥有/home自己的分区,如果您有任何自定义文件夹,您可能需要更多文件夹...或者/var/www如果您有Apache,如果有,则可能需要备份数据库)
  2. 运行dpkg --get-selections > installed-software以保存已安装软件的列表,备份文件installed-software
  3. 安装x64版本,创建相同的用户。
  4. 恢复/etc and/ home folders and the已安装的软件文件。
  5. 运行dpkg --set-selections < installed-software然后运行dselect以安装以前安装的软件。

我最近手动切换到64b。 dpkg --get-selections > installed-software由于:i386某些软件包名称上的体系结构,因此对我不起作用。相反,我运行了以下脚本:cat installed-software | cut -f1 | sed 's/:i386//g' | while read P; do sudo apt-get install $P; done
philcolbourn 16'9

3

我不认为您可以升级到64位版本的Ubuntu,而必须重新格式化分区并从x64 Live CD安装64位版本。


-1

詹姆斯是对的。

由于x86和x64是不同的体系结构,因此您不能不擦除根分区并重新安装系统而直接从一种升级到另一种。

您可以(并且必须)做的一件事是在单独的分区中设置用于存储设置和文件的目录(通常是/ home /您的用户名),因为这使您可以格式化系统而不会丢失重要设置,例如电子邮件帐户的Evolution / Thunderbird配置或任何其他类型的文件。

如果对/ usr / bin执行相同的操作(例如),那么它还将以系统格式备份此目录下的所有文件。


1
请澄清最后一句话。
奥利(Oli)
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.