最稳方式是手动编辑 /etc/apt/sources.list 并确认系统版本,先备份、再替换所有源(含 security)、最后导入对应 GPG 密钥并执行 sudo apt update 验证生效。

直接改 /etc/apt/sources.list 最稳,别信一键脚本自动识别
改源这事,手动编辑配置文件比运行不明脚本更可控。所谓“一键适配多发行版”的脚本,常因系统代号识别不准(比如把 kali-rolling 误判为 jammy)导致 apt update 报错或包冲突。你得自己确认系统版本再动手。
- 先查代号:
lsb_release -sc(Ubuntu/Debian)或cat /etc/os-release | grep VERSION_CODENAME - 备份必须做:
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak - 别用
gedit或图形编辑器——服务器没桌面环境;用nano或vim更靠谱 - Kali 用户注意:它用的是
kali-rolling,不是 Ubuntu 的jammy或noble,清华源地址必须带kali-rolling
sed 批量替换容易漏掉 security 源
很多人只跑一句 sudo sed -i 's|http://archive.ubuntu.com|https://mirrors.aliyun.com|g' /etc/apt/sources.list,结果 apt update 还是卡在 http://security.ubuntu.com 上——这个域名不在原文件里显式出现,而是由 apt 自动拼接的,但部分镜像站(如阿里云)没同步 security 子路径,必须单独处理。
Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。
- 补上这句:
sudo sed -i 's|http://security.ubuntu.com|https://mirrors.aliyun.com/ubuntu-security|g' /etc/apt/sources.list - 清华源更省事:
https://mirrors.tuna.tsinghua.edu.cn/ubuntu/已包含 security 路径,不用额外改 - 如果用了
deb-src行,sed默认不匹配,得加-i参数并确保正则覆盖所有行
NO_PUBKEY 错误不是换源失败,是密钥没跟上
换完源执行 sudo apt update 出现 NO_PUBKEY ABCDEF1234567890,说明镜像站用了新 GPG 密钥签名,但本地没导入。这不是源地址写错了,是验证环节断了。
- 提取密钥 ID:
ABCDEF1234567890(从错误信息里直接复制) - 老方法已弃用:
sudo apt-key adv --recv-keys在较新系统会警告 deprecated - 正确做法:用
gpg下载并安装到/usr/share/keyrings/,再在sources.list对应行末尾加[signed-by=/usr/share/keyrings/abcde-f1234567890.gpg] - 清华 Kali 源密钥可直接下载:
curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/kali/kali-rolling.asc | sudo gpg --dearmor -o /usr/share/keyrings/kali-archive-keyring.gpg
CentOS/RHEL 系别碰 yum-config-manager,它不改 baseurl
yum-config-manager --enable 或 --disable 只开关 repo,不改镜像地址。真要换源,得进 /etc/yum.repos.d/ 直接改 .repo 文件里的 baseurl 或 mirrorlist。
- 别删整个
CentOS-Base.repo,先sudo cp CentOS-Base.repo CentOS-Base.repo.bak - 推荐直接下载官方镜像配置:
sudo curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo(注意版本号匹配) - 改完必须清缓存:
sudo dnf clean all && sudo dnf makecache,否则旧索引还在内存里 - RHEL 9+ 和 Rocky Linux 9 默认用
dnf,命令同上;CentOS 7 仍用yum,但makecache是 dnf 特有,得用yum makecache
apt policy 或 dnf repolist 输出里看到域名变成 mirrors.tuna.tsinghua.edu.cn 或 mirrors.aliyun.com 才算真正生效。中间任何一步跳过备份、忽略密钥、漏掉 security 域名,都会让后续安装包报错,而且错误提示往往不指向根源。

















