问题描述
按照标题,我希望知道,在成功的32位设置和随后的软件安装之后,是否可以更新为64位版本。
我知道如何分区(实际上其中一个解决方案是将/,/etc,/home,/var /www和/opt设置为单独的分区),我知道干净的安装比脏的更好,但我想知道如何/如何做到这一点。
最佳解决方法
你会发现一个干净的安装比其他任何不寻常的,模糊的,不受支持的方法都要轻松得多。
你提出的将配置文件,主目录等进行分区的建议可能是最好的想法,并且可以使用install the same packages on a clean install as on another install。
另一方面,你所要求的是可能的,Debian based systems有一个小指南,但记住“这真的是professional-level系统管理员”,“这个程序在各方面都是坏主意,如果它吃了你的长子,请别来哭泣我……“(好运)
次佳解决方法
一旦多种规范实施后,这可能是一个更合理的事情。 https://wiki.ubuntu.com/MultiarchSpec – 目前推迟到11.04,但请记住它现在已被推迟约6次发布。这就是说,实际进展是在10.10,所以也许这次会发生。
在此之前,不要打扰。备份您的数据,如果需要重新分区,然后重新安装。
第三种解决方法
不,你不能从32位升级到64位。它必须是一个干净的(新鲜的)安装
在确定您的系统能够支持64位操作系统之前,请检查Ubuntu 64的最低要求。您可以这样做Here
术语32位和64位是指计算机的CPU处理信息的方式。 64位版本比32位系统处理大量的RAM要好得多。如果您运行的是32位版本的Ubuntu,则只能升级到另一个32位版本的Ubuntu。同样,如果您运行的是64位版本的Ubuntu,则只能升级到另一个64位版本的Ubuntu。
如果你想从32位Ubuntu转移到64位Ubuntu,你需要备份你的文件,做一个干净的64位Ubuntu安装。
第四种方法
我会抛出死亡,因为这个线程是“将Ubuntu升级到64位”的最佳结果之一,所选的答案虽然是明智的选择,但并不是完整的故事。
实际上,可以将Ubuntu从32位升级到64位。你能行的。
我刚刚完成了这样的升级。
也就是说,”can”和”should”这两个字看起来并不相同,升级和全新安装也是如此。你可以做到吗?是。你应该这样做吗? Eeeeeh …
从32位升级到64位而无需对系统进行分解,这让我在一个星期内获得了更好的效果。包括在aptitude中手动修复600多个破损的包,因为自动解析器开始循环,显然是由于PERL:i386(所安装的包需要)与PERL:amd64(您尝试安装的包所要求的)不兼容。
这是在我手动安装了一堆软件包(包括正确版本的PERL)以修复apt螺丝钉之后:您看到,apt-get -f install
(需要获得mostly-working 64位系统)将卸载PERL32以安装PERL64。然后快乐地尝试删除1234个其他软件包,然后再重新安装PERL。不用说,这不是一个好主意,当apt系统的很大一部分(很多其他东西,实际上)依赖于可用的PERL。
重新安装完全是从控制台(当然是aptitude FTW)执行的,因为控制台几乎只需要一个工作bash(并且对aptitude有工作诅咒,但如果你尝试这样做,诅咒将会充足,你可以在其上下注),而X则需要……在您的系统上执行心脏直视手术时,请信任它以继续工作。
所有这一切,下面的Debian文章解释了如何为您的系统cross-grade:
https://wiki.debian.org/CrossGrading
这与原先接受的答案中描述的不同,因为在此期间事情已经发生了变化,大多数情况下都变得更好。
基础是:
dpkg --add-architecture amd64
apt-get update
apt-get install linux-image-amd64:amd64
reboot
apt-get clean
apt-get --download-only install dpkg:amd64 tar:amd64 apt:amd64
dpkg --install /var/cache/apt/archives/*_amd64.deb
在哪一点你可以做到这一点:
dpkg --print-architecture
导致以下行:
amd64
好极了。 Ubuntu认为它是一个合适的64位系统。多么可爱。当然你知道得更好。
现在你可以运行:
apt-get update
这将下载所有64位软件包的列表,您需要完成跨系统的分析。
在这一点上,你的系统的行为非常像没有发生任何事情,只是你的安装任何事情的能力都被破坏了。
你看,你现在有多个i386软件包没有实际的多元化等价物,所以你会被各种技术上的”unavailable”依赖关系所困住。你已经安装了它们,所以你的系统将会运行,但是在这个阶段……我不会相信任何远远超出我可以抛弃它的程度。
文章认识到需要修复,并建议你这样做:
apt-get -f install
这将会导致你尝试修复你刚才制造的不合时宜的混乱。相信我,你做了一个不负责任的混乱。
这个过程的一个小小的呃逆,就是它会导致部分apt系统(和其他关键子系统)中途卸载,导致整个过程的其余部分出现错误(你不说),并且让你离开小河。
幸运的是,没有没有桨。您可以通过以下方式安装now-missing软件包:
dpkg -i/var/cache/apt/archives/(package)*amd64.deb
请注意,至少对我而言,网络停止工作在一个…呃,好几个…点。这是由于为了保持网络正常工作而需要删除一些必要的软件包(例如您的DHCP客户端)。
然后,高兴地告诉我,它需要下载一些额外的软件包。没有工作网络。
如果这听起来像你正式结束……那是因为你是。
除非你有一个有线nework(你的WiFi软件包已经被卸载了,而且无论如何WiFI的工作起来都比较复杂),知道它的配置信息,并且能够使用ifconfig
,路由等。
只要继续尝试apt-get -f install
,直到你没有更多的错误。
在apt
对系统状态满意之后,您可以运行aptitude
并手动修复您会发现的600个损坏的软件包。显然apt
和aptitude
对于工作系统的外观有不同的看法。不要问我为什么。
另外,正如我所提到的,如果您尝试让aptitude
解析器自动执行它,它将进入无限循环。不能怪它,实际上,它的设计目标是在一个工作系统上启动,并帮助用户添加或删除一些软件包,而不是修复这种可憎的内容。
这是我花了几天时间修复一部分的一部分,使用不同的系统偶尔上网,并确保我不会意外地重新格式化家庭狗。
如果这一切都没有阻止你,请注意,这是我第二次尝试进行实时升级。
第一个以mkfs
结束。
提示,提示,大fscking提示。或者更确切地说,是大提示。
但是,实际上它最终还是有效的。
系统正在运行,它主要使用64位软件包(有几个例外,我最终必须修复),并且可以运行需要64位安装的应用程序。
有可能的。
如果这是您的唯一选择,无论出于何种原因,您都可以按照上述步骤进行操作 – 如果您拥有所需的领域知识。
如果您不知道sync
和rsync
之间的区别,如果您对insmod不熟悉,如果您不知道如何使用ifconfig
,如果您不经常喜欢图形安装程序的能力,现在……只需对数据进行备份并从头开始安装即可。
这样做不那么痛苦,它会为你节省很多时间,并且它会给你一个全新的装置,没有任何意外的剩菜可以在11个月后在你后面咬你。
如果你已经做出了你不想失去的东西的备份,并且别无选择 – 或者就像通过猛击头部来对抗事物(尤其是墙上)来学习……呃,你可以试试。
它甚至可能工作。
第五种方法
您现在可以使用最近的安装程序(至少使用13.10,我刚刚使用)很容易地做到这一点。启动到64位映像DVD(或USB驱动器或其他)并选择第一个选项来重新安装,保存您的个人文件。即使您没有单独的/home
分区,也是如此。
这将重新安装包括应用程序在内的大部分系统,但它会事先安装已安装软件包的列表,以便从repo重新安装它们,因此只要当前软件包具有可用的64位版本,就应该以大多数应用程序在您重新启动时。根据我的经验,有一些没有安装 – 主要是那些通过第三方软件库安装的软件,例如谷歌浏览器 – 但是手动安装这些软件并不需要很长时间。
第六种方法
可以将ubuntu 32bit升级到64bit,它会有很多不需要的文件,你必须手动清理它。真相是”HEADACHE”。
我永远不会/不建议新的一方。
你做什么,首先back-up你的重要数据。然后去用os进行研究。
首先尝试64bit的live-cd。如果它适用于全新安装,建议。
还有一些软件,仍然是32位。因此,要在64位操作系统上安装32位软件,我们需要一些后向处理。这些也是一件坏事。
想一想:你的要求是什么,你打算做什么,下一步计划/使用64位操作系统。