Debian系统更新实现

只是想简单更新一下Debian,没有想到一下子遇到这么多错误过不去。

root@Opensource:~# apt update

Ign:1 cdrom://Debian GNU/Linux 12.6.0 _Bookworm_ - Official amd64 DVD Binary-1 with firmware 20240629-10:19 bookworm InRelease

Err:2 cdrom://Debian GNU/Linux 12.6.0 _Bookworm_ - Official amd64 DVD Binary-1 with firmware 20240629-10:19 bookworm Release

Please use apt-cdrom to make this CD-ROM recognized by APT. apt-get update cannot be used to add new CD-ROMs

Get:3 https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian bookworm InRelease 47.0 kB

Err:3 https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian bookworm InRelease

The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 7EA0A9C3F273FCD8

Get:4 https://download.docker.com/linux/debian bookworm InRelease 47.0 kB

Get:5 https://download.docker.com/linux/debian bookworm/stable amd64 Packages 45.3 kB

Reading package lists... Done

E: The repository 'cdrom://Debian GNU/Linux 12.6.0 _Bookworm_ - Official amd64 DVD Binary-1 with firmware 20240629-10:19 bookworm Release' does not have a Release file.

N: Updating from such a repository can't be done securely, and is therefore disabled by default.

N: See apt-secure(8) manpage for repository creation and user configuration details.

W: GPG error: https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian bookworm InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 7EA0A9C3F273FCD8
E: The repository 'https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian bookworm InRelease' is not signed.

N: Updating from such a repository can't be done securely, and is therefore disabled by default.

N: See apt-secure(8) manpage for repository creation and user configuration details.

W: https://download.docker.com/linux/debian/dists/bookworm/InRelease: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details.

......

一.解除cdrom错误问题

最前面的错误是因为cdrom的问题,在sources.list中将cdrom源用#注释掉。

root@Opensource:~#nano /etc/apt/sources.list

成功解决cdrome问题。

二.解决公钥的问题

在网上搜到解决方案是获取公钥。
失败1:

root@Opensource:~# apt-key adv --keyserver keyserver.ubunto.com --recv-keys 7EA0A9C3F273FCD8

Warning: apt-key is deprecated. Manage keyring files in trusted.gpg.d instead (see apt-key(8)).

Executing: /tmp/apt-key-gpghome.MJi3idqjeo/gpg.1.sh --keyserver keyserver.ubunto.com --recv-keys 7EA0A9C3F273FCD8

gpg: keyserver receive failed: No name

apt-key降级了,失败,换成gpg命令
失败2:

root@Opensource:~# gpg --keyserver keyserver.ubunto.com --recv-keys 7EA0A9C3F273FCD8

gpg: directory '/root/.gnupg' created

gpg: keybox '/root/.gnupg/pubring.kbx' created

gpg: keyserver receive failed: No name

还是失败,换一个公钥服务器,还是失败。
失败3:

root@Opensource:~# gpg --keyserver keyring.debian.org --recv-keys 7EA0A9C3F273FCD8

gpg: no valid OpenPGP data found.

gpg: Total number processed: 0

再换公钥服务器,成功。

root@Opensource:~# gpg --keyserver hkps://keys.openpgp.org --recv-keys 7EA0A9C3F273FCD8

gpg: key 8D81803C0EBFCD88: new key but contains no user ID - skipped

gpg: Total number processed: 1

gpg: w/o user IDs: 1

再次update,还是同样的错误

root@Opensource:~# apt update

Get:1 https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian bookworm InRelease 47.0 kB

Err:1 https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian bookworm InRelease

The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 7EA0A9C3F273FCD8
失败4:

试着将docker的源也注释掉,换一个源试试

root@Opensource:~# nano /etc/apt/sources.list

root@Opensource:~# echo "deb arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg \
https://download.docker.com/linux/debian \
bookworm stable" | sudo tee /etc/apt/sources.list.d/docker-official.list
deb arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg https://download.docker.com/linux/debian bookworm stable

再次update,还是同样的错误
失败5:

手工下载密钥

root@Opensource:~# curl -fsSL https://download.docker.com/linux/debian/gpg | \sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

这次提示错误变了。提示存在冲突,搞多了乱了。

root@Opensource:~#apt update

E: Conflicting values set for option Signed-By regarding source https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian/ bookworm: /usr/share/keyrings/docker-archive-keyring.gpg != /usr/share/keyrings/docker-ce.gpg

E: The list of sources could not be read.

成功:

查找出重复内容

root@Opensource:~#grep -r "mirrors.tuna.tsinghua.edu.cn/docker-ce" /etc/apt/sources.list /etc/apt/sources.list.d

/etc/apt/sources.list:#deb https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian bookworm stable

/etc/apt/sources.list:deb arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian bookworm stable

/etc/apt/sources.list.d/docker.list:deb arch=amd64 signed-by=/usr/share/keyrings/docker-ce.gpg https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian bookworm stable

使用编辑器用#注释掉多余的。

root@Opensource:~# nano /etc/apt/sources.list.d/docker.list

终于看到有5个包可以更新了。

root@Opensource:~# apt update

Get:1 https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian bookworm InRelease 47.0 kB

Get:2 https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/debian bookworm/stable amd64 Packages 45.3 kB

Hit:3 https://download.docker.com/linux/debian bookworm InRelease

Fetched 92.3 kB in 1s (101 kB/s)

Reading package lists... Done

Building dependency tree... Done

Reading state information... Done

5 packages can be upgraded. Run 'apt list --upgradable' to see them.

三.更新

查看更新包

root@Opensource:~# apt list --upgradable

root@Opensource:~# apt upgrade

但是更新的都是docker,Debian自己的更新包一个都没有,原因是原debian的cdrom源被我注释掉,也没有添加新的更新源。

root@Opensource:~# nano /etc/apt/sources.list.d/docker.list

将下面这些更新源添加进去

deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm main contrib non-free non-free-firmware

deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-updates main contrib non-free non-free-firmware

deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-backports main contrib non-free non-free-firmware

deb https://mirrors.tuna.tsinghua.edu.cn/debian-security bookworm-security main contrib non-free non-free-firmware

更新

root@Opensource:~#apt update

root@Opensource:~# apt upgrade

启用自动更新

root@Opensource:~#apt install unattended-upgrades

root@Opensource:~#dpkg-reconfigure unattended-upgrades

相关推荐
乘云数字DATABUFF3 天前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
荣--5 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森5 天前
动手实战学 Docker — 从零到集群编排完全指南
运维
Avan_菜菜6 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
SelectDB7 天前
Litefuse 开源并推出单进程轻量模式,25 秒就能跑起来的 Agent 可观测与评估平台
运维·后端·自动化运维
XIAOHEZIcode8 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
用户0328472220709 天前
如何搭建本地yum源(上)
运维
大树8812 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠12 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质12 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务