用阿里云服务器的,谁没碰到过apt update报错的烦心事!尤其是Debian11.11版本,一执行sudo apt-get update
,要么是bullseye-backports源蹦出404,要么是MariaDB的源直接403 Forbidden,还提示“没有Release文件”“未签名”——我当初盯着屏幕愣了半天,明明装的是MariaDB10.5,源里却写着10.6,这不纯纯找罪受嘛!
后来翻了一堆文档、踩了两次坑,总算把问题彻底解决了。今天就把这套“阿里云Debian11.11 apt update错误修复+MariaDB10.5源配置”的实操步骤整理出来,新手也能跟着做,再也不用对着404报错挠头。
先搞懂问题根源:俩坑别踩!
咱先理理报错里的关键问题,不然瞎操作只会越搞越乱:
- bullseye-backports源404:Debian11(bullseye)的backports源早就停止维护了,阿里云镜像也没同步这部分内容,所以一访问就404,留着没用还报错;
- MariaDB源错配+语法问题:报错里的源是10.6版本的,还带个没解析的
$(lsb_release
变量,服务器根本识别不了,直接返回403,而且咱装的是10.5,源版本对不上肯定出问题。
一步一步修:阿里云Debian11.11 apt update+MariaDB10.5源修复
第一步:先删了那破事儿的MariaDB10.6错误源
首先得把系统里残留的MariaDB10.6源文件删掉,不然新源加进去也会冲突。
先执行命令看看哪些是MariaDB的源文件(别瞎删其他文件!):
ls /etc/apt/sources.list.d/ | grep mariadb
一般会显示mariadb.list
或者mariadb.list.save
,直接用rm命令删掉(比如删mariadb.list):
sudo rm /etc/apt/sources.list.d/mariadb.list
我之前手滑删错过其他源,大家删的时候多瞅一眼,只删带“mariadb”的文件!
第二步:加MariaDB10.5的正确阿里云源(版本必须对!)
删完错的,就得加对的——咱装的是MariaDB10.5,源也必须是10.5的,还得用阿里云的镜像,速度快还稳定。
先新建并编辑MariaDB的源文件:
sudo nano /etc/apt/sources.list.d/mariadb.list
打开编辑器后,直接复制粘贴下面这行(专门适配Debian11 bullseye,还避免了变量解析错误):
deb [arch=amd64,arm64,ppc64el] https://mirrors.aliyun.com/mariadb/repo/10.5/debian bullseye main
粘贴完按Ctrl+O
保存(按回车确认),再按Ctrl+X
退出——别嫌麻烦,这步错了后面还得报错!
第三步:导入MariaDB官方密钥(不然会提示“未签名”)
之前报错里有个“未签名”的问题,其实就是没导入官方密钥,服务器不信任这个源。
执行下面这个命令导入密钥,一步到位:
sudo apt-key adv --fetch-keys 'https://mariadb.org/mariadb_release_signing_key.asc'
等它跑完,别中途中断,不然密钥导不全还是会报错。
第四步:干掉bullseye-backports的404源(留着没用)
Debian11的backports源早就废了,阿里云也没同步,直接注释掉就行。
先编辑系统的源列表文件:
sudo nano /etc/apt/sources.list
打开后找带“bullseye-backports”的行,比如:
deb http://mirrors.cloud.aliyuncs.com/debian bullseye-backports main contrib non-free
在这行开头加个#
,把它注释掉,变成这样:
# deb http://mirrors.cloud.aliyuncs.com/debian bullseye-backports main contrib non-free
同样按Ctrl+O
保存、Ctrl+X
退出——别把bullseye-updates或者bullseye-security源也注释了,那俩是系统更新用的!
第五步:清理缓存+测试更新(看成果的时候到了!)
前面的配置都弄完了,最后一步就是清理旧缓存,再测试apt update能不能正常跑。
先清理缓存(连没用的包也一起删了,省空间):
sudo apt clean && sudo apt autoremove -y
然后执行更新命令,看看还报错不:
sudo apt-get update
如果输出里没有404、403,也没有“未签名”“没有Release文件”的提示,全是Hit或者Get——恭喜!问题彻底解决了,以后用apt装软件、更系统都顺畅得很。
最后叨叨两句
其实这问题本质就是“源版本不对”+“废弃源没清理”,咱只要记住:Debian系统的源必须和软件版本匹配(比如MariaDB10.5配10.5的源),废弃的源及时注释或删除,基本不会再碰到apt update报错。我自己的阿里云Debian11.11服务器,按这套步骤弄完,至今apt update都没出过幺蛾子。
本文版权归【万事屋】所有,转载请务必保留出处及原文链接:https://www.rei3.com
如需技术支持,可访问万事屋官网获取更多Debian、MariaDB相关实操教程。
没有回复内容