Translation(s): English - Français - Italiano - Русский - Svenska - 简体中文 (Chinese)

DebianReleases > Debian Unstable


介绍

Debian Unstable(也以其代号“Sid”而闻名)严格意义上不是一个正式发行版本,它更像一个 Debian 发行版的滚动开发版本,包含引入 Debian 系统中的最新最好的软件包。如果你是一个硬派开发者或测试者,你应当使用这个版本。如果你是资深用户,你同样应当考虑使用 Debian Testing。下面所阐述的最佳实践同样可以应用在 testing 用户身上。

生命周期

Unstable 上游软件源每6小时更新一次。你可以使用 apt-get dist-upgrade 进行更新,当然更新前需要做好所有必需的预先准备。

Debian 开发流程中软件包传递的流程如下所示:

架构

请见 auto-builder status

常见问题

我该如何安装 Unstable?

请见 InstallFAQ

有对 testing/sid 用户的最佳实践的建议吗?

需要铭记脑海的最重要一点是要明白,当自己跟踪上了 testing 或 unstable 的版本时,其实是在参与 Debian 的开发。这意味着你应该了解 Linux、Debian 和 Debian 打包系统的方方面面,而且你应当对跟踪、修复漏洞持有兴趣。有一些工作可以帮助你作为 testing/sid 用户的生活变得更加轻松,例如:

Unstable 的当前状态如何?

