如何以编程方式获取“testing”的 Debian 代号?

如何以编程方式获取“testing”的 Debian 代号?

根据标题,我想解析当前“测试”的 Debian 代号(例如“stretch”、“buster”、“bullseye”等)。

显然,在已安装的 Debian“测试”系统中可以采用多种方法来执行此操作(例如lsb_release -sc,在回答中指出的其他方法中)这个问题)。但是我如何在 Debian “稳定版”(甚至是替代的 Linux 发行版)上做到这一点呢?

例如,我正在运行 Debian“stable”(当前为 Debian“buster”)——如何可靠地确定“testing”当前的代号是什么?

我意识到目前“测试”=“牛眼”,但是当“牛眼”作为“稳定”发布时,情况将会改变(变为“书虫”IIRC)。

答案1

替代方法:安装软件包distro-info(拉distro-info-data),从向后移植(如果可用),然后运行:

distro-info --testing

例如,目前,在 Debian 9 oldstable 上,带有来自stretch-backports的发行版信息0.21~bpo9+1:

$ distro-info --testing
bullseye
$ distro-info --fullname --testing
Debian 11 "Bullseye"

如果包版本distro-info-data保持为stretch/oldstable 0.14,结果就会过时:buster,但那是因为它是旧稳定。预计它会是最新的稳定的为下一个测试代号,并且是上一个版本的最新版本向后移植

$ distro-info --fullname --all|tail
Debian 5.0 "Lenny"
Debian 6.0 "Squeeze"
Debian 7 "Wheezy"
Debian 8 "Jessie"
Debian 9 "Stretch"
Debian 10 "Buster"
Debian 11 "Bullseye"
Debian 12 "Bookworm"
Debian  "Sid"
Debian  "Experimental"

答案2

要回答我自己的问题,事实证明这实际上很简单......:

curl -sL https://deb.debian.org/debian/dists/testing/InRelease | grep "^Codename:" | cut -d' ' -f2

目前返回:

bullseye

相关内容