Como atualizar Debian e Ubuntu com o comando apt

O comando apt, vem sendo introduzido como padrão no Debian e no Ubuntu nos últimos anos.
Embora você possa realizar todos estes procedimentos com os tradicionais apt-get ou aptitude, não vai fazer mal investir algum tempo em aprender a usar o apt.
Se quiser se aprofundar um pouco mais no assunto, sugiro que leia 10 exemplos de uso do comando apt.
Debian & Ubuntu badges together

A importância de manter o sistema atualizado

Em outro post, mostramos o quanto é importante manter seu sistema em dia.
Além disto, verificar se os repositórios estão sincronizados e o sistema atualizado é uma tarefa simples e recomendada antes de começar algum procedimento de instalação de softwares novos no seu sistema. Desta forma, se garante que novos programas cheguem e encontrem um ambiente sempre fresco.
O sistema irá avisar, automaticamente, quando houver atualizações. Mas, se você perder alguma e não quiser esperar pelo próximo aviso, pode abrir um terminal e executar o apt por conta própria.

Como atualizar o sistema com o comando apt

Este post foi escrito e testado em máquinas rodando o Debian 9 Stretch (Testing) e Ubuntu 16.04 LTS Xenial Xerus. O procedimento, para os dois casos é exatamente o mesmo.
Se você usa versões anteriores destes sistemas operacionais, leia o artigo Como atualizar o Ubuntu manualmente.
Abra o terminal e rode estes 3 comandos:

# para atualizar os repositórios
sudo apt update

# opcionalmente, se quiser ver o que será atualizado (pressione 'q' para sair da lista):
sudo apt list --upgradable | less

# por fim, para aplicar as atualizações necessárias (se houver):
sudo apt full-upgrade

Se preferir, é possível rodar tudo na mesma linha de comando, também:

sudo apt update; sudo apt full-upgrade

Você pode minimizar o terminal, enquanto o sistema baixa e atualiza os pacotes.

Qual a diferença entre apt upgrade e full-upgrade

O manual do apt vai mostrar dois métodos para realizar a atualização: através do ‘upgrade’ ou do ‘full-upgrade’.
No exemplo acima, escolhi usar o segundo — e “na vida real” é o que costumo usar sempre.
Segue as funções de cada um, de acordo com a documentação oficial:

  • upgrade — é usado para baixar e instalar atualizações disponíveis de todos os pacotes de softwares presentes no sistema — a partir das fontes, conforme a configuração contida em sources.list.
    Se houver novos pacotes disponíveis – e se forem necessários – estes serão instalados para satisfazer dependências.
    Contudo, pacotes de softwares existentes não são removidos do sistema.
    Ainda que uma atualização requeira a remoção de um pacote, esta ação terá que ser feita manualmente.
    Equivale ao apt-get upgrade.
  • full-upgrade — realiza o mesmo trabalho do método anterior, com a diferença de que este remove os pacotes que forem necessários para realizar uma atualização completa do sistema.
    Equivale ao apt-get dist-upgrade.

De forma resumida, em termos de eficiência no processo de atualização, tanto faz.
O método upgrade é mais conservador e é indicado para quem deseja se manter no lado seguro e deseja ter maior controle sobre os procedimentos.
O full-upgrade é a opção automática e indicada para quem prefere ter um sistema mais limpo, sem pacotes de softwares “sobrando” por aí.
Para finalizar, a execução periódica do comando apt, com a opção ‘autoremove’, se faz necessária nos dois casos, se quiser ter um sistema enxuto.

Como verificar e realizar atualizações no Ubuntu e no Debian

É muito comum o sistema propôr atualizações justamente no momento em que você tem tarefas importantes para fazer e (o pior de tudo…) vai precisar usar a web com alguma intensidade.
Os downloads, ocorridos durante a atualização podem ser intensos o suficiente para atrapalhar o tráfego de dados de outros aplicativos.
Por outro lado, manter o seu sistema atualizado é crucial para estar do lado seguro.
Ameaças surgem com frequência, mas os patches de segurança costumam ser criados em seguida.
Comumente, tudo o que se precisa para resolver um problema causado por um bug ou ameaça recém descobertos é atualizar os sistemas.
Se você pulou a última atualização do seu sistema ou quer verificar se existe alguma nova disponível, vou mostrar como fazer isto neste texto.
Abra o painel de configurações do sistema e localize o item Detalhes (costuma ser um dos últimos).
ubuntu 16.04 lts xenial xerus painel de configuração do sistema
No painel de Detalhes, selecione Visão geral — a primeira opção, na lista à esquerda.
captura de tela e screenshot de ubuntu 16.04 lts Xenial Xerus painel de detalhes
Por fim, clique no botão Verificar ou Instalar Atualizações.
O sistema irá pedir para autenticar novamente, uma vez que se trata de uma tarefa administrativa.
Isto é o suficiente para resolver o problema, caso o seu sistema esteja desatualizado.

