“与源相关的选项 Signed-By 设置的值存在冲突”

“与源相关的选项 Signed-By 设置的值存在冲突”

当我尝试使用任何命令(如 sudo apt-get update)时,我得到了

E: Conflicting values set for option Signed-By regarding source https://packages.cloud.google.com/apt/ cloud-sdk: /usr/share/keyrings/cloud.google.gpg != 
E: The list of sources could not be read.
E: Conflicting values set for option Signed-By regarding source https://packages.cloud.google.com/apt/ cloud-sdk: /usr/share/keyrings/cloud.google.gpg != 
E: The list of sources could not be read

这是我cd/usr/share/keyrings/

rupeshiya@devil:/usr/share/keyrings$ ls
ubuntu-archive-keyring.gpg          ubuntu-esm-keyring.gpg
ubuntu-archive-removed-keys.gpg     ubuntu-fips-keyring.gpg
ubuntu-cloudimage-keyring.gpg       ubuntu-fips-updates-keyring.gpg
ubuntu-cloudimage-removed-keys.gpg  ubuntu-master-keyring.gpg

这是我的文件内容/etc/apt/sources.list.d/google-cloud-sdk.list

rupeshiya@devil:/etc/apt/sources.list.d$ cat google-cloud-sdk.list 
deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main
deb https://packages.cloud.google.com/apt cloud-sdk main
deb [signed-by=/usr/share/keyrings/cloud.google.gpg] http://packages.cloud.google.com/apt cloud-sdk main
deb http://packages.cloud.google.com/apt cloud-sdk main

我该如何解决这个问题?我不是一位经验丰富的 Ubuntu 用户,但我正在尝试在 Ubuntu 中实现一些功能。

答案1

您很可能已经严格按照 Cloud SDK 安装说明进行操作。有些步骤是可选的(即,您可以选择其中一个步骤)。

因此,您的 /etc/apt/sources.list.d/google-cloud-sdk.list 将有一个重复的条目:

deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt  cloud-sdk main 
deb https://packages.cloud.google.com/apt cloud-sdk main

如您所见,两行内容相同,只是一行指定了密钥环文件,而另一行未指定(因此它使用默认值)。这就是您的冲突。

您应删除包含“signed-by”的行,然后就可以了。

答案2

以下是我修复它的方法:

步骤 1:删除 sudo rm google-cloud-sdk.list

cd /etc/apt/sources.list.d
sudo rm google-cloud-sdk.list

第 2 步:重新安装 Google Cloud

sudo snap remove google-cloud-sdk
sudo apt-get install apt-transport-https ca-certificates gnupg -y
echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list
sudo curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key --keyring /usr/share/keyrings/cloud.google.gpg add -
sudo apt-get update && sudo apt-get install google-cloud-sdk
gcloud init

答案3

我遇到了同样的问题。我认为问题是你缺少这个文件:/usr/share/keyrings/ 中的 cloud.google.gpg

要修复它你可以这样做:

  1. 删除 google-cloud-sdk 以便您可以再次使用 apt-get:

    cd /etc/apt/sources.list.d

    sudo rm google-cloud-sdk.list

  2. 安装 curl(如果你没有的话):

    sudo apt-get 安装 curl

  3. 复制密钥:

    卷曲https://packages.cloud.google.com/apt/doc/apt-key.gpg| sudo apt-key --keyring /usr/share/keyrings/cloud.google.gpg 添加 -

  4. 再次将来源添加到列表:

    回显“deb [signed-by=/usr/share/keyrings/cloud.google.gpg]https://packages.cloud.google.com/aptcloud-sdk main” | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list

    回显“debhttps://packages.cloud.google.com/aptcloud-sdk main” | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list

  5. 再次安装sdk:

    sudo apt-get 更新

    sudo apt-get 安装 google-cloud-sdk

我认为这对我有用,但我也不是很有经验,所以如果有人可以提供进一步的细节,那就太理想了。

希望它有效:)

答案4

删除所有与 Google 相关的文件/etc/apt/sources.list.d/

rm -i /etc/apt/sources.list.d/*google*

然后尝试再次重新安装它们。

相关内容