文档章节

fedora24 dnf用系统升级

江水滔滔
 江水滔滔
发布于 2016/11/14 13:44
字数 3395
阅读 33
收藏 0
点赞 0
评论 0

1、dnf-plugin-system-upgrade是用于处理系统升级的dnf软件包管理器的插件。 这是推荐的Fedora 21及更高版本的升级方法。

DNF系统升级可以使用类似于用于脱机程序包更新的机制将系统升级到较新版本的Fedora。 在系统正常运行时下载更新的软件包,然后系统重新启动到特殊环境(实现为systemd目标)以进行安装。 一旦更新的软件包的安装完成,系统将重新启动到新的Fedora版本。

备份您的重要数据。 每个系统更改都有潜在风险,需要准备。 如果您更新工作站,下载Workstation Live映像并确保您的硬件(图形卡,wifi等)与最新的内核和驱动程序兼容是明智的。

2、使用桌面或dnf的标准更新程序更新系统:

sudo dnf upgrade --refresh

建议重新启动计算机,特别是如果你刚刚安装了一个新的内核。请注意,如果您使用非默认plymouth启动主题,则会出现问题。 如果您这样做,请按照问题说明,以确保您的升级不会受到影响。如果您已经完成了任何自定义配置(手动或通过第三方工具),请在/etc/dnf/dnf.conf中双重检查您的DNF配置,建议您在更新和升级系统之前将其还原为默认配置。

3、安装dnf-plugin-system-upgrade包:

$ sudo dnf install dnf-plugin-system-upgrade

4、下载更新的软件包:

$ sudo dnf system-upgrade download --refresh --releasever = 24

如果要升级到不同的系统版本,请更改--releasever = number。 大多数人都想升级到最新的稳定版本,这是24,但如果你正在运行Fedora 22,你可能想升级到Fedora 23.你也可以使用25升级到分支或生皮,升级到Rawhide (警告:那些不是稳定版本)。

如果某些软件包具有不满足的依赖性,则升级将拒绝继续,直到您再次使用额外的--allowerasing选项运行它。 这通常发生在从尚未发布更新的存储库的第三方存储库安装的软件包。 请仔细研究输出,并检查哪些包将要删除。 它们都不是系统功能的基础,但其中一些可能对您的生产力很重要。

在不满足依赖性的情况下,如果在命令行中添加--best选项,有时可以看到更多详细信息。

5、触发升级过程:

 $ sudo dnf system-upgrade reboot

这将立即重新启动您的机器。 系统应该使用相同的内核再次引导到Fedora,但是这一次,升级过程出现在启动屏幕上。

6、等待升级过程完成。

经常问的问题

1、如何报告我通过升级找到的问题?

首先看看常见的F24错误或常见的F25错误,以检查这个问题是一个非常突出的问题,我们已经知道。 如果不存在,请搜索现有的错误报告。 如果您没有看到符合您症状的报告,可以从搜索页面上提交新报告。 请按照本README和man dnf.plugin.system-upgrade中提到的错误报告指示操作。

2、DNF系统升级是否验证其在升级期间运行或安装的软件?

是。 用于较新Fedora版本的程序包签名密钥发送到较旧的Fedora版本,以允许DNF验证其下载软件包的完整性。 您可以使用--nogpgcheck参数禁用此功能(如果您出于任何原因需要这样做)(不推荐,那么您会被恶意软件的攻击打开)。

3、第三方存储库中的包是否会升级?

是的,如果他们像常规的DNF存储库一样设置,并且不硬编码存储库路径。 常用的第三方存储库通常工作正常,但如果您尝试在官方Fedora发行版之前或之后升级,他们可能尚未更新其存储库路径,DNF可能无法找到其软件包。 这通常不会阻止升级成功运行,您可以稍后从第三方存储库更新包。

4、我可以从end of life版本升级吗?

 请注意,Fedora强烈建议在任何情况下,不要在任何生产系统或连接到公共互联网的任何系统上运行end of life版本。 您不应该允许生产Fedora部署到end of life。

考虑到这一点,如果您在系统上安装了比Fedora 20更新的End-of-Life版本,您不能只是丢弃或重新部署,您可以尝试升级它,虽然这是一个较少测试, 支持操作。 您可以尝试通过中间版本进行升级,直到达到当前支持的版本,或尝试在单个操作中升级到当前支持的版本。 不可能肯定地说明哪种方法更可能成功。

如果您尝试在一个操作中跨多个版本升级,请阅读下一个答案。

