从 Fedora 17 升级到 Fedora 20(或更高版本)

从 Fedora 17 升级到 Fedora 20(或更高版本)

我正在尝试将 Fedora 17 安装升级到较新的版本。我尝试了以下方法,但不起作用:

首先,使用 fedup:

# yum install ./fedup-0.8.1-1.fc20.noarch.rpm
Loaded plugins: langpacks, presto, priorities, refresh-packagekit
Setting up Install Process
Examining ./fedup-0.8.1-1.fc20.noarch.rpm: fedup-0.8.1-1.fc20.noarch
Marking ./fedup-0.8.1-1.fc20.noarch.rpm to be installed
Resolving Dependencies
--> Running transaction check
---> Package fedup.noarch 0:0.8.1-1.fc20 will be obsoleting
--> Processing Dependency: systemd >= 183 for package: fedup-0.8.1-1.fc20.noarch
---> Package preupgrade.noarch 0:1.1.10-2.fc17 will be obsoleted
--> Processing Dependency: preupgrade for package: PackageKit-0.7.6-1.fc17.x86_64
--> Finished Dependency Resolution
Error: Package: PackageKit-0.7.6-1.fc17.x86_64 (@updates)
           Requires: preupgrade
           Removing: preupgrade-1.1.10-2.fc17.noarch (@koji-override-0/$releasever)
               preupgrade = 1.1.10-2.fc17
           Obsoleted By: fedup-0.8.1-1.fc20.noarch (/fedup-0.8.1-1.fc20.noarch)
               Not found
Error: Package: fedup-0.8.1-1.fc20.noarch (/fedup-0.8.1-1.fc20.noarch)
           Requires: systemd >= 183
           Installed: systemd-44-24.fc17.x86_64 (@updates)
               systemd = 44-24.fc17
           Available: systemd-44-8.fc17.i686 (fedora)
               systemd = 44-8.fc17
 You could try using --skip-broken to work around the problem
** Found 9 pre-existing rpmdb problem(s), 'yum check' output follows:
krb5-devel-1.10.2-12.fc17.x86_64 has missing requires of keyutils-libs-devel
krb5-devel-1.10.2-12.fc17.x86_64 has missing requires of libselinux-devel
libdb-5.3.21-3.fc18.x86_64 is a duplicate with libdb-5.2.36-5.fc17.x86_64
1:openssl-1.0.1c-7.fc18.x86_64 is a duplicate with 1:openssl-1.0.0k-1.fc17.x86_64
rpm-4.10.1-3.fc18.x86_64 is a duplicate with rpm-4.9.1.3-8.fc17.x86_64
rpm-build-libs-4.10.1-3.fc18.x86_64 is a duplicate with rpm-build-libs-4.9.1.3-8.fc17.x86_64
rpm-libs-4.10.1-3.fc18.x86_64 is a duplicate with rpm-libs-4.9.1.3-8.fc17.x86_64
rpm-python-4.10.1-3.fc18.x86_64 is a duplicate with rpm-python-4.9.1.3-8.fc17.x86_64
sqlite-3.7.11-3.fc17.x86_64 is a duplicate with sqlite-3.7.11-2.fc17.x86_64

二、使用 yum:

# yum --releasever=21 distro-sync --nogpgcheck
Loaded plugins: langpacks, presto, priorities, refresh-packagekit
Setting up Distribution Synchronization Process
http://yum.postgresql.org/9.3/fedora/fedora-21-x86_64/repodata/repomd.xml: [Errno 14] curl#22 - "The requested URL returned error: 404 Not Found"
Trying other mirror.
Error: failure: repodata/repomd.xml from pgdg93: [Errno 256] No more mirrors to try.
http://yum.postgresql.org/9.3/fedora/fedora-21-x86_64/repodata/repomd.xml: [Errno 14] curl#22 - "The requested URL returned error: 404 Not Found"

所以,我的问题是如何让 fedup 进行安装,或者如何让 yum 尝试使用不同的镜像进行升级?

更新:“不要这样做”或“你不能这样做”的答案不是必需的。上述方法取自 Fedora 文档,网址为https://fedoraproject.org/wiki/Upgrading_Fedora_using_yum#Upgrading_Fedora_using_yum_directlyhttps://fedoraproject.org/wiki/FedUp#How_Can_I_Upgrade_My_System_with_FedUp.3F

答案1

操作系统级别之间的差异非常大,因此我建议使用 Fedora 20 DVD 进行完整安装。根据我的经验,尝试升级操作系统(尤其是升级多个级别)会遇到很多问题,因为安装几乎有无限的变化,因此许多情况无法正确测试。

还请注意,用 FC20+ 软件包替换旧的 FC17 不会有效升级系统。这是由于两个不同操作系统版本之间的底层变化和新的依赖关系。

答案2

正如@mdpc 指出的那样,F17 和 F20/F21 之间存在显著差异,如果您进行升级的话,这些差异很可能不会被消除,更不用说 F20 自去年 6 月起已处于 EOL 状态,F21 自 2015 年 12 月起已处于 EOL 状态。

看看你的问题,你正在尝试在 Fedora 17 系统上安装 Fedora 20 软件包。这不是一个好主意,它会失败。如果 Fedora 17 有一个 fedup 软件包,那么你可以尝试安装它,但我希望你能找到它。如果你想尝试进行 yum 升级,这很可能会破坏你的系统,你可以做类似于你尝试过的事情,但要获得一个真正受支持的版本。22例如。

# yum clean all
# yum --releasever=22 distro-sync --nogpgcheck

请记住,您应该禁用所有额外的存储库。这包括您的 postgres 存储库。

无论如何,你鼓励进行全新安装。您只会让自己陷入痛苦之中。就目前情况而言,F20 自 2015-06-23 起已停止使用。Fedora 网站上的文档内容并不重要。如果您询问他们的 IRC 频道、他们的问答页面,甚至他们的论坛,他们都会告诉您同样的事情。全新安装

相关内容