fedora dnf

将任何操作系统升级到新发行版可能很耗时,并且充满问题。

实际上,术语“升级”甚至不适用。 在过去的很多次中,由于所谓的升级路径将失败,因此我必须执行完全重新安装。 当涉及多个系统时,必须执行重新安装非常耗时,通常在任何给定时间我只有八到十个。

我在Fedora中使用的第一个升级路径是集成到以前版本的Anaconda安装程序中。 它似乎确实可以在相当简单的安装中工作,但是经过数年的升级和多个发行版本,它将以孤立,重复和不需要的软件包的形式留下大量的废纸ft。

首次出现在Fedora 18中的新版本的Anaconda没有执行升级的任何选择。 大约在同一时间尝试使用第三方存储库中提供的名为fed-up的程序来提供升级路径。 我认识的大多数尝试使用它的人(包括我在内)的效果都非常差。 我有一个系统只是拒绝启动GRUB菜单之外的系统,而GRUB菜单开始了该过程的第二部分。 有时,主机在升级后根本无法使用。

我最近在几个系统上从Fedora 22升级到了Fedora 23,然后又从Fedora 23升级到了24,发现新的dnf系统升级程序和过程比以前的自动化或半自动化升级程序更加实用和可靠。

dnf系统升级

新的Fedora升级系统基于YUM的替换软件包管理器DNF。 我发现对于我发现自己执行的所有程序包管理任务,DNF比YUM更好。 作为执行升级的dnf系统升级方法的基础,它似乎也工作得更好。

Fedora 23首次引入Fedora 23是从Fedora 22升级的一种方式,我在系统升级方面取得了良好而可靠的成功。 这是一个多步骤的过程,但是可以很容易地使用一两个脚本将其自动化。

对我来说,系统升级过程并非没有至少一个问题。 在多台主机上升级后,显示管理器在启动顺序或命令行中均未启动。 原来,缺少显示管理器服务链接,因此systemd无法启动GUI登录管理器。 添加以下符号链接可解决该问题。

ln -s /etc/systemd/system/display-manager.service-> /usr/lib/systemd/system/sddm.service

sddm显示管理器是Fedora 23和24的当前默认显示管理器。如果已安装,则可以用自己喜欢的显示管理器(例如kdm代替KDE或gdm代替GNOME)。

dnf system-upgrade还提供了一些工具来确保和验证升级后的系统是否合理。 我认为这是确保将来的升级也干净无故障的非常重要的一步。

升级准备

无论升级如何执行,总是准备一个好主意,即使进行最新版本的全新安装并清除之前的版本也是如此。 这里有一些技巧,可帮助确保一切顺利。

文件系统设计

良好的文件系统设计可以一直追溯到主机上Linux的初始安装。 主要目的是确保在升级或重新安装过程中不会删除个人数据。 实现此目的的最佳方法是在初始操作系统安装期间将/ home目录创建为单独的文件系统。 如果/ home是一个单独的文件系统,则可以在升级或完全重新安装时将其保留下来而不会受到干扰。

dnf系统升级过程和重新安装都允许您保留当前的主文件系统,而无需重新格式化它。 然后它将在重新启动时自动安装。

后备

始终备份/ home以及其他目录,尤其是/ etc和/ var。 / etc和/ var都包含特别在重新安装后可能有用的数据。 / etc目录包含一些本地配置文件,例如DHCP和网络接口配置文件,您可能需要在重新安装后将它们复制回/ etc。 在某些情况下,如果不成功升级,可能还会被覆盖。 进行这些备份以复制任何覆盖的配置文件可能非常有帮助。

/ var目录可能包含诸如域名服务,各种SQL数据库和Web服务(如Apache)之类的程序的数据。 您将同样希望保留它们。

阅读程序

请务必阅读Fedora Wiki升级页面上发布的升级程序。 该页面通常不仅包含执行升级所需的特定说明,还包含通常会询问有关升级的问题,执行升级的提示以及有关如何解决可能出现的升级后问题的部分。

运行升级

这可能是升级中最容易的部分,因为您要做的就是输入一系列非常特定的命令。

本节中的命令假定您以root用户身份登录。 执行升级的第一步是确保您的系统已经具有当前版本的最新更新。

dnf -y更新

在执行DNF更新之后,您应该重新引导系统,尤其是在更新包含新内核的情况下。

接下来,安装dnf系统升级插件包。

dnf安装dnf-plugin-system-upgrade

