之前的 iptables-nft 包现在改叫 iptables。提供旧的后端的包现在叫 iptables-legacy。
当在 iptables-nft、iptables、iptables-legacy 之间切换时,请注意检查 /etc/iptables/ 下的 .pacsave,如有需要可以用来恢复之前的规则:
/etc/iptables/iptables.rules.pacsave
/etc/iptables/ip6tables.rules.pacsave
大部分系统应该不需要任何更改,但是依赖不常见的 xtables 扩展或者旧版行为的用户应当仔细测试,有必要的话使用 iptables-legacy 包。
waydroid 软件包在 1.5.4-2 版本之前(包括 aur/waydroid)会在运行时创建 Python 字节码文件(.pyc),从而这些文件并未被 pacman 跟踪。这个问题已在 1.5.4-3 版本中得到修复,在新版本中已改为在打包过程中编译生成这些字节码文件。
因此,升级过程可能会与之前版本创建的无主文件 (unowned files) 产生冲突。如果您在更新过程中遇到如下错误:
error: failed to commit transaction (conflicting files)
waydroid: /usr/lib/waydroid/tools/__pycache__/__init__.cpython-313.pyc exists in filesystem
waydroid: /usr/lib/waydroid/tools/actions/__pycache__/__init__.cpython-313.pyc exists in filesystem
waydroid: /usr/lib/waydroid/tools/actions/__pycache__/app_manager.cpython-313.pyc exists in filesystem
你可以用以下命令安全地覆盖这些文件:
pacman -Syu --overwrite /usr/lib/waydroid/tools/\*__pycache__/\*
我们计划今天(2月3日)将 glibc 及其相关组件更新至稳定版。安装此更新后,Discord 客户端将显示红色警告,提示安装已损坏(the installation is corrupt)。
该问题已在 Discord 的 canary 版本中修复。如果您依赖音频功能,建议使用 canary 版本、从浏览器登录或使用 flatpak 版本,直至稳定版 Discord 发布修复更新。
目前未接到文字聊天功能受影响的报告。
我们想提醒大家 rsync 发布了安全版本更新 3.4.0-1 ,已经在公告 ASA-202501-1 中所描述。
攻击者仅需要 rsync 服务器的匿名读取权限,比如公共镜像站,就可在服务器端的机器上执行任意代码。并且,攻击者可以控制受影响的服务器端,然后在连接上该服务器的客户端读写任意文件。据此可以获取敏感信息,比如 OpenGPG 和 SSH 的私钥,并且可以通过写入 ~/.bashrc 或 ~/.popt 文件的方式执行恶意代码。
我们强烈建议所有在执行 3.4.0-1 之前版本的 rsync 守护进程或者客户端的用户立刻升级系统并重启。以及因为 Arch Linux 镜像站通常使用 rsync 同步更新,我们强烈建议所有镜像站管理员立刻行动,即便这些镜像站中提供的包文件本身是被加密签名保护的。
所有 Arch Linux 维护的基础设施服务器和镜像服务器已经更新修复。
以前 Arch Linux 打包用的源码(比如PKGBUILD文件)一直没有写明协议,这潜藏着问题。明确指定协议可以澄清这种不确定性。
根据 RFC 40 我们同意把所有打包用的源码授权为非常开放的 0BSD 协议。这项变更不会限制你能用打包源码做的事情。请参阅 RFC 以了解缘由和之前的讨论。
在做出变更之前,我们想给贡献者一个提出反对声音的渠道。从2024年11月19日起,为期一周时间,贡献者们将收到一封邮件通知,其中会列出他们所做的所有贡献。
- 如果你收到邮件并且同意这次变更,那么不需要你那边进行任何操作。
- 如果你不同意,那么请回复邮件,然后我们会一起协商一个方案。
如果你之前为 Arch Linux 打包做出过贡献但没有收到邮件通知,请联系我们 package-sources-licensing@archlinux.org 。
随着 7.0.0 版本的发布,pacman 增加了以单独的低权限用户身份来下载软件包的功能。
然而,对于使用本地仓库的用户,这可能意味着下载用户无法访问相关文件。要解决此问题,可以将这些文件和文件夹分配给 alpm 组,并确保相关文件夹设置了可执行权限(+x)。
$ chown :alpm -R /path/to/local/repo
请记得合并 .pacnew 文件以应用新的默认设置。
pacman 还引入了一个更改,以提高使用 .gitattributes 文件的 git 仓库的校验和稳定性。使用 git 源码的 PKGBUILD 可能需要一次校验和更改。
最近我们举办了项目负责人选举,前一任项目负责人 Levente “anthraxx” Polyák 再次参选,而没有别人参选。
因此根据选举规则他再任一届任期。
Arch Linux 项目负责人的职责包括作出一些决策(当没法达成共识时),处理和SPI相关的财政事务,以及整体的项目任务管理。
恭喜 Levente 并希望这一届任期也会是顺利的一届!🥳
简单讲:立即升级系统和容器镜像!
大家可能已经听说了 [1],xz 上游发布的 5.6.0 和 5.6.1 版本的代码包(tarball)中含有添加后门的恶意代码。
Arch Linux Security Tracker 记录了该漏洞 [2]。
xz 软件包旧于 5.6.1-2 的版本(即 5.6.0-1 和 5.6.1-1)包含该后门。
以下发布内容(release artifacts)也包含了受影响的 xz 版本:
- 安装镜像:
2024.03.01 版
- 虚拟机镜像:
20240301.218094 和 20240315.221711 版
- 容器镜像:任何 2024-02-24 到 2024-03-28 之间(包括这两个日期)构建的版本
受影响的发布内容已经从我们的镜像站上移除。
强烈建议不要使用受影响这些受影响的发布内容。请下载当前的最新版本!
升级系统
如果你的系统当前安装了 xz 5.6.0-1 或 5.6.1-1,强烈建议你立即进行完整系统升级:
pacman -Syu
升级容器镜像
要确定否正在使用受影响的容器镜像,使用以下命令(podman 用户):
podman image history archlinux/archlinux
或者(docker 用户):
docker image history archlinux/archlinux
所有旧于 2024-03-29 且新于 2024-02-24 的 Arch Linux 容器镜像都受到了影响。
使用以下命令升级受影响的容器镜像到最新版本(podman 用户):
podman image pull archlinux/archlinux
或者(docker 用户):
docker image pull archlinux/archlinux
升级之后,请确保重新构建基于受影响版本的任何容器镜像,并检查所有运行中的容器!
sshd 认证绕过 / 代码执行问题
根据上游报告 [1]:
openssh 不直接使用 liblzma。但 debian 和其他几个发行版对 openssh 打了补丁,引入了 systemd 通知支持,而 libsystemd 确实依赖于 lzma。
Arch 并不直接将 openssh 链接到 liblzma,因此这种攻击途径是不可能的。可以通过以下命令来确认这一点:
ldd "$(command -v sshd)"
但是,出于谨慎,我们建议用户通过升级系统/容器镜像移除恶意代码 —— 因为可能有其他还没有被发现的后门利用方法。
archlinuxcn 社区源的 keyring 包 archlinuxcn-keyring 由 farseerfc 的 key 签署验证,而 Arch Linux 官方 keyring 中包含了 farseerfc 的 key 。自12月初 archlinux-keyring 中删除了一个退任的 master key 导致 farseerfc 的 key 的信任数不足,由 GnuPG 的 web of trust 推算为 marginal trust,从而不再能自动信任 archlinuxcn-keyring 包的签名。
如果你在新系统中尝试安装 archlinuxcn-keyring 包时遇到如下报错:
error: archlinuxcn-keyring: Signature from "Jiachen YANG (Arch Linux Packager Signing Key) " is marginal trust
请使用以下命令在本地信任 farseerfc 的 key 。此 key 已随 archlinux-keyring 安装在系统中,只是缺乏信任:
sudo pacman-key --lsign-key "farseerfc@archlinux.org"
之后继续安装 archlinuxcn-keyring :
sudo pacman -S archlinuxcn-keyring
我们很高兴地宣布 bugtracker 到 GitLab 的迁移已经完成!🥳
感谢每个在迁移过程中提供了帮助的人。
这意味着 GitLab 上的软件包仓库的 issue tracker 和 merge request 现在已经被启用了。
在此之后,旧版的 bugtracker 将会被关闭。但是出于归档相关的原因,我们会为其提供一份静态副本,如此,链接(比如这个随机选取的 Task #56716)将会保持稳定可用。被迁移的 bug 的评论区会留有一个关闭评论区的评论,该评论会提供一个指向 GitLab 的新 URL。
软件包的打包 bug 现在在对应软件包的打包资源仓库中创建。archlinux.org 的软件包页面上的 “Add a new Bug” 按钮现在将会自动将你引导到正确的地方去创建 issue。在此之后,工作流基本上和原先的一致。首先,我们的 Bug Wrangler 们会查看并分类 issue,然后它们将会被交由对应的 Package Maintainer 们去处理。一个完整的 issue 列表可以在这里找到。
如果你没有一个(授权认证了我们的 SSO 服务的)GitLab 帐号的话,你可以像 banner 中建议的那样使用你想要的用户名来写一份邮件发送到 accountsupport@archlinux.org。