【树莓派】换源(清华源)及问题


换源

主要修改两个地方:

sudo nano /etc/apt/sources.list

这个文件注释掉原有的语句,新增国内源的语句

deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ bullseye main non-free contrib
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ bullseye main non-free contrib

这里值得说明的是,除了url部分,关键字【bullseye】需要视系统版本情况而定,可能是stretch, buster等。bullseye是截止目前比较新的。

第二个地方:

sudo nano /etc/apt/sources.list.d/raspi.list
deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ bullseye main ui

注意点同上。

问题一:缺少公钥

更新完再运行sudo apt-get update可能还会提示:

Get:1 http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian bullseye InRelease [15.0 kB]
Hit:2 http://mirrors.tuna.tsinghua.edu.cn/raspberrypi bullseye InRelease
Err:1 http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian bullseye InRelease
  The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 9165938D90FDDD2E
Reading package lists... Done
W: GPG error: http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian bullseye InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 9165938D90FDDD2E
E: The repository 'http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian bullseye InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
...

即缺少公钥,需要手动添加:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 9165938D90FDDD2E

根据错误提示修改后面那串即可。

问题二:架构不支持

运行 sudo apt-get update 出现类似如下提示:

Get:1 http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian bullseye InRelease [15.0 kB]
Hit:2 http://mirrors.tuna.tsinghua.edu.cn/raspberrypi bullseye InRelease
Fetched 15.0 kB in 1s (20.0 kB/s)
Reading package lists... Done
N: Skipping acquire of configured file 'main/binary-arm64/Packages' as repository 'http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian bullseye InRelease' doesn't support architecture 'arm64'
N: Skipping acquire of configured file 'non-free/binary-arm64/Packages' as repository 'http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian bullseye InRelease' doesn't support architecture 'arm64'
N: Skipping acquire of configured file 'contrib/binary-arm64/Packages' as repository 'http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian bullseye InRelease' doesn't support architecture 'arm64'
W: Skipping acquire of configured file 'ui/binary-armhf/Packages' as repository 'http://mirrors.tuna.tsinghua.edu.cn/raspberrypi bullseye InRelease' doesn't have the component 'ui' (component misspelt in sources.list?)
W: Skipping acquire of configured file 'ui/binary-arm64/Packages' as repository 'http://mirrors.tuna.tsinghua.edu.cn/raspberrypi bullseye InRelease' doesn't have the component 'ui' (component misspelt in sources.list?)
W: Skipping acquire of configured file 'ui/i18n/Translation-en' as repository 'http://mirrors.tuna.tsinghua.edu.cn/raspberrypi bullseye InRelease' doesn't have the component 'ui' (component misspelt in sources.list?)
W: Skipping acquire of configured file 'ui/i18n/Translation-en_HK' as repository 'http://mirrors.tuna.tsinghua.edu.cn/raspberrypi bullseye InRelease' doesn't have the component 'ui' (component misspelt in sources.list?)
W: Skipping acquire of configured file 'ui/i18n/Translation-en_HK.UTF-8' as repository 'http://mirrors.tuna.tsinghua.edu.cn/raspberrypi bullseye InRelease' doesn't have the component 'ui' (component misspelt in sources.list?)

这是树莓派架构兼容性问题。这里提出清华源官方使用说明:

首先通过 uname -m 确定你使用的系统的架构。

# armv7l 用户:编辑 `/etc/apt/sources.list` 文件,删除原文件所有内容,用以下内容取代
deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ bullseye main non-free contrib rpi
# deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ bullseye main non-free contrib rpi

# armv7l 用户如果需要开启 multi-arch 使用 arm64 软件源,需要在 `/etc/apt/sources.list` 中加上
deb [arch=arm64] http://mirrors.tuna.tsinghua.edu.cn/raspbian/multiarch/ bullseye main

# aarch64 用户:编辑 `/etc/apt/sources.list` 文件,用以下内容取代:
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian-security bullseye-security main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian-security bullseye-security main contrib non-free

# 对于两个架构,编辑 `/etc/apt/sources.list.d/raspi.list` 文件,删除原文件所有内容,用以下内容取代:
deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ bullseye main