Quais as diferenças entre update, upgrade e dist upgrade?

Iniciado por ucastrobr, 25 de Agosto de 2010, 23:44

tópico anterior - próximo tópico

ucastrobr

sudo apt-get update - Execute este comando se você mudou o /etc/apt/sources.list ou /etc/apt/preferences. Também execute-o periodicamente para ter a certeza que sua lista de fontes fique sempre atualizada.

É possível  atualizar o sistema diretamente via linha de comando, usando o

sudo apt-get update; sudo apt-get upgrade

Ou o:

sudo apt-get update; sudo apt-get dist-upgrade

A diferença entre os dois é que o "apt-get upgrade" deve ser utilizado sempre que você quer atualizar todos os pacotes para as versões mais recentes enquanto o "apt-get dist-upgrade" faz uma atualização completa de todo o sistema operacional. De uma maneira geral, utilizamos o "upgrade" para instalar atualizações de segurança e outras atualizações de rotina (igual a um service pack do rwindows)e o "dist-upgrade" fará todas as atualizações, inclusive instalando pacotes novos caso necessário.

Se colocar a opção -u tanto em upgrade como dist upgrade ele mostrará os pacotes a serem instalado. Ex:
# apt-get -u dist-upgrade
     Reading Package Lists... Done
     Building Dependency Tree... Done
     Calculating Upgrade... Done
     The following NEW packages will be installed:
       cpp-2.95 cron exim gcc-2.95 libident libopenldap-runtime libopenldap1
       libpcre2 logrotate mailx
     The following packages have been kept back
       lilo
     The following packages will be upgraded
       adduser ae apt autoconf cpp debhelper dpkg-dev esound esound-common ftp gcc
       indent ipchains isapnptools libaudiofile-dev libaudiofile0 libesd0
       libesd0-dev libgtk1.2 libgtk1.2-dev liblockfile1 libnewt0 liborbit-dev
       liborbit0 libstdc++2.10-glibc2.2 libtiff3g libtiff3g-dev modconf orbit
       procps psmisc
     31 packages upgraded, 10 newly installed, 0 to remove and 1 not upgraded.
     Need to get 0B/7098kB of archives. After unpacking 3118kB will be used.
     Do you want to continue? [Y/n]




No meu caso sempre sou a favor da instalação limpa baixar a imagem do zero, mas cada um é cada um.
Spock – "After a time, you may find that having is not so pleasing a thing, after all, as wanting. It is not logical, but it is often true."
("Depois um de tempo você vai perceber que ter algo pode não ser tão prazeroso quanto deseja-lo. Isto não é lógico, mas frequentemente é verdade.")

rjbgbo

excelente ucastrobr, me esclareça pois ñ sabia sobre o uso do ;
aqui tenho o hábito de usar p/ atualizar e instalar novas versões dos pacotes já instalados:
sudo apt-get update && sudo apt-get upgrade

então poderia trocar o && pelo ;
exata/ como a sintaxe que vc postou?
Linux User #440843 | Ubuntu User #11469

clcampos

#2
Citação de: ucastrobr online 25 de Agosto de 2010, 23:44
...

sudo apt-get update; sudo apt-get dist-upgrade

A diferença entre os dois é que o "apt-get upgrade" deve ser utilizado sempre que você quer atualizar todos os pacotes para as versões mais recentes enquanto o "apt-get dist-upgrade" faz uma atualização completa de todo o sistema operacional. De uma maneira geral, utilizamos o "upgrade" para instalar atualizações de segurança e outras atualizações de rotina (igual a um service pack do rwindows)e o "dist-upgrade" ao atualizar para uma nova versão do sistema somente uma vez, e sempre melhor esperar o lançamento oficial.

No meu caso sempre sou a favor da instalação limpa baixar a imagem do zero, mas cada um é cada um.


Só uma coisa, o dist-upgrade não atualiza para uma nova versão.

Eu só uso o dist-upgrade e nunca apenas o upgrade, assim eu tenho o habito de executar (mais de uma vez ao dia) o seguinte comando:

Citarsudo apt-get update && sudo apt-get dist-upgrade

A diferença? Em linhas gerais:

O upgrade apenas atualiza todos os pacotes instalados na máquina, desde que não exista a necessidade de instalar/remover outros pacotes para satisfazer as dependências.

Já o dist-upgrade fará todas as atualizações, inclusive instalando pacotes novos caso necessário.

