Esta resposta se aplica ao Linux Mint 18.2 e posteriores, embora eu tenha testado apenas para 18.3.
Uma ferramenta de linha de comando chamada mintupdate-tool
agora está incluída na distribuição. É anunciado nas notas de versão do 18.2 como "Esta ferramenta suporta todos os recursos disponíveis na interface do usuário, incluindo seleção de nível, atualizações de segurança, atualizações do kernel e lista negra". Essa "interface do usuário" refere-se ao Update Manager e essa afirmação está longe de ser verdadeira, mas é um grande passo à frente.
Não há man
página para essa ferramenta, então:
$ mintupdate-tool --help
usage: mintupdate-tool [-h] [-k | -nk] [-s] [-r] [-d] [-y]
[--install-recommends] [-l LEVELS]
command
positional arguments:
command command to run (possible commands are: list, upgrade)
optional arguments:
-h, --help show this help message and exit
-k, --kernel ignore settings and include all kernel updates
-nk, --no-kernel ignore settings and exclude all kernel updates
-s, --security ignore settings and include all security updates
-r, --refresh-cache refresh the APT cache
-d, --dry-run simulation mode, don't upgrade anything
-y, --yes automatically answer yes to all questions
--install-recommends install recommended packages (use with caution)
-l LEVELS, --levels LEVELS
ignore settings and restrict to this list of levels
As preferências do Update Manager determinam o comportamento padrão. Essas preferências estão no dconf
data store do usuário ativo (schema com.linuxmint.updates ), então prefacing o comando com plain sudo
não altera isso. Isso é importante porque as atualizações não são possíveis sem privilégios de root.
Aviso : não há como excluir atualizações de segurança se a inclusão delas estiver ativada nas preferências do Gerenciador de Atualizações.
A análise de opções para "--evels" é um pouco desleixada e não óbvia. LEVELS é uma string que é pesquisada pela aparência dos dígitos de 1 a 5. Não é um limite ou intervalo. Ele também não verifica caracteres inválidos, então "14", "1-4", "1,4", "4..1" e "two4u14me" significam apenas os níveis 1 e 4.
Para listar as atualizações disponíveis que seriam instaladas por padrão de acordo com as preferências do Gerenciador de Atualizações do usuário, você provavelmente desejará isso:
$ mintupdate-tool -r list
Você provavelmente não deseja a opção "-r" nos seguintes comandos para evitar surpresas.
Para executar uma execução seca do que uma atualização real com essa ferramenta faria:
$ mintupdate-tool --dry-run upgrade
Para realmente fazer a mesma atualização que obteríamos se usássemos o Update Manager sem modificar as seleções exibidas:
$ sudo mintupdate-tool upgrade
Na minha opinião, é uma supervisão significativa não incluir uma coluna do tipo de atualização para o comando "listar" como aparece no Gerenciador de Atualizações e não fornecer meios para consultar a descrição de uma atualização ou o log de alterações. Meu exemplo atual:
$ sudo mintupdate-tool -l 12345 list
4 package mesa 17.2.4-0ubuntu1~16.04.4
Essa é uma atualização de nível 4 chamada "mesa", que não é um nome de pacote, então não posso consultá-lo com outras ferramentas de linha de comando que eu conheça. Eu sei do Update Manager que essa atualização em particular inclui 9 pacotes diferentes, mas isso é trapaça.
O código-fonte .