如果您安装了Fedora 20或更早版本,则无法单独使用DNF系统升级。 你必须使用裸dnf或yum至少部分升级。 您可以以这种方式升级到Fedora 21,然后使用DNF系统升级来升级剩余部分,也可以使用裸dnf或yum尝试整个升级。 注意这种方法本身不是官方推荐的升级机制。 说实话,任何从Fedora 20或更早版本升级都是“自担风险”。

5、我可以一次升级多少个版本?

最常见的情况是只升级一个版本(例如Fedora 23到Fedora 24)。 然而,在新版本发布后的第一个月左右,从最后一个版本到该版本的升级是“支持”的,因为我们在Fedora版本标准中包括这个场景,测试它 最少清洁安装支持的软件包集合,并将处理在此类升级中发现的错误。 Fedora版本生命周期是专门为提供这个大约一个月的宽限期,所以你可以选择升级长寿命系统只有每两个版本一次,而不是每次发布。

不支持两个以上版本的升级,并且在此类升级中遇到的问题可能不被视为重大错误。 注意,跨越两个以上版本的任何升级必须是从生命周期版本升级,因此前面的问题也适用于此。

在新版本发布后一个月左右,最后一个版本发布为生命终止,此时上一个问题适用。 不过,在发布到期后,该升级仍然很可能成功运行一段时间。

在多个发行版之间升级时,您可能会发现需要手动导入目标发行版签名密钥。 Fedora版本通常只有安装的下两个版本的软件包签名密钥(因为它们在N + 3版本分支之前就已经到期)。 在Fedora 22之前,并不是每个版本都有下一个版本的密钥。 如果dnf抱怨缺少密钥,这是你必须做的。

6、我可以使用DNF系统升级来升级到预发布(例如测试版)吗?

是。 应该总是可以尝试这样的升级。 当然,这个功能与预发布的任何其他方面一样,都受到临时破坏,一般来说,所述释放越早,越不可能没有问题地工作。

可选的升级后任务

这些是成功升级后可以执行的任务。 它们主要面向高级用户。 如果你是一个每天不使用终端的用户,你不需要担心这个。更新系统配置文件

大多数配置文件存储在/ etc中。 如果有任何更新,并且你以前碰到过这些文件,RPM将使用.rpmnew后缀(新的默认配置文件)或.rpmsave后缀(备份的旧配置文件)创建新文件。 您可以搜索这些文件,通过更改,并确保您的自定义更改仍然包括,并应用新的默认值。 一个试图简化这个的工具是rpmconf。 安装软件包,然后将其用作:

$ sudo rpmconf -a

请在其手册页中查看更多信息。

清理旧的包

您可以看到具有破坏依赖关系的软件包列表,如下所示:

$ sudo dnf repoquery --unsatisfied

理想情况下应该没有。 如果有一些,请考虑删除它们,因为他们不可能正常工作。

您可以看到重复的包(安装了多个版本的包),如下所示:

$ sudo dnf repoquery --duplicated

对于普通软件包,只应安装最新版本。 但是可以有规则的例外,只删除你确定不再需要的。某些软件包可能会保留在您的系统上,而这些软件包已从存储库中删除。使用命令:

$ sudo dnf list extras

如果您不使用这些,您可以考虑删除它们。 请注意,此列表仅在您具有完全更新的系统时有效。 否则,您将看到已不在存储库中的所有已安装的软件包,因为有一个较新的更新可用。 所以在执行这些操作之前,请确保您已运行sudo dnf update并再次生成额外的软件包列表。 此外,此列表可能包含从尚未发布更新的存储库的第三方存储库安装的软件包。 这通常包括例如 RPM Fusion或Dropbox。

$ sudo dnf autoremove

但要注意dnf决定不再需要包,如果你没有明确要求安装它,没有其他需要它。 这并不意味着包不是有用的,或者你不使用它。 只有删除你确定你不需要的。 PackageKit中有一个已知的错误,它不会将软件包标记为用户安装,请参阅错误1259865.如果您使用PackageKit(或GNOME Software,Apper等)进行安装,则此输出可能会列出重要的应用程序和系统软件包。

解决升级后问题

如果您的升级系统出现问题,请仅执行这些步骤。 它不应该在绝大多数升级中需要。重建RPM数据库

如果在使用RPM / DNF工具时看到警告,您的数据库可能由于某种原因已损坏。 它是可能的重建它,并看看是否解决你的问题。 总是备份/ var / lib / rpm / first。 要重建数据库,请运行:

$ sudo rpm --rebuilddb

使用distro-sync解决依赖性问题

系统升级工具默认使用分发同步方法。 如果您的系统部分未升级或您看到一些程序包依赖性问题,您可以尝试通过手动运行另一个分区同步来解决它。 这试图使您安装的软件包与当前启用的软件库完全相同的版本,即使它意味着降级一些软件包:

$ sudo dnf distro-sync

更强的变体还允许删除不能满足包依赖性的包。 在确认之前,请务必仔细查看要删除的包:

$ sudo dnf distro-sync --allowerasing

使用最新的SELinux策略重新标记文件

如果您看到由于当前SELinux策略而不允许某些操作的警告,则可能是某些文件使用SELinux权限进行了错误标签的情况。 这可能发生在一些错误的情况下,或者如果你在过去的某个时间点禁用了SELinux。 您可以通过运行重新标记整个系统:

$ sudo touch /.autorelabel

并重新启动。 下次启动将需要很长时间,并将检查和修复所有您的文件上的所有SELinux标签。

如果您已安装Fedora并想将安装升级到当前版本,则有两种基本方法:

使用dnf系统升级自动升级

    升级系统的首选方法是使用dnf系统升级实用程序进行自动升级。有关执行自动升级的信息,请参阅Fedora Wiki dnf系统升级。

手动重新安装

    您可以手动升级到最新版本的Fedora,而不是依赖dnf系统升级。这包括引导安装程序,就像执行一个干净的安装,让它检测您的现有Fedora系统,并覆盖根分区,同时保留其他分区和卷上的数据。同样的过程也可以用来重新安装系统,如果需要的话。有关详细信息,请参见第12.1节“手动系统升级或重新安装”。

警告

在执行升级或重新安装系统之前,请始终备份数据,无论您选择哪种方法。

3.2、下载引导和安装映像
Fedora项目提供针对特定用例定制的不同风格。选择最适合您的Fedora风格,或者您可以在安装之后通过自定义来构建自己的风格,或者使用第9.1.1节“创建Kickstart文件”中所述的kickstart文件。 Kickstart安装需要netinstall介质类型或直接安装引导方法,如PXE; kickstarts不支持与实时图像。
有关Fedora Workstation,Fedora Cloud,Fedora Server和可用介质类型的更多信息,请参阅第2章下载Fedora。
您还可以选择一个Fedora Spin,其中包含最喜欢的替代桌面或工具,用于专门的任务,位于http://spins.fedoraproject.org。

© 著作权归作者所有

共有 人打赏支持
江水滔滔
粉丝 1
博文 4
码字总数 4102
作品 0
昆明
程序员
fedora22升级到fedora23(转)

Fedora23于11月3日正式发布,用户可在getfedora.org下载。如果你以前升级过Fedora系统,那么你肯定了解fedup这个工具。然而现在,我们需要使用dnf的system upgrade插件来升级到Fedora23。这个...

晓亮1210
2015/11/11
0
0
DNF包管理器不升级指定包的配置

使用fedora作为日常系统使用有一年了,上半年开始使用搜狗输入法作为系统的输入法,最近使用系统的升级命令 进行升级,然后就自动的把搜狗输入法升级到2.1的新版本了,然后就不能使用了,切换...

阿信sxq
2016/10/13
51
0
mysql 采用官方yum源的安装方法

以下内容是mysql官方的翻译。 使用MySQL Yum存储库的快速指南 抽象 MySQL Yum存储库提供用于在Linux平台上安装MySQL服务器,客户端和其他组件的RPM软件包。这些软件包还可以升级和替换从Lin...

lisq6151
2017/08/29
0
0
Linux软件包管理基本操作入门

导读 大多数现代类 Unix 操作系统都提供了一个集中的软件包管理机制,以帮助用户搜索、安装和管理软件。而软件通常以「包」的形式存储在仓库「repository」中,对软件包的使用和管理被称为包...

linuxprobe16
2016/12/28
4
0
清除旧版本kernel[Fedora/CentOS/RHEL]

前言: 在升级系统的时候提示/boot分区空间不足,导致无法安装升级。当你/boot分区空间比较小的话,就需要清除老版本的kernel来是释放空间,来安装新的kernel。 本文将介绍在RHEL系统中如何快...

Firxiao
2016/05/09
70
0
Fedora DNF 报错