Como criar datas aleatórias no MySQL

Com o uso das funções CONCAT(), FLOOR() e RAND(), é possível criar datas aleatórias no MySQL. Como o comando UPDATE, você pode efetuar a substituição de todas as datas de uma tabela por outras completamente aleatórias.
Qualquer que seja o seu motivo, imagino que você queira ter controle sobre as datas geradas aleatoriamente — que os anos, os meses e, possivelmente, os dias estejam dentro de faixas especificas.
No exemplo, abaixo, vamos criar datas em que apenas os meses serão aleatórios, variando de 1 a 12:

SELECT CONCAT('2015-',FLOOR(1+RAND()*12),'-02');
+-----------------------------------------+
| CONCAT('2015-',FLOOR(1+RAND()*12),'-02') |
+-----------------------------------------+
|  2015-2-02                              |
+-----------------------------------------+

Agora, vamos usar o ano e o dia atuais, com a função CURDATE():

SELECT CONCAT(YEAR(CURDATE()),'-',FLOOR(1+RAND()*12),'-',DAY(CURDATE()));
+------------------------------------------------------------------+
| CONCAT(YEAR(CURDATE()),'-',FLOOR(1+RAND()*12),'-',DAY(CURDATE())) |
+------------------------------------------------------------------+
| 2015-5-15                                                        |
+------------------------------------------------------------------+

Altere as queries para que se encaixem às suas necessidades.
Embora sejam válidas, as datas dos exemplos acima, não se encaixam nos padrões ISO 8601 e não poderão ser corretamente gravadas dentro de campos date ou datetime.
Para tanto, as datas teriam que ser 2015-02-02 e 2015-05-15 — ou seja, 4 dígitos na seção do ano, 2 dígitos na seção do mês e 2 dígitos na seção do dia.
Para garantir que os números dos meses e dos dias satisfaçam estas condições, seguem os exemplos anteriores, reformulados, com a inclusão da função LPAD():

SELECT CONCAT('2015-',LPAD(FLOOR(1+RAND()*12),2,'0'),'-02');
+------------------------------------------------------+
| CONCAT('2015-',LPAD(FLOOR(1+RAND()*12),2,'0'),'-02') |
+------------------------------------------------------+
| 2015-02-02                                           |
+------------------------------------------------------+

… e no segundo exemplo:

SELECT CONCAT(YEAR(CURDATE()),'-',LPAD(FLOOR(1+RAND()*12),2,'0'),'-',DAY(CURDATE()));
+-------------------------------------------------------------------------------+
| CONCAT(YEAR(CURDATE()),'-',LPAD(FLOOR(1+RAND()*12),2,'0'),'-',DAY(CURDATE())) |
+-------------------------------------------------------------------------------+
| 2015-10-16                                                                    |
+-------------------------------------------------------------------------------+

Leia mais sobre o uso das funções CONCAT() e LPAD() em Como converter strings de data para padrão ISO 8601.

Como substituir as datas de uma coluna da tabela por novas datas aleatórias

Para mudar todas as datas de uma coluna, dentro da tabela, use o UPDATE:

UPDATE clientesEstaduais SET DataCadastro = CONCAT('2015-',LPAD(FLOOR(1+RAND()*12),2,'0'),'-02');

Substitua, no exemplo acima, ‘clientesEstaduais’ pelo nome da sua tabela e ‘DataCadastro’ pelo nome da coluna cujas informações serão alteradas.
Se você quiser, pode obter a tabela ‘clientesEstaduais’ aqui.
No próximo exemplo, todos os componentes da data serão atualizados aleatoriamente (ano, mês e dia) — obedecendo os seguintes parâmetros:

  • Os anos têm que estar entre 2014 e 2016
  • Os valores referentes aos meses têm que estar comprendidos entre 1 e 12
  • Os valores dos dias, para ter alguma segurança em relação a meses com quantidade de dias diferentes, ficam compreendidos entre 1 e 27 — o que garante que nenhum fique com data inválida (por exemplo: 2016-02-31)

