温馨提示×

如何筛选Debian Backlog

小樊
40
2026-08-11 03:54:35
栏目: 智能运维

在 Debian 生态里,“Backlog”通常指的是软件包或发行版维护中尚未处理的工作项,最常见于 Debian Release Team / Release Critical (RC) bug backlog。下面按不同场景说明如何筛选 Debian Backlog,并给出实用命令与思路。


1️⃣ 理解 Debian 中的 Backlog 类型

类型 说明
Release Critical (RC) bugs 会阻碍 Debian 发行(如 serious, grave, critical
Release Team backlog 等待 RM(Release Managers)审批的过渡、移除、解冻请求
Package maintenance backlog 包维护者未处理的 bug / 更新
Installer / d-i backlog Debian Installer 相关任务
Documentation / i18n backlog 文档或翻译待处理

你问的通常是 RC bug backlog


2️⃣ 从 Debian Bug Tracking System(BTS)筛选

✅ 使用 BTS 查询语法(推荐)

Debian BTS 支持 URL 查询:

https://bugs.debian.org/cgi-bin/pkgreport.cgi?

示例 1:查看所有 RC bug(Backlog 核心)

https://bugs.debian.org/cgi-bin/pkgreport.cgi?severity=serious;severity=grave;severity=critical

示例 2:只看 未修复的 RC bug

https://bugs.debian.org/cgi-bin/pkgreport.cgi?severity=serious;severity=grave;severity=critical;pend-exc=fixed

示例 3:按 架构 筛选(如 riscv64)

https://bugs.debian.org/cgi-bin/pkgreport.cgi?severity=serious;arch=riscv64

示例 4:只看 特定包

https://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=systemd

3️⃣ 使用 UDD(Ultimate Debian Database)进行高级筛选 ✅

这是最专业、最灵活的方式

基本思路

  • UDD 是 Debian 的 SQL 数据库
  • 可筛选:
    • RC bug
    • 无维护者
    • 长期未更新
    • 特定版本
    • 特定团队

示例 SQL(RC bug backlog)

SELECT DISTINCT p.source, b.id, b.severity, b.title
FROM bugs b
JOIN bugs_packages bp ON b.id = bp.id
JOIN packages p ON bp.package = p.package
WHERE b.severity IN ('serious', 'grave', 'critical')
  AND b.pending NOT IN ('fixed', 'done')
ORDER BY p.source;

在线查询工具

  • https://udd.debian.org/
  • https://udd.debian.org/bugs/

4️⃣ 使用 devscripts + bts 命令行工具

安装

sudo apt install devscripts

查询 RC bug

bts select severity:serious

查看某个包 backlog

bts bugs PACKAGE_NAME

5️⃣ 从 Release Team 视角筛选 Backlog

目标

  • 找出 影响 Debian Testing / Stable 发布的问题

常用入口

  • https://release.debian.org/
  • https://bugs.debian.org/release-critical/

筛选条件

  • 影响 testing
  • 无 upload 计划
  • 无 maintainer 响应

6️⃣ 实战:如何“清理” Debian Backlog(贡献者视角)

步骤

  1. 选择你熟悉的包
  2. 查看 RC bug
  3. 判断:
    • 是否仍可复现
    • 是否已有 patch
  4. 提交:
    • patch
    • NMU(Non-Maintainer Upload)
    • 更新 changelog

推荐工具

reportbug
nmudiff

7️⃣ 常见误区 ⚠️

误区 说明
所有 bug 都是 backlog 只有 RC / 阻塞发布的才算
只看数量 质量(影响面)更重要
忽略架构 某些 bug 只影响 riscv64 / arm64

8️⃣ 总结一句话

筛选 Debian Backlog 的核心:用 BTS 或 UDD,按 severity + pending + architecture + package 组合过滤,聚焦 Release Critical 问题。


如果你愿意,我可以:

  • ✅ 帮你定制一个针对某个架构 / 团队 / 包的筛选条件
  • ✅ 写一条 可直接用的 UDD SQL
  • ✅ 教你如何 从 backlog 中选 bug 做贡献

只要告诉我你的具体目标即可。

0