第三步是下载要升级到的新版本所需的文件。 此dnf系统升级过程旨在升级一个或两个发行版本,因此您可以从Fedora 22升级到Fedora 23或24,或从Fedora 23升级到24。请确保在命令中指定正确的releasever。

dnf系统升级下载--refresh --releasever = 24

第四步是运行以下命令,该命令将重新启动计算机并启动升级过程。 最初,它看起来像是常规重新启动,但是会显示一条消息,表明升级已开始,然后在升级每个软件包时显示各种状态消息。

dnf系统升级重启

升级结束时,系统将重新启动,并带您进入正常的登录屏幕。

打扫干净

但是,在开始进行生产工作之前,应该执行几个步骤,以确保系统保持在合理的清洁状态。 这样可以确保执行常规更新而不会出现任何问题,并且为下一次升级提供了一个良好的起点。

有时系统级别的软件包会在/ etc中安装新的配置文件,因此,最好知道那些文件是哪个,因此,如果您修改了原始配置,则可以使用原始配置,也可以使用新配置。 可能需要修改新的配置文件以满足您的特定要求。 此命令标识您可能要检查的那些新配置文件。

rpmconf -a

您还应该使用以下命令查找依赖项已损坏的软件包。

dnf repoquery-不满意

如果存在不满意的依赖关系,则可能应删除该命令列出的软件包,因为它们不太可能正常工作。

也可能存在具有不同版本级别的重复软件包。 以下命令查找这些位置。

dnf repoquery-重复

如果找到重复的软件包,则应删除较旧的版本并仅保留最新的版本。

Fedora存储库中未列出的某些软件包可能仍存在于您的系统上。 下面的命令列出了那些软件包。

dnf列表附加功能

如果找到任何其他软件包,则可能应该删除它们。 请确保不要删除可能已从其他存储库(例如RPMFusion或DropBox)安装的文件。 再举一个例子,如果不是从Fedora存储库中安装的LibréOffice文件,而是使用LibréOffice网站上的下载文件安装的,您可能还会发现该命令显示了LibréOffice文件。

使用以下命令可以删除所有重复,多余或依赖项损坏的软件包。

dnf自动删除

但是在您这样做之前,您应该确定不再需要它们。 我更喜欢使用先前命令提供的列表,并手动删除不需要的软件包。 我不建议使用dnf autoremove命令。

结论

现在,我已经使用dnf系统升级过程在多个系统上执行了至少两次升级。 它们工作得很好,而缺少符号链接只是我上面提到的一个问题。 使用这种升级方法,我终于感到安全。

尽管用GUI桌面完全升级典型的桌面系统可能需要几个小时,但我在每个系统上花费的实际时间仅限于输入命令。 通过创建用于实际升级的命令的简短脚本,我进一步减少了这种情况。 我还没有编写脚本来编写升级后命令,因为它们需要做出一些判断和决策,以决定要离开哪些软件包以及可以删除哪些软件包。

DNF安装程序可用于CentOS 7,但不适用于发行版6。因此,从CentOS进行升级不能使用dnf系统升级程序。 我希望他们可以使该功能可用,因为我有几台CentOS 6主机,我想为其轻松升级到CentOS 7。

每个人都有不同的环境,并且可能会经历不同的dnf系统升级过程。 我希望在评论部分阅读有关您的经历。

翻译自: https://opensource.com/business/16/7/fedora-linux-dnf-system-upgrade

fedora dnf