Para atualizar seu sistema de uma versão para outra o comando é:

Citarsudo  update-manager -d
Cristiano/Timóteo - MG
.: Como Fazer Perguntas de Forma Inteligente :.                
Com dúvida? pesquise!

zekkerj

Citação de: clcampos online 26 de Agosto de 2010, 09:09
Só uma coisa, o dist-upgrade não atualiza para uma nova versão.
Era o que eu ia dizer...

CitarEu só uso o dist-upgrade e nunca apenas o upgrade, assim eu tenho o habito de executar (mais de uma vez ao dia) o seguinte comando:

Citarsudo apt-get update && sudo apt-get dist-upgrade

A diferença? Em linhas gerais:

O upgrade apenas atualiza todos os pacotes instalados na máquina, desde que não exista a necessidade de instalar/remover outros pacotes para satisfazer as dependências.

Já o dist-upgrade fará todas as atualizações, inclusive instalando pacotes novos caso necessário.
Outra coisa que o "dist-upgrade" faz, que o "upgrade" não faz é remover pacotes.

Digamos que vc usa o pacote "xxzzy", que depende do pacote "libfoo". Se numa atualização o pacote "xxzzy" passar a depender do pacote "libbar", que é conflitante com o pacote "libfoo", ele vai ter que desinstalar "libfoo" pra instalar "libbar" no lugar.

Se eu tentar usar o "upgrade" nessa atualização, ele vai listar o "xxzzy" como "não atualizado".
Citar
Para atualizar seu sistema de uma versão para outra o comando é:

Citarsudo  update-manager -d

Eu costumo usar "do-release-upgrade". Um "do-release-upgrade -d" me atualiza pra uma versão pré-release (beta).

O "update-manager -d" permite pular versões? Um dos problemas que eu passo de vez em quando é pegar uma máquina com uma versão antiga, como o 8.04, e atualizar pra versão atual... o "do-release-upgrade" só aceita passar pra versão seguinte (8.04 -> 8.10), então trazer da versão instalada pra atual fica muito demorado, mesmo com internet rápida...
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

clcampos

O update-manager permite sim ir de LTS para LTS, sem passar pelas outras versões. Veja aqui a explicação sobre as atualizações.

Peguei o link no tópico fixo (em Notícias) sobre o 10.04 LTS, bem nas últimas páginas.

A sim, valeu por reforçar que o dist-ugrade remove pacotes. Realmente comentei que a opção  upgrade  não "instala/remove" novos pacotes, mas quando descrevi sobre o dist-upgrade não comentei o fato, o que com certeza ficou pouco claro.

Sinceramente não uso a opção upgrade a tempos, e também não conhecia o do-release-upgrade, vou ler sobre ele.

[]'s

Cristiano
Cristiano/Timóteo - MG
.: Como Fazer Perguntas de Forma Inteligente :.                
Com dúvida? pesquise!

niquelnausea

As funções do apt-get upgrade e apt-get dist-upgrade funcionam da mesma maneira com o aptitude?

ucastrobr

Já corrigi a parte da dist upgrade, obrigado clcampos, agora com respeito ao niquelnausea porque o interesse no aptitude esse pacote nem consta no Ubuntu 10.10 use o apt-get. Para instalar dependências assim como aptitude basta usar apt-get -y pacoteainstalar.
Lógico quem quiser usar sempre haverá um modo de instalar um pacote obsoleto.
Spock – "After a time, you may find that having is not so pleasing a thing, after all, as wanting. It is not logical, but it is often true."
("Depois um de tempo você vai perceber que ter algo pode não ser tão prazeroso quanto deseja-lo. Isto não é lógico, mas frequentemente é verdade.")

clcampos

É até uma vergonha eu não ter certeza, mas acho que o aptitude não vai vir no CD, mas estará nos repositórios. Será por conta de espaço?

Dai é mesmo uma pergunta, não tenho certeza.

O aptitude não é obsoleto, inclusive sendo melhor que o apt-get, o problema que o segundo é muito mais usado que o primeiro... inclusive nunca me lembro de usar o aptitude.
Cristiano/Timóteo - MG
.: Como Fazer Perguntas de Forma Inteligente :.                
Com dúvida? pesquise!

irtigor

Citação de: clcampos online 26 de Agosto de 2010, 17:30
É até uma vergonha eu não ter certeza, mas acho que o aptitude não vai vir no CD, mas estará nos repositórios. Será por conta de espaço?