Veja o código:

UPDATE clientesEstaduais SET DataCadastro = CONCAT(FLOOR(2014+RAND()*3),'-', LPAD(FLOOR(1+RAND()*12),2,'0'),'-', LPAD(FLOOR(1+RAND()*27),2,'0'));

Desta vez, a gama de datas contidas na minha tabela, ficou bem mais variada:

SELECT DataCadastro FROM clientesEstaduais LIMIT 10;
+--------------+
| DataCadastro |
+--------------+
| 2016-11-07   |
| 2015-01-14   |
| 2015-09-04   |
| 2015-02-09   |
| 2014-04-07   |
| 2015-02-16   |
| 2015-05-16   |
| 2016-11-11   |
| 2014-10-07   |
| 2016-10-08   |
+--------------+

Como instalar aplicativos no Ubuntu, da linha de comando

A proposta deste artigo é suprir os iniciantes no Ubuntu com informações para instalar seus novos aplicativos.
Embora a Central de Softwares Ubuntu seja a abordagem mais simples de encontrar e instalar seus softwares, a linha de comando (no terminal) oferece mais agilidade — que não precisa estar à disposição apenas dos usuários mais avançados.
Atualização e instalação de novos softwares no Ubuntu
Se você sabe o tipo de aplicação que deseja, mas desconhece o nome do pacote de aplicativos que contém os softwares necessários, experimente ler um pouco sobre o apt-cache — um programa utilitário que ajuda a encontrar outros aplicativos pra você.

Quais são as formas mais comuns de instalar aplicativos no Ubuntu?

Tal como qualquer outro sistema operacional, há várias meios de adequar o ambiente do Ubuntu às suas necessidades e gostos, povoando-o com seus programas preferidos. Estes são os métodos mais comuns:

  • Baixar pacotes DEB — Estes são pacotes de arquivos binários, prontos para serem descompactados e instalados, cada qual em seu lugar no sistema. Já foi muito usado, mas está cedendo lugar a métodos mais seguros e eficientes de instalação.
  • Baixar tarballs — São pacotes compactados com o código fonte dos programas. Após o download, precisam ser descompactados, preparados, compilados e instalados.
    Ao contrário do que possa parecer, não é necessariamente complicado e é prática comum de usuários intermediários ou avançados.
    Clique aqui, para obter informações e dicas sobre como baixar e compilar códigos fontes de programas.
    Compilar seus programas é um método tradicional de instalação e ainda é o mais seguro, através do qual, você pode ter programas mais eficientes e estáveis instalados no seu sistema.
  • A Central de Programas — há vários aplicativos que funcionam como a Central de Programas Ubuntu. Normalmente, cada distribuição Linux tem uma versão. Todos eles funcionam de modo semelhante ao Google Play, tornando fácil encontrar o que você quer e instalar.

Inicialmente, só se usava pacotes .tar.gz (ou tarballs) para instalar programas no Linux.
os desenvolvedores da distribuição Debian criaram um sistema chamado dpkg que inclui um método de gestão dos pacotes instalados na máquina. Pouco depois, a distribuição Red Hat criou um sistema .rpm, semelhante ao do Debian.
O APT é uma evolução do dpkg, que satisfaz a necessidade de ter um sistema mais completo de gestão. Ao mesmo tempo, é mais prático e eficiente para instalar pacotes de softwares, controla as dependências, as configurações e as atualizações.
APT, quer dizer Advanced Packaging Tool — do ponto de vista do desenvolvedor é a Ferramenta Avançada de Empacotamento.

Eventualmente, você pode topar com a sugestão de baixar pacotes de instalação autoexecutáveis .bin. Tal como os arquivos .EXE, no Windows, não são um método seguro de instalação.
A menos que você tenha certeza de sua procedência, deve evitar este método a todo custo — até por que os outros são muito melhores e mais fáceis.

Como usar o apt-get para instalar novos aplicativos

Neste texto, vou mostrar o processo de instalação de aplicativos através do apt-get, na linha de comando.
junto com a Central de Programas do Ubuntu, este é método mais seguro de instalar seu programas.

A Central de Programas do Ubuntu é um frontend do aplicativo apt-get (entre outros).