fedora dnf_如何使用DNF升级Fedora Linux系统相关推荐

  1. linux系统如何为软件升级,在Linux系统中怎样才能使用一个命令升级所有软件?...

    今天小编要跟大家分享的有关Linux的文章中,是关于在Linux系统中怎样才能使用一个命令升级所有软件,熟悉Linux系统的小伙伴都知道,让我们的 Linux 系统保持最新状态会用到多种包管理器.比如 ...

  2. DNF可以在Linux系统运行吗,系统安装-009 Linux下dnf使用

    dnf命令 软件包管理 Linux学习路线规划,掌握小白变怪兽的独门绝技,让站长用13年的工作经验告诉你什么是捷径!Linux面试必备技巧,技术面+主管面+HR面,每一面都能脱颖而出,轻松搞定 Off ...

  3. DNF可以在Linux系统运行吗,Linux中dnf命令起什么作用呢?

    摘要: 下文讲述Linux中dnf的功能说明,如下所示: dnf简介: dnf是一个新的rpm软件包管理器,它出现的目的是取代yum dnf在用户体验,内存占用,依赖分析,运行速度等方面进行了性能提升 ...

  4. Linux系统openssl升级,在Linux系统上升级OpenSSL的方法

    我是用的centos ,目前官方说受威胁的版本是1.0.1f, 1.0.1e, 1.0.1d, 1.0.1c, 1.0.1b, 1.0.1a, 1.0.1 .在openssl 1.0.1g版本中&qu ...

  5. linux嵌入式在线升级,嵌入式Linux系统在线升级策略 Linuxers必知!

    服务端程序 服务端程序用来监测终端设备状态,管理升级包,升级流程控制并且提供 web 端响应以及数据库访问.本策略中的服务端为 apache-tomcat,程序采用 java servlet,数据库为 ...

  6. 领克linux系统怎么下载软件,新升级的领克车机系统好用吗?我们来盘一下

    提到车机系统,可以说是人们日常用车中常常被忽视的,但又是每天都在接触的配置.一套好的车机系统,不仅仅可以为人们提供丰富的娱乐体验,而且可以为驾驶提供便捷.主打潮流.科技.运动的领克汽车一直以来吸引了无 ...

  7. kali linux 升级命令_Kali Linux系统:如何升级/更新?

    如果你是刚对Kali Linux入手,你会发现这样一个问题:大家都用过windows系统对吧,它都有一个自动更新或手动更新功能,windows系统可以升级的.我们的Kali Linux系统又如何升级呢 ...

  8. linux系统添加路由

    Linux添加临时路由及永久路由的方法 一:使用 route 命令添加 使用route 命令添加的路由,机器重启或者网卡重启后路由就失效了,方法: //添加到主机的路由 route add –host ...

  9. Linux下Windows访问DNF,Fedora Linux系统中用Steam play与Proton玩Windows系统下的游戏

    本文示例在 Fedora Linux 系统中使用 Steam play 与 Proton 玩 Windows 系统下的游戏,也适用于其他的 Linux 系统版本. 关于 Steam play 和 Pr ...

最新文章

  1. 无法访问linux mysql_远程无法访问linux Mysql解决方案(转)
  2. POJ 3216 Repairing Company【二分图最小路径覆盖】
  3. CentOS5.5下NIS配置
  4. 一张图看懂数据防泄漏
  5. Vue.js-Day06-AM【项目实战(附带 完整项目源码)-day01-am:移动端响应式(响应式尺寸、视口问题、实现rem变化、rem设计)、实战项目搭建(初始化项目、处理rem、搭建路由)】
  6. python计算相关矩阵_Numpy使用大全(python矩阵相关运算大全)-Python数据分析基础2...
  7. GCC 用 C++ 来编译(酷壳)
  8. exchange 2010 relay设定
  9. sqlserver 2008r2 执行代码 快捷键
  10. java keytool下载_JavaJDK自带工具keytool生成ssl证书
  11. JAVA 如何控制模拟表单提交_java后端模拟表单提交
  12. 最全面的 Spring 学习笔记
  13. Adobe Acrobat XI Pro 软件下载安装详细教程
  14. 使用eNSP配置防火墙USG6000v双机热备(VGMP+HRP+OSPF+NAT)
  15. cshop是什么开发语言_Fecshop 多语言
  16. 体验服服务器更新维护,体验服专区 - 艾兰岛官方网站 - 腾讯游戏
  17. 基于NRF52832蓝牙芯片的电子价签(电子墨水屏)
  18. ACM 各大OJ平台以及题目分类
  19. 又来了!针对VMware ESXi的新型勒索软件出现
  20. 【Lyra UI】UI 玩法逻辑小结

热门文章

  1. .repo/repo/main.py“, line 79 file=sys.stderr) SyntaxError: invalid syntax
  2. Linux命令 - 日拱一卒
  3. java计算机毕业设计校园快递联盟系统源码+数据库+系统+lw文档+mybatis+运行部署
  4. [附源码]SSM计算机毕业设计宠物寻回系统JAVA
  5. 行业前研|人工智能在作战仿真中的应用
  6. HC-SuK070-C【通信口配置】之CAN
  7. 金蝶记账王用试算平衡表的教程
  8. n流水线m装配站调度问题
  9. 更轻量的百度百舸,CCE Stack智算版发布
  10. 如何讲述个人职业生涯