sudo apt-get upgrade
instala todas as atualizações, não apenas as atualizações de segurança. Sei que posso usar o Update Manager para selecionar apenas atualizações de segurança importantes, mas existe uma maneira de fazer isso na linha de comando?
command-line
package-management
updates
security
Michael Crenshaw
fonte
fonte
linux-image-generic
pacote, dependendo da imagem atual, por exemplolinux-image-3.x.y-zz-generic
(cada versão possui um nome de pacote separado), dist-upgrade (que permite a instalação de novos pacotes para satisfazer dependências) fará essa atualização , enquanto a atualização mostrará o pacote do kernel como retido.apt-get
respostas com base para isso, considerando como proeminente ela está listada em cada servidorRespostas:
As atualizações autônomas do pacote oferecem funcionalidade para instalar atualizações de segurança automaticamente.
Você pode usar isso, mas, em vez de configurar a parte automática, pode chamá-la manualmente:
Se você deseja executá-lo silenciosamente:
NOTA: Quando você chama a atualização autônoma, deixa "s" no final.
Isso pressupõe que o pacote esteja instalado por padrão, o que provavelmente é. Caso contrário, faça:
Veja também
/usr/share/doc/unattended-upgrades/README.md
.fonte
unattended-upgrade
você provavelmente está precisando de modificar/etc/cron.daily/apt
, mas não tenho certeza que é "correta" de fazê-lounattended-upgrades
não está instalado por padrão.-v
para mensagens informativas ou-d
para mensagens de depuração. Caso contrário, o utilitário ficará muito silencioso; nesse caso, você precisará verificar os logs/var/log/unattended-upgrades
. Você também pode usar--dry-run
para simular, mas não atualizar nada. Para mais informações e outras opções, use--help
para obter a mensagem de ajuda.unattended-upgrades
hoje. obrigado!Algumas dicas sobre como gerenciar atualizações
Isso se aplica ao Debian e Ubuntu, mas seguem instruções mais específicas para o Ubuntu.
Mostrar apenas atualizações de segurança:
ou
ou
Mostrar todos os pacotes atualizáveis
Instale apenas atualizações de segurança
Notas:
Às vezes, o Ubuntu mostra atualizações de segurança como se fossem provenientes do repositório $ release-updates. É assim que me disseram, porque os desenvolvedores do Ubuntu enviam atualizações de segurança para o repositório $ release-updates, além de agilizar sua disponibilidade.
Se for esse o caso, você pode fazer o seguinte para mostrar apenas as atualizações de segurança:
e
Verifique quais serviços precisam ser reiniciados após as atualizações do pacote. Descubra quais pacotes você irá atualizar antecipadamente e agende suas reinicializações / reinicializações. O problema aqui é que, a menos que você reinicie um serviço, ele ainda pode estar usando uma versão mais antiga de uma biblioteca (motivo mais comum) carregada na memória antes de instalar o novo pacote que corrige uma vulnerabilidade de segurança ou o que for.
No entanto, lembre-se de que
checkrestart
pode listar processos que não devem necessariamente ser reiniciados. Por exemplo, o serviço PostgreSQL pode manter em sua memória a referência a um arquivo xlog já excluído, o que não é um motivo válido para reiniciar o serviço.Portanto, outra maneira mais confiável de verificar isso usando utilitários padrão é o seguinte pequeno script bash que eu descaradamente roubei de https://locallost.net/?p=233
Ele verifica se os processos em execução em um sistema ainda estão usando bibliotecas excluídas em virtude de manter cópias daquelas na memória ativa.
fonte
substitua
/etc/apt/preferences
pelo seguinte:agora um simples
apt-get upgrade
atualizará apenas todas as atualizações de segurança.Por que (e como) isso funciona: O arquivo de preferências fixará todos os pacotes da distribuição Ubuntu na prioridade 50, o que os tornará menos desejáveis do que os pacotes já instalados. Os arquivos originários do repositório de segurança recebem a prioridade padrão (500) para que sejam considerados para instalação. Isso significa que apenas os pacotes considerados mais desejáveis que os atualmente instalados são atualizações de segurança. Mais informações sobre como fixar na página de manual apt_preferences .
Você pode promover temporariamente uma certa distribuição de atualizações com a
--target-release
opção que funciona com (apt-get
eaptitude
pelo menos) que permite fixar determinadas liberações para que sejam elegíveis para atualização.Se você deseja usar isso apenas para scripts e não torná-lo padrão para o sistema, você pode colocar as regras em outro local e usá-lo:
Isso fará com que o apt procure o arquivo de preferências de um local não padrão.
O arquivo de preferências fornecido como exemplo não se aplica a repositórios de terceiros, se você também deseja fixá-los, pode usar
apt-cache policy
para determinar facilmente as chaves necessárias para fixação.fonte
apt-cache policy packagename
. Isso listará as prioridades para várias versões. Você deve ver várias linhas e diferentes prioridades. Se não houver linhas com a prioridade 50, a fixação não está afetando os pacotes em questão por algum motivo.O seguinte é confirmado no Ubuntu 14.04 LTS.
Use o
unattended-upgrade
pacote.Veja o arquivo
/etc/apt/apt.conf.d/50unattended-upgrades
. Deve haver uma seção na parte superior que é:Observe como ele foi configurado para permitir apenas atualizações autônomas de pacotes de segurança, por padrão.
Modifique o arquivo
/etc/apt/apt.conf.d/10periodic
semelhante a:Isso executará atualizações de segurança automáticas automáticas, uma vez por dia.
Agora, para executar manualmente:
sudo unattended-upgrade
.Para testar como um dry-run, sem fazer nada:
sudo unattended-upgrade --dry-run
.Fonte: https://help.ubuntu.com/14.04/serverguide/automatic-updates.html
fonte
APT::Periodic::Unattended-Upgrade "30";
faria isso - a cada 30 dias.Embora seja bastante feio, você pode desativar todos os repositórios além do repositório de segurança e, em seguida, fazer:
Não testei, mas, em teoria, ele só encontraria atualizações no repositório de segurança e as aplicaria ...
fonte
sudo apt-get update && sudo apt-get upgrade
(cancelando antes de qualquer atualização). Em seguida, reativei todos os meus repositórios, executeisudo apt-get updatee
e abri o Update Manager. Os pacotes marcados como atualizações de segurança não foram exatamente oapt-get upgrade
que foram encontrados, mas estavam muito próximos - próximos o suficiente para mim. Eu ainda gostaria de saber exatamente como o Update Manager faz isso e como fazer o mesmo na linha de comando, mas isso fará. Obrigado!apt-get update
: basta ler as entradas no repositório - de acordo com a lista existente. Necessário para verificar o que há de novo.apt-get upgrade
: todas as atualizações para pacotes instalados sem módulos do kernel. Nenhuma atualização de lançamento.apt-get dist-upgrade
: todas as atualizações para pacotes instalados também com módulos do kernel. Nenhuma atualização de lançamento.apt-get
com parâmetro-s
: somente teste, nenhuma alteração realizada.fonte
No Debians, eu uso este comando para fazer apenas atualizações de segurança:
fonte
Não consigo encontrar uma opção no apt-get ou no aptitude, no entanto, alguém teve a mesma pergunta no SuperUser. A única resposta é:
Nenhuma resposta sobre se isso funcionou no entanto.
fonte
Aqui está um script que consegue isso de algumas maneiras diferentes:
fonte