如果我编辑 sources.list 并在 Ubuntu 版本之间跳转,会出现什么问题吗?

如果我编辑 sources.list 并在 Ubuntu 版本之间跳转,会出现什么问题吗?

我发现sources.list其中/etc/apt有所有存储库的密钥文件。

我还发现每个系统和 Ubuntu 版本都有自己的sources.list,所以在这里我有点处于实验状态!

我当时正在使用Ubuntu 18.04 LTS(64 位),只是浏览并查看不同的sources.list文件。在其中我发现了一些有趣的东西。所以,到目前为止,有很多新的 Ubuntu 版本刚刚发布。我也愿意升级我的版本21.04 (因为 gnome 40)

所以我发现我可以通过命令升级 ubuntu sudo do-release-upgrade,但该命令将转到下一个版本,而不是最新版本。所以那是非常耗时且耗费网络(我没有 20GB 的互联网流量)

我发现的唯一方法是从 ISO 重新安装,但我不想刷新所有数据或包,因为它们也需要一点时间来安装。

所以我做的是 愚蠢的,我把我的内容改成了sources.list——

#deb cdrom:[Ubuntu 21.04 _Hirsute Hippo_ - Release amd64 (20210420)]/ hirsute main restricted

# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://us.archive.ubuntu.com/ubuntu/ hirsute main restricted
# deb-src http://us.archive.ubuntu.com/ubuntu/ hirsute main restricted

## Major bug fix updates produced after the final release of the
## distribution.
deb http://us.archive.ubuntu.com/ubuntu/ hirsute-updates main restricted
# deb-src http://us.archive.ubuntu.com/ubuntu/ hirsute-updates main restricted

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team. Also, please note that software in universe WILL NOT receive any
## review or updates from the Ubuntu security team.
deb http://us.archive.ubuntu.com/ubuntu/ hirsute universe
# deb-src http://us.archive.ubuntu.com/ubuntu/ hirsute universe
deb http://us.archive.ubuntu.com/ubuntu/ hirsute-updates universe
# deb-src http://us.archive.ubuntu.com/ubuntu/ hirsute-updates universe

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu 
## team, and may not be under a free licence. Please satisfy yourself as to 
## your rights to use the software. Also, please note that software in 
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
deb http://us.archive.ubuntu.com/ubuntu/ hirsute multiverse
# deb-src http://us.archive.ubuntu.com/ubuntu/ hirsute multiverse
deb http://us.archive.ubuntu.com/ubuntu/ hirsute-updates multiverse
# deb-src http://us.archive.ubuntu.com/ubuntu/ hirsute-updates multiverse

## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
deb http://us.archive.ubuntu.com/ubuntu/ hirsute-backports main restricted universe multiverse
# deb-src http://us.archive.ubuntu.com/ubuntu/ hirsute-backports main restricted universe multiverse

## Uncomment the following two lines to add software from Canonical's
## 'partner' repository.
## This software is not part of Ubuntu but is offered by Canonical and the
## respective vendors as a service to Ubuntu users.
# deb http://archive.canonical.com/ubuntu hirsute partner
# deb-src http://archive.canonical.com/ubuntu hirsute partner

deb http://security.ubuntu.com/ubuntu hirsute-security main restricted
# deb-src http://security.ubuntu.com/ubuntu hirsute-security main restricted
deb http://security.ubuntu.com/ubuntu hirsute-security universe
# deb-src http://security.ubuntu.com/ubuntu hirsute-security universe
deb http://security.ubuntu.com/ubuntu hirsute-security multiverse
# deb-src http://security.ubuntu.com/ubuntu hirsute-security multiverse

# This system was installed using small removable media
# (e.g. netinst, live or single CD). The matching "deb cdrom"
# entries were disabled at the end of the installation process.
# For information about how to configure apt package sources,
# see the sources.list(5) manual.

来源

然后我就跑了

sudo apt update && sudo apt full-upgrade && sudo apt dist-upgrade

然后我的系统和所有内容都更改为 21.04

那么,这可能就是大脑的规模有点大吧?

