Pule um pacote específico para atualização e prossiga para todos os outros [duplicados]

0

Estou tentando atualizar um servidor de produção depois de alguns meses, talvez. Ao atualizar o cache do apt, recebo a seguinte mensagem.

sudo apt update
Hit:1 http://tw.archive.ubuntu.com/ubuntu xenial InRelease
Hit:2 http://tw.archive.ubuntu.com/ubuntu xenial-updates InRelease
Hit:3 http://tw.archive.ubuntu.com/ubuntu xenial-backports InRelease
Get:4 http://security.ubuntu.com/ubuntu xenial-security InRelease [102 kB]                                                          
Ign:5 http://download.owncloud.org/download/repositories/stable/Ubuntu_16.04  InRelease
Hit:6 http://download.owncloud.org/download/repositories/stable/Ubuntu_16.04  Release
Get:7 http://download.owncloud.org/download/repositories/stable/Ubuntu_16.04  Release.gpg [481 B]
Ign:7 http://download.owncloud.org/download/repositories/stable/Ubuntu_16.04  Release.gpg
Reading package lists... Done 
N: Ignoring file '50unattended-upgrades.ucf-old' in directory '/etc/apt/apt.conf.d/' as it has an invalid filename extension
W: GPG error: http://download.owncloud.org/download/repositories/stable/Ubuntu_16.04  Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 47AE7F72479BC94B
E: The repository 'http://download.owncloud.org/download/repositories/stable/Ubuntu_16.04  Release' 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.

Vejo que um dos pacotes do ownloud não pôde ser verificado. Eu quero pular a atualização deste pacote por enquanto e passar para atualizar outros.

Pergunta:

  1. Devo apenas avançar com sudo apt upgrade para atualizar todos os outros?
  2. Como resolver o problema com um pacote cuja chave pública não pode ser verificada nos seguintes casos:

(i) Eu confio no pacote e quero atualizar?

(ii) Eu não quero atualizar este pacote nunca? (eu vou lidar com isso no     futuro embora).

    
por ankit7540 25.01.2017 / 07:45

1 resposta

1

Ok, antes de tudo, especialmente em servidores de produção, você deve ter apenas as listas de fontes que realmente precisa. Todo o resto deve ser removido. Em seguida, todas as listas de fontes que você fornecer devem fornecer trusted packages, e a maneira de verificar isso é fácil - todos os pacotes fornecidos são assinados por quem os fornece. Seu sistema possui chaves que podem verificar a assinatura do pacote. Essas chaves podem ser visualizadas com apt-key list . Você não tem uma chave para http://download.owncloud.org/download/repositories/stable/Ubuntu_16.04 . Vi que a chave Owncloud expirou há poucos meses e eles lançaram uma nova. Você pode obtê-lo em http://download.owncloud.org/download/repositories/stable/Ubuntu_16.04/Release.key . Faça o download wget ... e importe-o com apt-key add <filename> . Execute apt-get update para atualizar seu cache.

Próximo - você está perguntando como mascarar um pacote de ser atualizado. Isso pode ser feito com sudo apt-mark hold package_name . Espero que ajude você.

    
por 13dimitar 25.01.2017 / 08:26