升级fedora 24以后,安装软件报错 跟踪调试代码,/usr/lib64/python3.5/json/decoder.py,line 355 ,添加 print(s) 打印内容: /usr/lib/python3.5/site-packages/dnf/base.py line 283: 问......

刘少
2016/10/08
68
0
CentOS7安装和使用DNF

DNF新一代的RPM软件包管理器。他首先出现在 Fedora 18 这个发行版中。而最近,他取代了YUM,正式成为 Fedora 22 的包管理器。 DNF包管理器克服了YUM包管理器的一些瓶颈,提升了包括用户体验,...

楠木楠
2016/10/10
1K
0
Fedora 26 即将停止支持,推荐升级至 Fedora 28/27

Fedora 项目团队宣布将于 2018 年 6 月 1 日停止对 Fedora 26 Linux 系统的支持,并推荐这些用户尽快升级至 Fedora 27/28 版本。Fedora 26 于 2017 年 7 月 11 日发布,带来了 GNOME 3.24 桌...

达尔文
05/31
0
0
关于Fedora 24 的 `dnf update`这个小故障

导读 Fedora 项目组的 Adam Williamson 发布一则关于Fedora 24的服务公告,有一部分Fedora 24用户运行dnf update命令会出现 “duplicated packages” 和 “kernel updates not working” 等错...

linux小陶
2016/12/28
0
0
YUM 已死,DNF 的时代到来

Linux发行版Fedora的最新版本Fedora 22将抛弃Yum包管理器,替代之DNF,原因是Yum已被认为是一个死亡的项目。Yum有三大缺陷:无文件描述的API,坏掉的依赖解决算法,无力重构内部功能。而第三...

狂暴的大螃蟹
2015/05/18
7.7K
48

没有更多内容

加载失败,请刷新页面

加载更多

下一页

OSChina 周三乱弹 —— 你被我从 osc 老婆们名单中踢出了

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @小鱼丁:分享五月天的单曲《后来的我们 (电影《后来的我们》片名曲)》: 《后来的我们 (电影《后来的我们》片名曲)》- 五月天 手机党少年们想...

小小编辑
6分钟前
1
1
Spring Boot Admin 2.0开箱体验

概述 在我之前的 《Spring Boot应用监控实战》 一文中,讲述了如何利用 Spring Boot Admin 1.5.X 版本来可视化地监控 Spring Boot 应用。说时迟,那时快,现在 Spring Boot Admin 都更新到 ...

CodeSheep
25分钟前
0
0
Python + Selenium + Chrome 使用代理 auth 的用户名密码授权

米扑代理,全球领导的代理品牌,专注代理行业近十年,提供开放、私密、独享代理,并可免费试用 米扑代理官网:https://proxy.mimvp.com 本文示例,是结合米扑代理的私密、独享、开放代理,专...

sunboy2050
今天
0
0
实现异步有哪些方法

有哪些方法可以实现异步呢? 方式一:java 线程池 示例: @Test public final void test_ThreadPool() throws InterruptedException { ScheduledThreadPoolExecutor scheduledThre......

黄威
今天
1
0
linux服务器修改mtu值优化cpu

一、jumbo frames 相关 1、什么是jumbo frames Jumbo frames 是指比标准Ethernet Frames长的frame,即比1518/1522 bit大的frames,Jumbo frame的大小是每个设备厂商规定的,不属于IEEE标准;...

六库科技
今天
0
0
牛客网刷题

1. 二维数组中的查找(难度:易) 题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入...

大不了敲一辈子代码
今天
0
0
linux系统的任务计划、服务管理

linux任务计划cron 在linux下,有时候要在我们不在的时候执行一项命令,或启动一个脚本,可以使用任务计划cron功能。 任务计划要用crontab命令完成 选项: -u 指定某个用户,不加-u表示当前用...

黄昏残影
昨天
0
0
设计模式:单例模式

单例模式的定义是确保某个类在任何情况下都只有一个实例,并且需要提供一个全局的访问点供调用者访问该实例的一种模式。 实现以上模式基于以下必须遵守的两点: 1.构造方法私有化 2.提供一个...

人觉非常君
昨天
0
0
《Linux Perf Master》Edition 0.4 发布

在线阅读:https://riboseyim.gitbook.io/perf 在线阅读:https://www.gitbook.com/book/riboseyim/linux-perf-master/details 百度网盘【pdf、mobi、ePub】:https://pan.baidu.com/s/1C20T......

RiboseYim
昨天
1
0
conda 换源

https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/conda config --add channels https://mir......

阿豪boy
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部