这会损害我的系统吗?有什么好处吗?会有什么问题?

  • 我的所有软件包都已升级,并且安装了新的软件包。

  • 我的系统已更新

  • 我只是想知道这是否有害或者会产生坏处。

  • 说实话,升级只需要 1804 Mb,所以它轻得多。

  • 到目前为止(使用了两个小时)没有问题。

答案1

恭喜,您发现了在 Debian 版本之间迁移的原始 Debian 方法:编辑源然后运行dist-upgrade

Ubuntudo-release-upgrade方法使用了dist-upgrade底层技术,但还包括一些大多数用户可以欣赏的附加功能:

  • 标准化新的 sources.list,并自动编辑该文件。
  • 禁用 PPA 以防止升级中断。
  • 新包安装后自动删除。
  • 需要时进行脚本迁移。
  • 快速刷新
  • 常见的升级路径在预发布期间经过志愿者的反复测试和调试

这会造成危害或者带来坏处吗?

当然。如果你不明智地使用一组新资源,你很容易就会破坏你的系统。

Apt 是一款出色而优雅的工具,但它并非聪明的它会尽力按照你的命令去做,不管这个命令有多么愚蠢。

使用 dist-upgrade 来升级未经测试版本之间的路径——例如从 20.04 到 21.10。Apt 可以做到这一点。但它没有经过测试。也许它会运行良好;也许不会。您可能会遇到其他人无法重现的意外问题。我们没有测试它(这就是“未经测试”的意思)。您正在测试它。

一般来说,调试未经测试的 dist-upgrades 导致的严重故障会浪费大家的时间——某些路径是经过测试和支持的;如果离开这些标记的路径,你就得靠自己了。直接重新安装所需的 Ubuntu 版本会更快、更简单。如果你在安装过程中注意,你可以覆盖 Ubuntu 并保留数据。

如果一群 dist-upgrade 爱好者想要聚在一起调试额外的升级路径并提供支持,我们欢迎他们。当前系统由志愿者测试人员的数量和可用的开发人员小时数决定。

答案2

是的,它可以工作,但也可能失败。Ubuntu 不是 Debian,它有工具来发布升级你的系统 (并确保更高的成功率)。

我用发展在这个盒子上发布(即目前果酱);通常我自己在前一个版本发布后大约 30 小时发展发布(或需要存档已设置,base-files并且一些关键软件包已准备就绪)。如果do-release-upgrade -d尚未设置(这经常发生),我会做你做过的事这个框。当然,我在执行此操作之前会进行一些检查;因此您的成功率可能取决于您执行的检查(许多这些检查以及更多检查 [例如确保软件包以正确的顺序升级] 是通过do-release-upgrade&完成的upgrade-manager)。

您还可以重新安装而不会丢失任何数据文件,并让重新安装自动添加回您的附加软件包(即那些标记为手动安装);我经常这样做,因为我参与了 QA 测试,并且对用于支持目的的盒子使用重新安装(还有我自己的一些)因为它升级了我的系统并通过 QA 测试安装完成。(通过重新安装进行升级也会倒退,但可以做一些功课以确保没有数据问题)例如当时髦的或 20.10 已达到 EOL;我刚刚做了顽皮的QA 测试安装,使该安装成为我的 21.10 支持框(快速安装实现了 2 倍do-release-upgrade步骤;我没有丢失音乐,我选择的音乐播放器(默认安装时未安装) 等,并且只用了所需时间的一小部分,还完成了 QA 测试)。安装不需要破坏性——但这并不意味着您不应该备份;很容易犯错误。

仅供参考:如果盒子在发展发布 (不包括这个我的主电脑);我实际上并没有升级这些系统,但是通过重新安装升级所以我可以在升级软件包的同时完成 QA 测试。目前的开发版本是果酱&焦点(即下一个20.04.4发布)。最近几个月我也换了一个盒子21.04, 到顽皮的/21.10 返回20.04.3, 到21.10.. 有些路径无法通过发布升级,也没有丢失任何音乐,也没有丢失任何软件包!手动安装使用第三方软件包时,体验可能会有所不同;在 QA-boxes 上,我避免使用第三方软件包

相关内容