Buscar

Apostila linux lpi101 cap02

Prévia do material em texto

1
Curso Linux LPICurso Linux LPI--101101
CapítuloCapítulo 0202–– Instalação do Linux e Instalação do Linux e 
Gerenciamento de PacotesGerenciamento de Pacotes
Objetivos do CapítuloObjetivos do Capítulo
• Aprender a determinar um layout de disco rígido. 
• Aprender a instalar um gerenciador de boot. 
• Aprender a gerenciar bibliotecas compartilhadas. 
• Aprender a utilizar o gerenciamento de pacotes no 
Debian. 
• Aprender a utilizar os pacotes de gerenciamento 
YUM e RPM.
2
Definindo um Layout para o Disco Definindo um Layout para o Disco 
Rígido (HD)Rígido (HD)
• Definir um layout de particionamento de disco rígido 
para um sistema Linux.
– Alocar o filesystem e espaço de swap para separar partições de disco.
– Adaptar o design para atender o uso do sistema.
– Assegurar que a partição de boot está de acordo com os requisitos do 
sistema.
– Conhecimento básico sobre os recursos do LVM.
Discos e PartiçõesDiscos e Partições
• Partições
As partições são divisões no disco rígido que 
indicam onde começa e onde termina um 
determinado sistema de arquivos.
Depois que uma partição é criada e 
formatada ela passa a ser identificada como 
um dispositivo no diretório /dev e em seguida 
ela deverá ser montada para permitir seu uso 
no sistema.
3
Discos e PartiçõesDiscos e Partições
• Filesystems
É basicamente uma forma de organizar os 
dados nos dispositivos de armazenamento.
Exemplos de sistemas de arquivos 
(filesystem):
– Ext2, ext3, reiserfs, swap, fat, ntfs
Discos e PartiçõesDiscos e Partições
• Identificando Discos e Partições no Linux
• Diretório /dev
• /dev/hda1
-|-----|-|-|
-|-----|-|-|_Identifica o número da partição no disco rígido.
-|-----|-|
-|-----|-|_Letra que identifica o disco rígido (a=primeiro, b=segundo).
-|-----|
-|-----|_Identifica o tipo do disco rígido (hd=ide, sd=SCSI, xt=XT).
-|
-|_Diretório de armazenamento dos dispositivos no sistema.
4
Arquivo /Arquivo /etcetc//fstabfstab
• Responsável por dar as instruções de 
montagens das partições durante o boot.
Instalando um Gerenciador de BootInstalando um Gerenciador de Boot
• Selecionar, instalar e configurar um gerenciador de 
boot.
– Fornecer locais de boot alternativos e opções de backup.
– Instalar e configurar um carregador de boot, tal como o GRUB Legacy.
– Realizar alterações de configurações básicas no GRUB2.
– Interagir com o carregador de boot.
5
Gerenciadores de bootGerenciadores de boot
• Programas que têm a função de carregar um 
sistema operacional e/ou permitir que você 
escolha qual sistema operacional deve ser 
iniciado.
• Ficam no setor de boot da partição ativa ou 
no Master Boot Record (MBR) do seu disco 
rígido.
– Lilo (Linux Loader)
– Grub (Grand Unified Boot Loader)
LILOLILO
• Normalmente ele é instalado no MBR do HD.
• A configuração do lilo fica localizada no 
arquivo /etc/lilo.conf
• Comando lilo
– Criar um novo gerenciador de partida
– Atualizar o setor de partida 
6
LILO LILO -- ExemploExemplo
boot=/dev/hda1
compact
lba32
install=menu
map=/boot/map
vga=normal
delay=50
prompt
image=/vmlinuz
root=/dev/hda1
label=linux
read-only
other=/dev/hda2
table=/dev/hda
label=dos
Instalado em /dev/hda1, setor de boot 
compacto (compact), modo de vídeo 
VGA normal (80x25).
Mostra o aviso de boot: e aguarda 5 
segundos antes de carregar a imagem 
padrão.
Imagem padrão: Linux em /de/hda1
Segunda opção: dos em /dev/hda2
Instalado em /dev/hda1, setor de boot 
compacto (compact), modo de vídeo 
VGA normal (80x25).
Mostra o aviso de boot: e aguarda 5 
segundos antes de carregar a imagem 
padrão.
Imagem padrão: Linux em /de/hda1
Segunda opção: dos em /dev/hda2
GrubGrub vsvs Discos e PartiçõesDiscos e Partições
• No Linux No GRUB
/dev/hda (hd0)
/dev/hda1 (hd0,0)
/dev/hda2 (hd0,1)
/dev/hdb (hd1)
/dev/hdb1 (hd1,0)
/dev/hdb2 (hd1,1)
/dev/sda (hd0) # Disco SCSI ID 0
/dev/sda1 (hd0,0) # Disco SCSI ID 0, partição 1
/dev/sda2 (hd0,1) # Disco SCSI ID 0, partição 2
/dev/sdb (hd1) # Disco SCSI ID 1
/dev/sdb1 (hd1,0) # Disco SCSI ID 1, partição 1
/dev/sdb2 (hd1,1) # Disco SCSI ID 1, partição 2
/dev/fd0 (fd0)
7
Instalando o Instalando o grubgrub com com grubgrub--installinstall
• $ grub-install /dev/sda
Instalado no primeiro disco SATA, no MBR
$ grub-install /dev/sda1
Instala em uma partição
• /boot/grub
Arquivos necessários para o grub (menu.lst), 
quando já instalado. Do contrário, estará em 
/usr/lib/grub
GRUB2GRUB2
• Nomes dos dispositivos
As partições são numeradas a partir do 1 (e 
não 0 como era no GRUB)
• Arquivo de configuração
/boot/grub/grub.cfg
• Customização
/etc/grub.d/40_custom.conf
8
Gerenciando Bibliotecas Gerenciando Bibliotecas 
CompartilhadasCompartilhadas
• Determinar quais as bibliotecas compartilhadas que 
um determinado programa executável depende e 
instalar essas bibliotecas quando necessário.
– Identificar as bibliotecas compartilhadas.
– Identificar a localização típica do sistema de bibliotecas.
– Carregar bibliotecas compartilhadas.
Identificando Bibliotecas Identificando Bibliotecas 
CompartilhadasCompartilhadas
• Programas com vinculação estática:
Contém todas bibliotecas necessárias para o 
seu funcionamento.
• Programas com vinculação dinâmica:
Necessitam de bibliotecas de funções 
externas para o seu funcionamento. 
9
Identificando Bibliotecas Identificando Bibliotecas 
CompartilhadasCompartilhadas
• Soname:
– Todo soname começa com o prefixo lib
– .so
– numero de versão (version number)
• Nome real: arquivo que contém o código em si.
– minor number
– número da release
libpspell.so.15.1.4
O .15 indica o número da versão, o 
.1 indica o minor number e .4 o 
release number.
libpspell.so.15.1.4
O .15 indica o número da versão, o 
.1 indica o minor number e .4 o 
release number.
Identificando Bibliotecas Identificando Bibliotecas 
CompartilhadasCompartilhadas
# ls -laF libpspe*
lrwxrwxrwx 1 root root 19 Mar 17 19:52 libpspell.so.15 -> libpspell.so.15.1.4
-rw-r--r-- 1 root root 2688 Mar 10 2010 libpspell.so.15.1.4 
# ls -laF libpspe*
lrwxrwxrwx 1 root root 19 Mar 17 19:52 libpspell.so.15 -> libpspell.so.15.1.4
-rw-r--r-- 1 root root 2688 Mar 10 2010 libpspell.so.15.1.4 
Arquivo que é a biblioteca, de nome libpspell.so.15.1.4
Um link que é o libpspell.so.15, sendo este o arquivo 
que será chamado pelos softwares
10
Como as Bibliotecas são UtilizadasComo as Bibliotecas são Utilizadas
• /lib e /usr/lib
– Local padrão na maioria das distro
• /etc/ld.so.conf e /etc/ld.so.conf.d
– Local para bibliotecas adicionais
• /etc/ld.so.cache
– Cache é criado pelo ldconfig que lê o conteúdo do 
ld.so.conf e configura links simbólicos para todas as 
bibliotecas necessárias no arquivo ld.so.cache
Comando Comando lddldd
• Verificar quais as bibliotecas necessárias para 
um determinado aplicativo/comando.
• Mostra o nome da biblioteca e o seu lugar.
# ldd htpasswd
linux-gate.so.1 => (0xb78a7000)
libcrypt.so.1 => /lib/i686/cmov/libcrypt.so.1 (0xb7869000)
libaprutil-1.so.0 => /usr/lib/libaprutil-1.so.0 (0xb7849000)
libapr-1.so.0 => /usr/lib/libapr-1.so.0 (0xb781a000)
libpthread.so.0 => /lib/i686/cmov/libpthread.so.0 (0xb7801000)
libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb76ba000)
libuuid.so.1 => /lib/libuuid.so.1 (0xb76b6000)
librt.so.1 => /lib/i686/cmov/librt.so.1 (0xb76ad000)
libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb76a8000)
libexpat.so.1 => /usr/lib/libexpat.so.1 (0xb7682000)
/lib/ld-linux.so.2 (0xb78a8000)
# ldd htpasswd
linux-gate.so.1 => (0xb78a7000)
libcrypt.so.1 => /lib/i686/cmov/libcrypt.so.1 (0xb7869000)
libaprutil-1.so.0 => /usr/lib/libaprutil-1.so.0 (0xb7849000)
libapr-1.so.0 => /usr/lib/libapr-1.so.0 (0xb781a000)
libpthread.so.0 => /lib/i686/cmov/libpthread.so.0 (0xb7801000)
libc.so.6 => /lib/i686/cmov/libc.so.6(0xb76ba000)
libuuid.so.1 => /lib/libuuid.so.1 (0xb76b6000)
librt.so.1 => /lib/i686/cmov/librt.so.1 (0xb76ad000)
libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb76a8000)
libexpat.so.1 => /usr/lib/libexpat.so.1 (0xb7682000)
/lib/ld-linux.so.2 (0xb78a8000)
11
LD_LIBRARY_PATHLD_LIBRARY_PATH
• Variável lida pelo sistema e diz onde devem 
ser procuradas as bibliotecas antes de tentar 
procurar nos diretórios padrões (aqueles 
descritos no /etc/ld.so.conf.d). 
• Mais utilizada para testes.
Usando o Gerenciamento de Pacotes Usando o Gerenciamento de Pacotes 
do do DebianDebian
• Realizar o gerenciamento de pacotes com as 
ferramentas de pacotes do Debian.
– Instalar, atualizar e desinstalar pacotes binários no Debian.
– Encontrar pacotes contendo arquivos ou bibliotecas específicas que podem 
ou não estarem instaladas no sistema.
– Obter informações sobre o pacote, como por exemplo, versão, conteúdo, 
dependências, integridade do pacote e estado da instalação (se o pacote está 
ou não instalado). 
12
dpkgdpkg
• Gerenciador de pacotes do Debian
• Faz a manipulação de arquivos .deb
• Não faz a verificação das dependências do 
pacote
• Não utiliza o recurso dos repositórios
Usos mais comunsUsos mais comuns
• Instalar um pacote
– dpkg -i pacote.deb
• Listar os aplicativos instalados no sistema
– dpkg -l nomedopacote
• Listar arquivos de um pacote
– dpkg –L arquivo
• Buscar de qual pacote um arquivo faz parte
– dpkg -S arquivo
13
Removendo um pacoteRemovendo um pacote
• dpkg -r pacote
– Para remover o pacote
• dpkg -r --purge pacote
– Para remover completamente o pacote (incluindo 
os arquivos de configuração)
Outros parâmetros úteisOutros parâmetros úteis
--print-avail: lista informações do pacote.
--unpack: desempacota o arquivo sem executar 
nada.
--configure: executa a instalação do pacote 
desempacotado.
-C: lista todos os pacotes com algum tipo de 
problema, ou instalados parcialmente.
-s: lista o status do pacote e as informações.
14
dpkgdpkg--reconfigurereconfigure
• Utilizado para reconfigurar um pacote já 
instalado.
– dpkg-reconfigure pacote
– dpkg --reconfigure pacote
aptapt--getget
• Utiliza repositórios (ftp, http, cdrom)
• Resolve dependências
15
CacheCache e Repositóriose Repositórios
• apt-cache
Utilizado para verificar informações dos 
pacotes que estão no repositório
apt-cache show pacote
• Repositórios
arquivo /etc/apt/sources.list
Removendo um pacoteRemovendo um pacote
• apt-get remove pacote
• O comando apt-get remove assim como do 
dpkg -r mantém os arquivos de configurações 
dos pacotes. Para remover completamente o 
pacote (com seus arquivos de configuração) 
basta executar o comando com o parâmetro --
purge
16
Outros parâmetros úteis para o Outros parâmetros úteis para o aptapt--
getget
• upgrade: Realiza a atualização de quase todos os pacotes, 
basicamente se o pacote a ser atualizado altera algo no 
funcionamento de um outro pacote então ele mantém a 
versão sem atualizar.
• dist-upgrade: Realiza a atualização de todos os pacotes 
disponíveis sem exceções.
• clean: limpa o cache dos pacotes já instalados anteriormente.
• autoremove: remove pacotes instalados para satisfazer. 
dependências mas que não são mais necessários.
• [opções]
• -d: realiza o download do pacote sem instalação.
-y: responde sim as perguntas do sistema.
Utilizando RPM e gerenciador de Utilizando RPM e gerenciador de 
pacotes YUMpacotes YUM
• Realizar o gerenciamento de pacotes com as 
ferramentas RPM e YUM.
– Instalar, reinstalar, atualizar e remover pacotes com o RPM e YUM.
– Obter informações sobre os pacotes RPM, tais como versão, status, 
dependências, integridade e assinaturas.
– Determinar os arquivos que fazem parte do pacote, assim como encontrar de 
qual pacote um arquivo faz parte.
17
RPM (RedHat Package Manager)RPM (RedHat Package Manager)
• Gerenciador de pacotes originalmente criado 
pela RedHat.
• Atualmente é utilizado pela RedHat, Fedora, 
SuSE, CentOS, Mageia e outras distribuições 
mais.
• Assim como o dpkg o RPM conhece sobre as 
dependências de um pacote, mas NÃO 
resolve essas dependências.
Opções mais UtilizadasOpções mais Utilizadas
Instalando um pacote
rpm -ivh foo-2.0-4.i386.rpm
Desinstalando um pacote
rpm -e foo
Atualizando um pacote
rpm -Uvh foo-1.0-2.i386.rpm
Pesquisando todos os pacotes 
instalados
rpm -qa
Pesquisando um pacote específico
rpm -q foo
Instalando um pacote
rpm -ivh foo-2.0-4.i386.rpm
Desinstalando um pacote
rpm -e foo
Atualizando um pacote
rpm -Uvh foo-1.0-2.i386.rpm
Pesquisando todos os pacotes 
instalados
rpm -qa
Pesquisando um pacote específico
rpm -q foo
Exibindo informações sobre o pacote
rpm -qi foo
Listando os arquivos de um pacote
rpm -ql foo
Descobrindo de qual pacote é um 
arquivo
rpm -qf /usr/bin/mysql
Listando arquivos de um pacote
rpm -qpl pacote.rpm
rpm -qpl
Verificando um pacote instalado
rpm --verify mysql
rpm -V mysql
Exibindo informações sobre o pacote
rpm -qi foo
Listando os arquivos de um pacote
rpm -ql foo
Descobrindo de qual pacote é um 
arquivo
rpm -qf /usr/bin/mysql
Listando arquivos de um pacote
rpm -qpl pacote.rpm
rpm -qpl
Verificando um pacote instalado
rpm --verify mysql
rpm -V mysql
18
Gerenciando pacotes com o YUMGerenciando pacotes com o YUM
• Atualizador, instalador e removedor de 
pacotes.
• Estabelece as dependências e define as 
necessidades realizando as instalações, 
remoções ou atualizações necessárias para a 
ação solicitada.
Instalando e Removendo Pacotes com Instalando e Removendo Pacotes com 
YumYum
• Instalando
– yum install nomedopacote
– parâmetro -y que ele irá assumir yes para 
qualquer pergunta
• Removendo
– yum remove pacote
19
Removendo Pacotes com Removendo Pacotes com yumyum
• Buscando pacotes com yum
– yum search openssl
• Verificando Informações sobre o Pacote
– yum info nome_do_pacote
• Verificar as dependências
– yum deplist openssl-devel
• Consultar em qual pacote existe um arquivo
– yum provides “*/httpd.conf”
Gerenciando os Repositórios do Gerenciando os Repositórios do YumYum
• arquivo /etc/yum.conf
Configuração básica do yum
• /etc/yum.repos.d
Repositórios do yum
20
FinalizaçãoFinalização
• Matéria Online – Estude!!!
• Atividade Prática – Não deixe de fazer!!!
• Simulado Online – Pratique bastante!!!
• Fóruns – Participe!!!
• Tutores – Tire suas dúvidas!!!

Continue navegando