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

相关推荐
青禾8376 小时前
Linux 操作系统入门指南:从目录结构到常用命令
linux·运维·服务器
zhengqweasd7 小时前
流量没跑满、带宽空闲,业务依然卡顿
运维·服务器·网络
Y3815326628 小时前
Docker Compose 服务依赖与健康检查:healthcheck 让容器按正确顺序启动
运维·docker·容器
稳联技术老娜8 小时前
伺服内嵌EtherNet IP方案:嵌入式小板SPI通讯固件Demo程序适配改造
运维·服务器·网络
en.en..9 小时前
Linux系统编程:fcntl 与 ioctl
linux·运维·服务器
荣合技术服务10 小时前
Codex 实战:用 AI 写运维脚本
运维·codex
李昊哲小课10 小时前
Deepin 25 上安装 Docker CE 实战记录
运维·docker·容器·deepin
pingglala10 小时前
ubuntu-nat模式不能上网解决方法
linux·运维·ubuntu
一技安身11 小时前
【信创】外网aarch64终端安装deepseek Ragflow 迁移至内网银河麒麟服务器
运维·服务器
考虑考虑12 小时前
ElasticSearch索引命令
运维·后端·elasticsearch