Lab 10.1 - Instalação e Uso do apt
Objetivos do Lab
Ao final deste lab, você será capaz de:
- Usar o apt para instalar pacotes
- Atualizar o sistema Ubuntu 24.04
- Gerenciar repositórios
- Resolver problemas de dependências
- Pesquisar e obter informações sobre pacotes
Duração Estimada
30-45 minutos
Pré-requisitos
- Ubuntu 24.04 instalado e funcional
- Acesso sudo
- Conexão com a Internet
- Terminal aberto
Exercício 1: Atualização do Sistema
Etapa 1: Atualizar a Lista de Pacotes
# Atualizar a lista de pacotes disponíveis
sudo apt update
# Ver os pacotes que podem ser atualizados
apt list --upgradable
Etapa 2: Atualizar os Pacotes
# Atualizar todos os pacotes instalados
sudo apt upgrade
# Atualização completa (inclui mudanças de dependências)
sudo apt full-upgrade
# Atualizar sem confirmação
sudo apt upgrade -y
Etapa 3: Verificar as Atualizações
# Ver os pacotes que podem ser atualizados
apt list --upgradable
# Ver informações de atualização
apt show nom-paquet
Exercício 2: Instalação de Pacotes
Etapa 1: Instalação Simples
# Instalar um pacote
sudo apt install htop
# Instalar vários pacotes
sudo apt install vim git curl
# Instalar sem confirmação
sudo apt install -y nom-paquet
Etapa 2: Instalação de Versão Específica
# Ver as versões disponíveis
apt-cache madison nom-paquet
# Instalar uma versão específica
sudo apt install nom-paquet=version
# Exemplo
sudo apt install nginx=1.18.0-0ubuntu1.4
Etapa 3: Instalação a partir de Arquivo .deb
# Baixar um .deb
wget https://example.com/paquet.deb
# Instalar
sudo apt install ./paquet.deb
# Ou com dpkg
sudo dpkg -i paquet.deb
sudo apt install -f # Resolver dependências
Exercício 3: Pesquisa e Informações
Etapa 1: Pesquisar Pacotes
# Pesquisar por nome
apt search nginx
# Pesquisar por descrição
apt search "web server"
# Pesquisa exata
apt search --names-only nginx
Etapa 2: Informações sobre Pacotes
# Informações detalhadas
apt show nginx
# Dependências
apt depends nginx
# Pacotes que dependem de nginx
apt rdepends nginx
# Conteúdo de um pacote
dpkg -L nginx
Etapa 3: Listagem de Pacotes
# Pacotes instalados
apt list --installed
# Pacotes disponíveis
apt list --available
# Pacotes que podem ser atualizados
apt list --upgradable
Exercício 4: Gerenciamento de Repositórios
Etapa 1: Ver Repositórios
# Ver as fontes
cat /etc/apt/sources.list
# Ver fontes adicionais
ls /etc/apt/sources.list.d/
# Ver todas as fontes
cat /etc/apt/sources.list.d/*.list
Etapa 2: Adicionar um Repositório
# Método 1: Arquivo em sources.list.d/
echo "deb http://repo.example.com/ubuntu noble main" | \
sudo tee /etc/apt/sources.list.d/mon-repo.list
# Adicionar a chave GPG
wget -qO - http://repo.example.com/key.gpg | sudo apt-key add -
# Atualizar
sudo apt update
Etapa 3: Repositório PPA (Ubuntu)
# Adicionar um PPA
sudo add-apt-repository ppa:nom/ppa
# Remover um PPA
sudo add-apt-repository --remove ppa:nom/ppa
# Atualizar
sudo apt update
Exercício 5: Remoção e Limpeza
Etapa 1: Remover Pacotes
# Remover um pacote (mantém a configuração)
sudo apt remove nom-paquet
# Remover pacote e configuração
sudo apt purge nom-paquet
# Remover vários pacotes
sudo apt remove paquet1 paquet2 paquet3
Etapa 2: Limpeza
# Remover dependências não utilizadas
sudo apt autoremove
# Limpar o cache
sudo apt clean
# Limpeza automática
sudo apt autoclean
# Limpar tudo
sudo apt autoremove -y
sudo apt autoclean
Exercício 6: Resolução de Problemas
Etapa 1: Dependências Quebradas
# Reparar dependências
sudo apt --fix-broken install
# Reparar completamente
sudo apt --fix-missing install
sudo dpkg --configure -a
Etapa 2: Cache Corrompido
# Limpar o cache
sudo apt clean
sudo rm -rf /var/lib/apt/lists/*
# Reconstruir o cache
sudo apt update
Etapa 3: Pacote Travado
# Ver processos usando um pacote
sudo lsof | grep nom-paquet
# Forçar reinstalação
sudo apt install --reinstall nom-paquet
Exercício 7: Prática Completa
Etapa 1: Instalação de um Servidor Web
# Instalar nginx
sudo apt update
sudo apt install -y nginx
# Verificar a instalação
systemctl status nginx
nginx -v
# Ver os arquivos instalados
dpkg -L nginx | head -20
Etapa 2: Atualização do Sistema
# Script de atualização completa
cat > update-system.sh << 'EOF'
#!/bin/bash
echo "Atualizando lista de pacotes..."
sudo apt update
echo "Atualizando pacotes..."
sudo apt upgrade -y
echo "Limpando..."
sudo apt autoremove -y
sudo apt autoclean
echo "Concluído!"
EOF
chmod +x update-system.sh
./update-system.sh
Verificação
Checklist
Verifique se você consegue:
- Atualizar o sistema (apt update, upgrade)
- Instalar pacotes (apt install)
- Pesquisar pacotes (apt search)
- Ver informações (apt show)
- Gerenciar repositórios
- Remover pacotes (apt remove, purge)
- Limpar o sistema (autoremove, clean)
- Resolver problemas de dependências
Perguntas para Reflexão
-
Qual a diferença entre apt update e apt upgrade?
- update: Atualiza a lista de pacotes disponíveis
- upgrade: Atualiza os pacotes instalados
-
Por que usar apt autoremove?
- Remove dependências não utilizadas
- Libera espaço em disco
-
Quando usar apt purge vs apt remove?
- remove: Remove o pacote, mantém a configuração
- purge: Remove o pacote e a configuração
Próximos Passos
- Lab 10.2: Gerenciamento de Repositórios
- Lab 10.3: Compilação a partir do Código-Fonte
- Lab 10.4: Snap e Flatpak
- Capítulo 10.1: apt (Debian/Ubuntu)
Recursos Ubuntu 24.04
- Pacotes Ubuntu
man apt- Documentação aptapt-cache search- Pesquisa avançada
Lab criado em: Dezembro de 2024 - Testado no Ubuntu 24.04