Qual é a linha de comando equivalente para o gerenciador de atualizações (Atualizador de Software)?

25

Quando eu faço

sudo apt-get update
sudo apt-get upgrade

Às vezes, o Ubuntu GUI Update Manager ainda terá alguns itens restantes. por exemplo, “Kernel genérico completo do Linuux”.

Eu sei que há também sudo apt-get dist-upgrade, mas isso afeta outras coisas.

Minha pergunta é: qual é outra opção de linha de comando que eu posso usar para atualizar o restante dos itens mostrados no gerenciador de atualizações da GUI (mas não toca em mais nada extra). Em outras palavras, estou procurando o equivalente na linha de comando.

EDIT: Esta pergunta se refere ao gerenciador de atualizações, que é equivalente ao Software Updater nas versões mais recentes (por exemplo, 16.04), como @Eliah Kagan apontou .

Xah Lee
fonte
O pacote update-manager do Ubuntu é de código aberto, portanto você pode pesquisar o código-fonte para encontrar sua resposta. Dei uma rápida olhada, mas não notei nada de incomum na maneira como eles atualizam.
Não está claro para mim depois de alguma pesquisa que existe um equivalente direto, mas há uma resposta muito esclarecedora que explica a diferença entre apt-get e aptitude . Meu palpite é que o Update Manager é semelhante ao apt-get, pois possui um conjunto de regras um pouco mais especializado que ele usa para atualizar, exceto que apt-get update, diferentemente , seu conjunto de regras permite a instalação de novos pacotes em alguns casos especializados, como atualizações do kernel. Esperemos que alguém mais entendido
cha5on
3
Eu tenho certeza que a resposta é apt-get dist-upgrade. O que você quer dizer com "que toca outras coisas"?
Flimm

Respostas:

22

Como comentou Flimm , a resposta realmente é sudo apt-get dist-upgrade( após a execução sudo apt-get update, quais ferramentas de gerenciamento de pacotes da GUI fazem automaticamente o equivalente a). Essa é pelo menos a coisa mais próxima da execução do Atualizador de Software (chamado Gerenciador de Atualizações em versões mais antigas).

A execução apt-get upgradeatualizará os pacotes que podem ser atualizados:

  • sem instalar nenhum pacote que ainda não esteja instalado em alguma versão e
  • sem remover nenhum pacote.

O Update Manager é capaz de fazer as duas coisas, por isso apt-get dist-upgradeé bem próximo disso.

  • A execução sudo apt-get dist-upgrade, por si só, não atualizará o sistema Ubuntu para uma versão mais recente. De fato, diferentemente do Debian, apt-get dist-upgradenão é uma maneira suportada de atualizar para um novo lançamento. No Debian (e no Ubuntu, embora às vezes falhe e não seja suportado), alterar todos os repositórios listados nos /etc/apt/sources.listrepositórios para o próximo lançamento e a execução sudo apt-get dist-upgradetentará atualizar para o próximo lançamento.

Como é apt-get dist-upgradepossível remover o pacote (e instalar novos pacotes que você talvez não queira), é sempre melhor examinar a descrição do que ele pretende fazer antes de pressionar y.

Portanto, embora a execução sudo apt-get -y upgradeseja geralmente razoável, a -ybandeira raramente deve ser usada dist-upgrade.

A razão que você não obter novas versões do kernel com sudo apt-get upgradeé porque cada são fornecidos por, pacotes com nomes diferentes separadas. (A versão do kernel faz parte do nome.) Isso facilita a manutenção de um kernel antigo instalado ao lado de um kernel mais novo (e a seleção entre eles no menu GRUB).

A oferta automática de novos pacotes de kernel para instalação é realizada com a instalação de um metapacote (como linux-image-generic). Quando um novo kernel é lançado para a sua versão do Ubuntu, o metapacote do kernel é atualizado e a versão atualizada desse metapacote lista o novo kernel como uma dependência (sem impedir que o kernel antigo continue sendo instalado).

Se você não quiser usar sudo apt-get dist-upgrade, sempre poderá atualizar manualmente os pacotes individuais listados como retidos quando você executou sudo apt-get upgrade. Para fazer isso, "install" eles: .sudo apt-get install packagename

Eliah Kagan
fonte
1
"O Update Manager é capaz de fazer as duas coisas, portanto o apt-get dist-upgrade está bastante próximo". - é muito claro no contexto.
mate
7

Se você deseja abrir a janela de atualização de software a partir da linha de comando (que é o que eu deduzi, principalmente porque foi por isso que procurei por isso e acabei aqui, pois esse é o meu objetivo), a fim de obter raiz. acesso à janela da GUI (eu tive um problema de permissão tentando fazer isso remotamente)

sudo update-manager
QuestionReality
fonte
Se entendi bem a pergunta, a resposta por @questionreality é a certa, pelo menos funcionou para mim. A única coisa é: como proceder com a atualização sem passar pelo prompt da janela? Quero dizer, uma operação puramente de linha de comando?
nightcod3r
1

Acabei de encontrar esta resposta, mas perdi a fonte, então não posso creditá-la ...

O comando abaixo instalará o pacote que possui o kernel como uma dependência e, portanto, atualizará o kernel escolhendo o caminho certo para fazê-lo.

Minha instalação 14.4 foi atualizada para 14.10, exceto o kernel. No meu caso, o kernel foi atualizado de 3.13.x para 3.16.x, embora seja possível que as versões 3.13.0.x possam ter atualizações. Aparentemente, o 3.13 não era um kernel LTS.

sudo apt-get install linux-image-generic
Owen
fonte
1
se o cara que fez um voto negativo nessa resposta tivesse algumas maneiras básicas de dizer "por que" teria ajudado os alunos do Linux como eu a saber por que está errado.
Clain Dsilva
0

Provavelmente é o lugar errado, mas acredito que você deseja fazer:

apt-get -f install

Isso limpará dependências pendentes


fonte
1
obrigado. isso não parece ser o caso. Eu fiz apt-get -f install, em seguida, atualizar e atualizar novamente, então vá para o gui gerente e cheque, ainda itens.
0

aptOs utilitários de linha de comando não fornecem exatamente o mesmo nível de conforto que seu equivalente GUI (ou seja software updater). Enquanto apt-get dist-upgradeo A cuida da maior parte da atualização, ou seja, o download e a instalação de pacotes mais recentes, ele não detecta a existência de uma nova versão do ubuntu (ou debian), que o utilitário ubuntu gui fará. A parte que falta é editar /etc/apt/sources.list(ou arquivos relacionados /etc/apt/sources.list.d/- mas você provavelmente não os possui), para informar aptque a nova versão existe e onde estão os repositórios.

Por exemplo, para um dist-upgradedo utopico ao vívido , você pode abrir /etc/apt/sources.list, fazer uma pesquisa rápida e substituir o utopicpara vivide, em seguida, executar o dist-upgradecomando da CLI. Um caminho mais seguro poderia ser duplicar as linhas nesse arquivo e fazer a pesquisa e substituição somente nessas linhas duplicadas, mantendo assim os repositórios utópicos.

Para mais informações, sugiro consultar a página de manual na sources.listqual descreve o formato do arquivo e como editá-lo.

didierc
fonte