É, o argumento apresentado foi que com isso eles "enxugavam" 15mb.

bred81

sudo aptitude full-upgradeé mais completo que o sudo apt-get dist-upgrade?
O que o Mario foi fazer no pscicólogo?
- Ele estava passando por uma fase difícil...

ucastrobr

#10
Citação de: bred81 online 26 de Agosto de 2010, 22:14
sudo aptitude full-upgradeé mais completo que o sudo apt-get dist-upgrade?

Entenda assim:
Apt-get

comando apt-get upgrade, depois você pode digitar o comando apt-get dist uprade seria o mais correto.

Aptitude

comando aptitude safe-upgrade e depois digitar o comando aptitude full-upgrade

Não existe diferença visto que os comandos apt-get ou aptitude irão executar a mesma função.

Fonte da pesquisa: wiki do Debian na parte Apt
Spock – "After a time, you may find that having is not so pleasing a thing, after all, as wanting. It is not logical, but it is often true."
("Depois um de tempo você vai perceber que ter algo pode não ser tão prazeroso quanto deseja-lo. Isto não é lógico, mas frequentemente é verdade.")

zekkerj

Rapaz, essa questão do "aptitude" versus "apt-get" é quase religiosa... prevejo grandes discussões se isso for mesmo à frente de não incluir os dois no CD do Maverick. ::)
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

niquelnausea

Citação de: ucastrobr online 26 de Agosto de 2010, 16:40
...agora com respeito ao niquelnausea porque o interesse no aptitude esse pacote nem consta no Ubuntu 10.10 use o apt-get. Para instalar dependências assim como aptitude basta usar apt-get -y pacoteainstalar.
Lógico quem quiser usar sempre haverá um modo de instalar um pacote obsoleto.

Justamente pelo que o zekkerj disse, é praticamente uma "questão quase religiosa" (a briga é quase tão grande quanto saber quem é melhor Windows ou Linux, Gnome ou KDE, .deb ou .rpm...), ja vi em vários fóruns a recomendação de rodar sempre o aptitude, porém eu prefiro o apt.

Dizem que o aptitude funciona melhor na questão das dependências, e principalmente nas atualizações grandes, porém ele desinstala pacotes que teoricamente não são mais necessários.

Uso o apt desde que comecei a usar Linux e nunca tive problemas, logico que algumas funções de outros gerenciadores de pacotes são interessantes (como as do Gentoo e do BSD). O que eu gostaria de ver é o deltarmp em versão .deb  :P (imaginem a diferença que não daria para atualizar do 10.04 para o 10.10 por exemplo).

ucastrobr

Spock – "After a time, you may find that having is not so pleasing a thing, after all, as wanting. It is not logical, but it is often true."
("Depois um de tempo você vai perceber que ter algo pode não ser tão prazeroso quanto deseja-lo. Isto não é lógico, mas frequentemente é verdade.")

galactus

#14
Deixando de lado questões filosóficas/religiosas quanto ao uso do apt-get/aptitude, vou ficar com a questão prática mesmo!

O que eu noto com o uso dos dois é que o aptitude é melhor mesmo no controle das dependências, principalmente na hora de remover os pacotes. O apt-get deixa mais "sujeira" para trás! E se você for fazer uma instalação básica em modo texto, o aptitude é melhor também! Ele acaba instalando mais pacotes que deixam o sistema "redondo". Exemplo, ao fazer uma instalação básica do Debian em modo texto, fui instalar o XFCE. Ao usar o apt-get, eu fiquei sem a motagem dos pen drives! Ao usar o aptitude, dica do fórum do XFCE, os pen drives eram montados automaticamente!
No controle das dependências, o apt-get não instalava os pacotes responsáveis pela montagem automática de dispositivos! Você acabava tendo que saber os nomes deles para instalar!

Então como o Ubuntu vem praticamente pronto para uso final, agora temos até assistentes para instalar os codecs, fica meio sem sentido mesmo usar o apitude nele! Mas ele ainda vai ficar nos repositórios! Eu só uso o aptitude quando faço instalações em modo texto!

E vou ser sincero com vocês, eu nuca fiz um "dist-upgrade" de uma versão para outra! Sempre fiz instalações novas!
BigLinux no Notebook  / Várias Distros Virtualizadas no PC.