Comece por abrir um console (Ctrl + Alt + T).
No terminal, você deve informar o nome do pacote de aplicativos a ser instalado. Veja um exemplo com o Gimp, um aplicativo de edição de imagens:

sudo apt-get install gimp

Como se trata de um comando administrativo, é necessários ter privilégios condizentes para realizar a instalação de softwares. Por isto usamos o sudo.
É comum ter uma lista de aplicativos que se deseja instalar no sistema. Você deve listar os nomes dos pacotes de softwares, separados por espaços, na mesma linha do comando apt-get e (se quiser) ir tomar um cafezinho:

sudo apt-get install gimp audacity libreoffice-writer libreoffice-calc

No exemplo acima, listei 4 pacotes de softwares para baixar e instalar no sistema.
Use o parâmetro -s para simular a instalação:

apt-get -s install gimp audacity libreoffice

Com a simulação, é possível ver toda a relação de pacotes que seriam instalados e o espaço a ser ocupado no final, sem precisar realizar qualquer operação concreta.
Como é possível perceber, ao simular uma instalação não é necessário ter qualquer privilégio a mais.

Manutenção do sistema APT de gestão de pacotes

A boa prática manda executar o apt-get com a opção update, sempre que você editar o arquivo /etc/sources.list e antes de instalar algum novo programa. A função desta opção é atualizar o seu sistema, sincronizando-o com os repositórios de sua distribuição.
Sua execução é simples:

sudo apt-get update

A manutenção do sistema de gestão de pacotes, envolve alguns outros comandos:

  • upgrade e upgrade-dist — Saiba como atualizar e fazer o upgrade da sua versão do Ubuntu.
  • autoremove, autoclean e clean — Saiba como fazer uma limpeza no seu sistema de gestão de pacotes de softwares.

O comando acompanhado da opção check, faz um diagnóstico no sistema, atualiza os pacotes e verifica dependências quebradas:

sudo apt-get check

LEIA TAMBÉM!

Boa sorte e divirta-se!

Como atualizar o Ubuntu manualmente

O comportamento padrão do sistema operacional detectar a necessidade de ser atualizado automaticamente.
Contudo, suas configurações permitem mudar a constância ou a periodicidade da busca por atualizações no seu sistema.
Se, por algum motivo qualquer, você precisa verificar se há necessidade de atualizar o seu sistema, usar a linha de comando é a forma mais eficiente de realizar este procedimento — e tudo pode ser feito em apenas 2 passos.

Como sincronizar o sistema com os repositórios

O primeiro passo, é sincronizar o seu sistema com os repositórios (definidos dentro do arquivo /etc/apt/sources.list).
Isto é feito com o seguinte comando:

sudo apt update

Aguarde o término da execução e siga para o próximo passo.

Ubuntu - atualização - sudo apt-get update
Clique para ampliar.

Como atualizar o sistema

Finalmente, concluído o processo anterior, já se pode atualizar o sistema:

sudo apt full-upgrade

Ao contrário do que o nome pode sugerir, este comando não faz um upgrade da distro atual para outra mais nova. Ele apenas instala as atualizações disponíveis pros pacotes de software, já presentes, na sua atual versão do Ubuntu.
Só para citar um exemplo, caso você tenha o Ubuntu 14.04 instalado, o parâmetro upgrade não vai instalar a versão 14.10 no seu computador — mas apenas as atualizações disponíveis para a versão que você está usando.
Ubuntu - sudo apt-get upgrade

Como fazer upgrade de uma versão do Ubuntu para outra

Se você chegou até este ponto, com ambições maiores, de fazer uma atualização completa de todo o sistema para uma versão mais nova do Ubuntu, deixa eu te dizer uma coisa: não faça isto!
A maneira eficiente e segura de atualizar o Ubuntu requer a formatação do seu disco rígido e, só depois, instalar tudo — do zero.
E, quando eu falo em formatação do disco rígido, me refiro também à partição /home, caso você a tenha. Faça um backup de tudo e, em seguida, formate — ao proceder assim, você terá a oportunidade de instalar um sistema de arquivos atualizado e mais eficiente.
Contudo, se você sabe o que está fazendo e deseja continuar, os comandos para fazer uma atualização de versão são os seguintes:

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

Se houver uma nova distro disponível para instalação, este comando irá fazer a transição. caso contrário, ele fará apenas uma atualização simples — igual a que ocorre com a execução do comando full-upgrade.

Divirta-se! 😉