我刚刚安装了新版本的Ubuntu,并且想将其回滚到以前的版本。
我怎样才能做到这一点?那有可能吗?
我刚刚安装了新版本的Ubuntu,并且想将其回滚到以前的版本。
我怎样才能做到这一点?那有可能吗?
Answers:
在一定程度上可以降级发行版。进行足够的战斗就可以完成(有关技术细节,请参见此处的其他一些答案)。
但是,最终结果与升级前的结果不同。在升级过程中,为了使新软件包满意而进行了某些单向更改,降级它们不会撤消那些编辑。不可能保证降级将完全起作用,更不用说它会保持稳定了。
简而言之,最简单的选择始终是重新安装。不要把它当作琐事,而把它看作是精简程序包并更好地进行配置的好机会。
如果您想将来进行测试,并且担心可能会遇到问题,请务必确保执行以下操作:
/home/
在同一分区安装中是很头疼,如果你不断升级/降级的事情配方。将其推入另一个磁盘或至少另一个分区,以便在确实需要重新安装时,实际上只需要设置安装。在我的语言中有一句话可以粗略地翻译为“您不能通过沿相反的方向旋转切碎机的手柄将切碎的肉切成肉” :)
升级过程是单向的-在安装新版本的软件时,软件包的安装后脚本会修改您的配置文件和设置,以使用新软件所需的新格式。基本上,没有相反的过程-使新的配置文件与旧软件兼容。
在打包工具(apt)级别上是可能的。但是生成的系统可能不等同于重新安装,并且您可能会在此过程中遇到错误。这是因为许多软件包都包含对升级的特定支持(例如,处理配置文件中的更改),但不支持降级。
通常,apt倾向于安装软件包的最新版本。但是,您可以通过固定来更改此设置:您可以声明旧发行版中的软件包比已安装的软件包具有更高的优先级,因此当您这样做时,它们将被降级aptitude dist-upgrade
。
将您的内容更改/etc/apt/sources.list
为仅包含旧版本(编辑文件或使用您喜欢的GUI),然后运行aptitude update
。然后编辑/etc/apt/preferences
(在apt_preferences
手册页中记录),并添加以下几行(降级为透明):
Package: *
Pin: release v=10.04
Pin-Priority: 1001
然后运行aptitude dist-upgrade
。每个软件包的优先级都大于1000,因此10.04中存在并安装在系统上的每个软件包都将降级。您必须手动删除10.04中没有的软件包。它们将被适当地列在“过时的和本地创建的软件包”下。
do-release-upgrade
(第一次通话已挂起)对我有帮助。因此,我可以将apt列表还原为正确的版本。
您可以手动执行。
首先生成您在系统上安装的列表。您可以通过在终端中键入以下内容来执行此操作。
sudo dpkg --get-selections | grep '[[:space:]]install$' | \awk '{print $1}' > package_list
将/ home和/ etc文件夹复制到备份媒体。
重新安装ubuntu 10.04。恢复您的备份(请记住设置正确的权限)。然后运行以下命令以重新安装您之前拥有的所有程序。
cat package_list | xargs sudo apt-get install
请注意,对于不兼容的设置,您可能必须对/ etc和/ home文件夹进行一些清理。
对于某些软件包,回滚可能会很好地隔离工作,但是我永远都不会期望整个发行版的大规模回滚会给您留下除可怕破坏的系统(或从表面上看起来很糟糕的系统)之外的任何东西。很好,但是随着您发现它越来越破碎,奇怪的事情不断出现)。
APT只是为了尽可能避免回滚而设计的,而组成Ubuntu(和Debian,就此而言)发行版的软件包并不是以平滑的回滚为设计目标而设计的。
除非您拥有可靠的整个系统备份,否则您真正需要做的是确保备份整个主目录(并可能还要在单独的分区上),从所选版本的CD映像重新安装,然后开始从主文件夹还原数据。你甚至可能需要选择恢复点文件的情况下,在你的home目录中的已成为习惯了新的版本不太与旧版本很好地工作。
在执行此操作之前,您可能需要仔细阅读已安装的软件包并写下所依赖的软件包,以便重新安装它们。有一些工具可以备份和恢复已安装软件包的列表,但是如果您需要在不同版本之间进行操作,由于所需/包含的软件包可能已更改,因此我通常不建议这样做。
简单的方法是从先前版本的CD / DVD或USB闪存盘启动,然后通过覆盖现有安装来重新安装Ubuntu。
不要忘了先备份:您的home
目录可能存在其他任何个人数据。