在 unstable 中,有时进行软件包升级是比较安全的,有些时候则不是这样。给定一个时刻,可能有一个或多个正在进行的变迁,可能导致某些软件包无法安装,或者存在可能影响重要软件包的关键缺陷。你应当看一看 TopicDebianDevel IRC 频道的主题(这是#debian-devel的一个镜像,但是这里不是寻求用户帮助的地方;请见下一个问题),以及Debian 天气

我应该在哪里寻求 sid 相关的帮助?

你可以在托管在 http://www.oftc.net#debian-next 频道寻求帮助,或是在邮件列表上寻求帮助。

Unstable 是什么?

Unstable(不稳定版)是软件包在被其维护者上传后,并被 FTP master 确认可以发布之后所存在的地方。如果你使用一个 unstable 的软件包,你唯一能够确定的事情是它是在开发者的系统上编译的。它可能包含可怕的缺陷

当软件包符合特定的条件后,它们自动从 unstable 移向当前的“testing”(测试版)分支。要了解关于测试版的更多信息,请见testing announcement

如需获取更多信息,请见Debian 发行页面。

我该如何安装 Sid?

正规的答案是:Debian 从不发布 unstable。你只能从 testing 升级至它。你可以以编辑 /etc/apt/sources.list 的方式更改你的软件源,从 testing 变为 unstable。(如果你安装的是稳定版,你应该先升级为 testing 再升级为 unstable。)

如果你在使用从 testing 分支而来的网络安装方式,直接安装 sid 的软件包(而不是 testing 的软件包)也是可能的。这种方式不被支持,但如果你想试试看,我们也不会拦着你。到底来说这还是你自己的机器,只要别在出问题时哭鼻子就好。

Sid 有没有软件包 ''foo''?

别问我们——你所拥有的信息来源和我们一样!下面是一些信息来源:

软件包 foo 现在损坏了吗?

再一次和你说,你为什么会认为我们知道答案呢?如果它在你的机器上不工作,有很大的可能它就是坏掉了——也许你的问题在软件 foo 的使用者之间是共通的,也许这个问题独一无二,只在你的系统上才会出现。这就是 Debian 拥有一个缺陷跟踪系统(Bug Tracking System,缩写为 BTS)的原因。在你因为一个 sid 中的软件包出现问题而寻求帮助之前请先看看那里。如果你在那里没见到和你一样的情况,但是你认为这的确是软件包里的一个真实问题,那么请自己提交一份缺陷报告。如果你不确定该怎么写出好的缺陷报告的话,请阅读如何使用 reportbug 报告一个缺陷reportbug 页面。你也可以在#debian-next 中提问,或者在#debian-bugs 频道寻求帮助。

如果你没有在 BTS 中找到与你类似的问题,但是你也不确定这究竟是一个真正的缺陷或者仅仅是自己操作错误导致的问题,那么请用各种方式寻求帮助。当你提问的时候请一定要讲清楚——讲出正在使用的 Debian 版本、在使用的软件包 foo 的版本、问题发生时正在做什么(或者正打算进行什么操作),以及错误信息的内容。

如果你在为 sid 中的一个软件包的使用问题寻求帮助的时候没有预先做足功课,这只能展示出你的懒惰。我们可能不会认真对待你,直到你表现出能够认真对待并尊重 Debian 项目的态度为止。

如果软件包 foo 无法安装,这是不是一个 bug?

不是。请见Unstable 的当前状态如何?。请不要为此提交一个缺陷报告,因为这一点也不会加快问题解决的进度,只会让维护者浪费更多的时间。

我该如何获知现在使用的软件包 foo 的版本?

使用

apt-cache policy package

进行检查。

软件 foo 的 bar 版本啥时候才能进入 sid 啊?

当一切就绪后就可以了!

但是我现在就需要软件 foo 的 bar 版本!

那么你自己给它打个包吧。请参看 Developers' Corner 的信息以了解详情。

我能在稳定版上装 sid 的软件包吗?

不行。也不要自己尝试,这是浪费时间。如果你还是要这么做,你需要自己跟踪所有问题,我们会站在一旁嘲笑你的。然而,你可以尝试将它们移植回(backport)稳定版,如下文所述。

我能在 testing 中使用 sid 的软件包吗?

只要依赖关系满足就行。一般来说,sid 和 testing 两者通常是很相像的,除非在某些主要软件包中存在 RC(release critical,对发布而言致命的)缺陷,例如 libc 或者 perl,这会导致一大批东西被保持在旧版本。所以你所做的把零散的二进制软件包安装在 testing 里面的操作一般会让系统正常工作……但是你还是需要自己检查一下。

如果软件库的依赖无法满足,那么你需要自己反向移植(backport)这个软件。

我该如何将一个 sid 的软件包移植回(backport)测试版(testing)或者稳定版(stable)?

从 Debian 源代码安装(同时需要使用一些开发工具,尤其是 debhelper、devscripts 和 build-essential),然后构建软件包。

一步一步进行:

  1. 在你的 sources.list 文件中添加一个 deb-src 行
  2. apt-get update

  3. apt-get build-dep 软件包名称

  4. apt-get -b source 软件包名称

操作完成之后,所得到的 deb 包应当已经存放在当前目录下了。你可以使用dpkg -i the.deb来安装它。

是否已经有……的 backport 版本?

也许吧。先检查一下 http://backports.debian.org/Packages/ 看看是不是有人已经做过了。

我应该在我的服务器上使用 sid 吗?

你疯了吗?不要这么做!

我应该在我的桌面机器上使用 sid 吗?

如果你觉得你可以处理损坏的 Debian 系统的话,当然可以。你知道在 libpam0g 破损、阻止所有用户登陆的情况下该怎么做吗?你知道在 grub 破损导致引导过程卡死的情况下该怎么做吗?这些事情都发生过。它们可能会再次发生。

如果你想要避免这些糟糕的 bug,你可以使用 testing 作为替代。

sid 有安全更新吗?

并没有和稳定版相同意义上的那种安全更新。如果软件包的维护者修复了一个安全问题,并上传了软件包,它会以正常方式进入 sid。如果维护者没这么做,那就不会。安全小组只会关注稳定版本(有可能也会考虑测试版本(testing)……这还是一个待解决的问题)。

强烈建议 Sid 用户订阅 Debian 安全公告邮件列表。如果你订阅了的话,你也应该订阅 Debian 开发公告列表Debian 开发列表

Sid 什么时候会发布?

永远不会。Sid 会永远存在于不稳定分支。当 testing 被发布后,新的 testing 会被创建(使用新的代号),新的软件包会继续从 sid 移向 testing,正如它们先前所做的那样。

Sid 是哪一个玩具总动员的角色?

和至今为止所有的 Debian 发布版本的名称一样,Sid 发行版的名称也是来自玩具总动员的角色名称。Sid 是住在隔壁的小男孩,他破坏他的玩具,并用它们做出糟糕的作品。这个名字有时候被错误地认为是“Still In Development”的缩写。其它发行版本的代号名称会随时间而演进,从成为 testing 到成为 stable,但是 Sid 永远都只会是不稳定版(unstable)。

参见