V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
programV2
V2EX  ›  问与答

V 友们 请问 Centos/Ubuntu 升级软件包和內核会有兼容性问题吗?🙏

  •  
  •   programV2 · 2021-09-03 17:15:10 +08:00 via iPhone · 631 次点击
    这是一个创建于 977 天前的主题,其中的信息可能已经有所发展或是发生改变。

    比如 centos 7, Yum update 更新所有软件包,以及手动更新升级內核,对于系统中已经安装的一些软件会出现兼容性问题吗?求有经验的 V 友分享一🙏🙏

    第 1 条附言  ·  2021-09-04 15:47:04 +08:00

    ubuntu 升级软件:

      sudo apt-get update 更新源
    

    sudo apt-get upgrade 更新已安装的包 sudo apt-get dist-upgrade 升级系统

    ubuntu升级特定软件:

      可以用   sudo apt-get  install pkgname
    

    看软件安装位置: dpkg -L xxxx

    查看软件是否安装: dpkg -l | grep filename

    查看軟件安装路径

    dpkg -L 软件名

    ubuntu查看软件版本:

     首先安装软件,apt-show-versions 或者aptitude(信息比较详细,推荐)
    
      使用dpkg 也可以
    
    
      dpkg -l firefox
    
    第 2 条附言  ·  2021-09-04 15:58:15 +08:00

    apt-get upgrade和apt-get dist-upgrade本质上是没有什么不同的。只不过,dist-upgrade会识别出当依赖关系改变的情形并作出处理,而upgrade对此情形不处理。

    例如软件包a原先依赖b c d,但是在源里面可能已经升级了,现在是a依赖b c e。这种情况下,dist-upgrade会删除d安装e,并把a软件包升级;而upgrade会认为依赖关系改变而拒绝升级a软件包。

    8 条回复    2021-09-04 15:23:31 +08:00
    Puteulanus
        1
    Puteulanus  
       2021-09-03 17:44:38 +08:00
    centos 官方源不是应该只有安全性更新,没有功能更新吗
    programV2
        2
    programV2  
    OP
       2021-09-03 21:53:12 +08:00 via iPhone
    @Puteulanus 我 yum update 会令 centos 7.升级到 7.9, 所有的软件也到最新的版本。这个应该不只是安全更新
    Puteulanus
        3
    Puteulanus  
       2021-09-03 23:13:44 +08:00
    programV2
        4
    programV2  
    OP
       2021-09-03 23:57:32 +08:00 via iPhone
    @Puteulanus 谢谢大佬。Ubuntu 官方源的 apt-get update 也是只有安全更新吗?
    programV2
        5
    programV2  
    OP
       2021-09-04 00:24:44 +08:00 via iPhone
    @Puteulanus 我看链接里面的有人说 Ubuntu 也是一样做安全更新。 但是 Ubuntu 是可以跨版本升级的。请问 如果 apt-get upgrade 升级 OS 系统版本 16 到 18,已安装的软件版本也不会升级到最新的 stable 版本吗? 如果会升级的话,如何保证能够兼容旧的软件配置文件?这就是我主要的疑问。谢谢指点🙏
    msg7086
        6
    msg7086  
       2021-09-04 14:57:42 +08:00
    更新没问题,升级不行。

    发行版里的「稳定版」,指的就是版本稳定,保证兼容。你从 7.0 一路升级到 7.9,基本可以保证所有的软件都能正常运行。但是你从 7.9 升到 8.0,那就等于是推倒重来了,你所有的软件都应该针对新版本做测试和适配。

    Ubuntu 和 Debian 都可以升级。如果你不改软件源里的版本,那你就一直待在原来的版本上,这时候 upgrade 是没问题的,只会修复 Bug 和安全问题。如果你改了版本,再 upgrade,那就是升级系统版本了。
    programV2
        7
    programV2  
    OP
       2021-09-04 15:10:23 +08:00 via iPhone
    @msg7086
    @msg7086 谢谢 V 友. 请问你说的"改软件源里的版本"是指改 OS 的版本吗? 比如把 Ubuntu 16 改成 20, 然后再执行 upgrade 就可以升级系统版本, 是这个意思吗? 那为什么不用 sudo apt-get dist-upgrade 直接升级?
    @msg7086
    msg7086
        8
    msg7086  
       2021-09-04 15:23:31 +08:00   ❤️ 1
    @programV2 就算用 dist-upgrade 也得先改软件源啊。
    dist-upgrade 和 upgrade 的区别只在于出现冲突时的处理方法而已。
    然后不同版本之间的升级最好使用官方支持的方式,比如说 16 到 20 需要先升到 18 再升到 20 。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3664 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 373ms · UTC 10:53 · PVG 18:53 · LAX 03:53 · JFK 06:53
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.