From Fedora Project Wiki
这是新东西!
FedUp 是随 Fedora 18 而来的一个新系统,因而将在 Fedora 18 发布之前不断完善。如果您发现本文档有错误或是过期了,请修正它或者报告给相关人员。
安全考虑
当您通过网络升级时,FedUp 还不确保只有从 Fedora 获取的受信任软件正在系统上运行。具体请查看 Bugzilla: #877623。You can download the ISO release image and verify the authenticity independently before perfoming a upgrade with Fedup via media or ISO images methods to workaround this issue. Note that neither Anaconda not Preupgrade verified the authenticity of the source either and this is not a regression.

什么是 FedUp?

FedUp (FEDora UPgrader) 是一个升级 Fedora 的新工具。它已替换了所有在之前 Fedora 版本上推荐的更新方式(例如通过 PreUpgrade 升级和 DVD 升级)。Anaconda,Fedora 的安装器,从 Fedora 18 后将不会自带更新功能,所有全部交给 FedUp。

目前,FedUp 可以通过网络安装源完美升级 Fedora 17 至 Fedora 18,类似于之前 PreUpgrade 的工作方式。更多升级的方法目前已经处于计划之中,当它们可行后本页也会继续更新。

针对 Fedora 16 和更老的版本
FedUp 客户端尚未在任何早于 Fedora 17 的系统上构建或运行。如果您想更新,请首先更新到 Fedora 17。

FedUp 做了些什么?

FedUp 系统有两个组成部分 - 客户端被用作下载软件包并准备升级和预启动环境,实际更新工作由 systemd 和 yum 完成。详细信息请访问 FedUp 主作者对它的介绍 页面。

FedUp 客户端

FedUp 运行于准备升级的系统上。它获取所有需要升级的软件包和内核。目前只有命令行版本,不过图形界面版本已经在准备了。

升级过程

从运行 FedUp 客户端之后重启开始实际上的升级。文件系统会在启动时被挂载,已下载的包会被安装并且一些有关升级的任务也会开始执行。在升级过程中,将会使用一个特别的包含升级进度条显示的 plymouth 主题。

常见问题解答

我能使用 FedUp 更新我的 Fedora 16 吗?

不行。目前不可用。FedUp 客户端目前尚未在 Fedora 16 上构建或运行,所以您至少需要 Feora 17。请首先使用 Preupgrade 升级至 Fedora 17。

我该如何汇报升级出现的问题?

这取决于您出现的问题。

升级准备时的问题

如果您在重启前使用 FedUp 客户端遇到问题(fedup),请 搜索有关 fedup 的 Bug,或者针对您升级前系统的版本提交 Bug 报告。

升级过程中的问题

If you hit issues after upgrade preparation and the initial reboot, 请 搜索有关 fedup-dracut 的 Bug,或者针对您升级前系统的版本提交 Bug 报告。

升级后的问题

如果升级某个软件包后出现问题,请针对相关软件提交 Bug 报告。

我该如何在升级过程中调试出现的问题

A troubleshooting and debug guide will be written soon and linked to from here.

Does FedUp verify the software it runs or installs during upgrade?

This is a planned feature. See Bug 877623 for a status update.

哪里可以问我的问题?

For now, the best place to ask questions is probably #fedora-qa on Freenode IRC or the Fedora Test list.

我如何使用 FedUp 更新我的系统?

As alluded to above, there are three parts to upgrading with FedUp - preparation, execution and cleanup.

升级准备

最新版的 fedup
确保您已安装最新的 fedup客户端。本页撰写于2013-01-08,目前是 fedup-0.7.2-1.fc17
  1. 运行系统更新并重启以确保内核更新生效
  2. 安装 fedup
    • 确保已获取最新版,您可以通过启用 updates-testing 源(命令行执行 yum --enablerepo=updates-testing install fedup)

3种方式可获得需要更新的软件包 - 使用网络安装源、本地 ISO 镜像或本地设备(例如硬盘或者光盘)。

网络

使用网络进行升级是最省事的办法 - 如果您当前的系统有一个比您要升级到的 Fedora 版本自带内核的版本还要新的版本,这种方式可以消除潜在的问题。

  1. 执行下列命令准备升级
    • sudo fedup-cli --network 18 --debuglog fedupdebug.log
    • <arch> 是您正在升级的系统架构 - 比如 i386 或 x86_64
  2. 一旦准备完毕,检查 fedupdebug.log 文件查看是否有来自 fedup-cli 的错误输出

ISO 文件

In order to use an ISO file, it needs to exist locally on the filesystem of the system to be upgraded. The documentation is written as if that file is /home/user/fedora-18.iso but you will need to replace all instances of that path with the actual path of the iso. Updates will be pulled in if you have network access on the machine to be upgraded.

  1. 下载适合您正运行的架构的 Fedora 41 的 ISO 文件。
    • 看在这是示例的份上,我们假设 ISO 位于 /home/user/fedora-18.iso,不过您可以任意指定您的 ISO 文件位置,替换下面的 /home/user/fedora-18.iso 即可
  2. 执行下列命令准备升级
    • sudo fedup-cli --iso /home/user/fedora-18.iso --debuglog=fedupdebug.log
  3. 一旦准备完毕,检查 fedupdebug.log 文件查看是否有来自 fedup-cli 的错误输出

其他设备

光盘和其他可被挂载的设备均可被用作升级准备过程中使用的软件包安装源。

  1. 挂载源介质
    • 看在这是示例的份上,我们假设设备挂载于 /mnt/fedora,不过您可以任意指定挂载位置。替换下面的 /mnt/fedora 即可
  2. 执行下列命令准备升级
    • sudo fedup-cli --device /mnt/fedora --debuglog=fedupdebug.log
  3. 一旦准备完毕,检查 fedupdebug.log 文件查看是否有来自 fedup-cli 的错误输出

执行升级

Needs Reference
This section still needs a reference to the 'esc kills plymouth' bug once a suitable summary has been written
  1. Reboot the system if fedup has completed without error.
  2. Once the system reboots, there should be a new entry in the GRUB menu titled System Upgrade.
    • Adding rd.upgrade.debugshell would be a decent idea
  3. Select the System Upgrade option from the GRUB menu
  4. The system should boot into the upgrade process and a plymouth boot screen should be displayed
    • If you press 'esc', a more detailed log of progress will be desplayed but if you switch back to the graphical progress indicator, it will remain at 0% for the remainder of the upgrade but that does not mean the upgrade has stopped. See Need section reference here once it's written
  5. Once the upgrade process has completed, the system will reboot and an option to boot Fedora 42 will be on the grub menu

GRUB 更新

这是可选的步骤
在已更新的系统上升级 GRUB 严格意义上讲并不是必须的,但是对于 BIOS 类系统我们还是十分建议您做一下升级。而对于 UEFI 类系统我们强烈建议 升级 grub-efi 到 grub2-efi

更新 GRUB2 (BIOS 系统)

  • 升级完成后,之前安装的 grub2 仍然会启动 F17 版本,您需要手工升级
  • 按照 本页的说明 重新安装并升级 grub

更新 GRUB (UEFI 系统)

在 UEFI 系统上更新 GRUB 的问题
在稍晚些时候的测试中,我们发现手工升级 grub-efi 至 grub2-efi 会某些潜在严重问题,在解决方案尚未出来之前,我们建议用户先使用 grub-efi。

清理

Pending
This part of the documentation is still being written