当我在 Ubuntu 22.04.3 上执行命令“sudo apt update”时,总是出现此错误:
W:https://dl.google.com/linux/chrome/deb/dists/stable/InRelease:密钥环 /etc/apt/trusted.gpg.d/mysql.gpg 中的密钥将被忽略,因为该文件具有不受支持的文件类型。 W:http://security.ubuntu.com/ubuntu/dists/jammy-security/InRelease:密钥环 /etc/apt/trusted.gpg.d/mysql.gpg 中的密钥将被忽略,因为该文件具有不受支持的文件类型。 W:http://id.archive.ubuntu.com/ubuntu/dists/jammy/InRelease:密钥环 /etc/apt/trusted.gpg.d/mysql.gpg 中的密钥将被忽略,因为该文件具有不受支持的文件类型。 W:http://id.archive.ubuntu.com/ubuntu/dists/jammy-updates/InRelease:密钥环 /etc/apt/trusted.gpg.d/mysql.gpg 中的密钥将被忽略,因为该文件具有不受支持的文件类型。 W:http://id.archive.ubuntu.com/ubuntu/dists/jammy-backports/InRelease:密钥环 /etc/apt/trusted.gpg.d/mysql.gpg 中的密钥将被忽略,因为该文件具有不受支持的文件类型。 W: 签名验证时出错。存储库未更新,将使用以前的索引文件。GPG 错误:http://repo.mysql.com/apt/ubuntu jammy InRelease:由于公钥不可用,无法验证以下签名:NO_PUBKEY B7B3B788A8D3785C W:无法获取 http://repo.mysql.com/apt/ubuntu/dists/jammy/InRelease 由于公钥不可用,无法验证以下签名:NO_PUBKEY B7B3B788A8D3785C W:部分索引文件下载失败。它们已被忽略或使用旧文件代替。
有人知道如何修复这个错误吗?
答案1
简短回答:
删除mysql.list
然后重新安装。
sudo rm /etc/apt/trusted.gpg.d/mysql.gpg
sudo rm /etc/apt/sources.list.d/mysql.list
wget https://repo.mysql.com//mysql-apt-config_0.8.29-1_all.deb
sudo apt install ./mysql-apt-config_0.8.29-1_all.deb
在 弃用 后apt-key
,您无法使用旧的存储库格式,这就是您收到大量警告的原因。(旧密钥环设置在 /etc/apt/trusted.gpg.d/ 中)。应在/etc/apt/keyrings
或 中下载新的密钥环/usr/share/keyrings
。通过下载和安装 ,存储mysql-apt-config_0.8.29-1_all.deb
库mysql
将正确设置。
cat /etc/apt/sources.list.d/mysql.list
deb [signed-by=/usr/share/keyrings/mysql-apt-config.gpg] http://repo.mysql.com/apt/ubuntu/ jammy mysql-apt-config
deb [signed-by=/usr/share/keyrings/mysql-apt-config.gpg] http://repo.mysql.com/apt/ubuntu/ jammy mysql-8.0
deb [signed-by=/usr/share/keyrings/mysql-apt-config.gpg] http://repo.mysql.com/apt/ubuntu/ jammy mysql-tools
deb [signed-by=/usr/share/keyrings/mysql-apt-config.gpg] http://repo.mysql.com/apt/ubuntu/ jammy mysql-tools-preview
gpg 密钥包含在.deb
文件(postinst
脚本)中,稍后应将其放在 下/usr/share/keyrings/
。