Vous êtes sur la page 1sur 14

Solues em redes para plataforma Linux

Compilao 12.05.2016

Instalao de Pacotes
http://saladeaula.fiaplinux.com

Apostila construida utilizando apenas Softwares Gratuitos

Graduao em Redes de Computadores


Compilao 30.04.2016

Table of Contents
1 Package Managers ( Gerenciadores de Pacotes ):.............................................................................3
1.1. Gerenciamento de pacotes com DPKG:...................................................................................3
1.2. Gerenciamento de pacotes com APT:.......................................................................................5
1.2.1 O processo de resoluo de dependncias:........................................................................6
1.2.2 Outras opes uteis do apt:.............................................................................................7
1.2.3 Verificando pacotes corrompidos:......................................................................................8
1.2.4 O arquivo /etc/apt/sources.list:...........................................................................................8
1.3. Gerenciamento de pacotes com RPM:....................................................................................10
1.4. Gerenciamento de pacotes com YUM:...................................................................................11
1.4.1Instalando pacotes com YUM:..........................................................................................12
1.4.2Funes de update e upgrade com YUM:.........................................................................12
1.4.3Habilitando o EPEL:.........................................................................................................13
1.4.4Instalao de grupo de pacotes:.........................................................................................15

Graduao em Redes de Computadores


Compilao 30.04.2016

1 Package Managers ( Gerenciadores de Pacotes ):

Uma das maneiras mais comuns de se instalar pacotes em sistemas GNU/linux atravs do
uso de pacotes pr compilados, um pacote pr compilado basicamente o cdigo fonte de uma
aplicao que recebeu um tratamento espefico sendo adptado para uma familia especfica de
sistemas Linux, dentro dessa locia utilizamos uma ferramenta para manipular este pacote, a essa
ferramenta damos o nome de gerenciador, gerenciadores de pacotes so comuns na maioria das
distribuies GNU/Linux de uso comercial e podem ser classificados entre GERENCIADORES
DE ALTO NVEL e GERENCIADORES DE BAIXO NVEL.

1.1. Gerenciamento de pacotes com DPKG:


O DPKG ( Debian Package ) um exempl ode gerenciador de pacote de baixo nvel, essa
classificao baseia-se na maneira como o gerenciador trata os pacotes, gerenciadores de baixo
nvel executam funes de instalao, remoo e manipula ode pacotes dentro do sistema, no caso
do DPKG sua operao feita utilizando comandso em modo texto, e cosutma ser restrita a
usurios avanados de sistema dado sua compelxidade.

Sendo uma aplicao nativa em ambientes Debian o DPKG sempre est disponvel em
praticamente todas as derivaes geradas na famlia Debian como o Ubuntu ou o Linux Mint por
exemplo, os pacotes manipulados via DPKG so chamados de debian packes e so identificados
pela exteno .deb.

Graduao em Redes de Computadores


Compilao 30.04.2016

No ubuntu abra um terminal com permisses administrativa e comee com uma listagem
simples dos pacotes instalados:
dpkgl

Para facilitar a localizao de um pacote especfico voc pode filtrar a informao da


listagem anterior, sabendo o nome do pacote o parametro -s ( --status ) pode ser utilizado para
obter informaes sobre o pacote:
dpkgl|grepbash
dpkgsbash

Sendo um gerenciador de baixo nvel o dpkg no busca pacotes na internet, logo suas
operaes de gerenciamento se limitam a pacotes que estejam instalados ou que foram previamente
baixados, no exemplo abaixo executamos o tratamento de um pacote baixado de internet:
wgethttp://mirrors.kernel.org/ubuntu/pool/universe/h/htop/htop_1.0.2
3_amd64.deb
#VERIFIQUEAEXTENSODOPACOTEBAIXADO:
filehtop_1.0.23_amd64.deb

A opo -I ( --info ) exibe o cabealho de informaes de um pacote .deb:


dpkgIhtop*

Para executar o processo de instalao utilize a opo -i ( --install ):


dpkgihtop*
#VERIFIQUESEOPACOTEFOIINSTALADO:
dpkgl|grephtop
dpkgshtop
htop

Graduao em Redes de Computadores


Compilao 30.04.2016

Processos de remoo de pacotes podem ser executadas com a opo -r:


dpkgrhtop
dpkgl|grephtop

Ao instalar um pacote comum que este possua dependncias, ou seja, sua instalao trs
outros pacotes como bibliotecas e manuais, neste caso talvez o processo de remoo com -r no seja
100% efetivo, a remoo com esta opo limita-se a aplicao selecionada, no exemplo a acima
seria o binrio do htop, caso seja necessrio garantir a completa remoo do pacote e de suas
dependncias de instalao utilize a opo -P ( --purge ):
dpkgPhtop
dpkgl|grephtop

1.2.

Gerenciamento de pacotes com APT:


O gerenciamento avanado de pacotes em distribuies debian e derivadas utiliza um

utilitrio de linha de comando chamado apt, sua funo executar os mesmos processos de
gerenciamento de pacotes do dpkg ( Na verdade rodando o prprio dpkg em suas execues ) porm
com um bnus: o Gerenciamento de repositrios.

Distribuies GNU/Linux de uso comercial costumam utilizar repositrios para facilitar o


processo de centralizao, validao e instalao de pacotes, fazendo um analogia simples cada
repositrio se comporta como um hub, um centralizador de pacotes a serem baixados, o mesmo
coneito aplicado no uso da Apple Store e da Google Play por exemplo.
Exemplo: http://br.archive.ubuntu.com/ubuntu/
Para facilitar o entendimento deste processo execute o comando a seguir:
aptgetupdate

Graduao em Redes de Computadores


Compilao 30.04.2016

O comando executado responsvel pelo processo de atualizao da lista de repositrios


disponveis para instalao de pacotes, ao executar este comando voc reconstruiu o cache com a
relao de pacotes e verses disponveis para instalao;

Vamos a uma instalao via apt:


aptgetinstallcmatrix
cmatrix

Verifique que o mesmo binrio utilizado anteriormente foi instalado, porm sem o download
prvio do arquivo .deb.

1.2.1 O processo de resoluo de dependncias:


Uma vez que o apt utiliza repositrios como o do exemplo acima como base pra instalao
de pacotes ele possui a vantagem de conseguir baixar tanto pacotes quanto dependncias de
instalao, logo alm da funo de download automtico de pacotes, o apt tambm acumula a
funo de resolver de dependncias, o que significa que se o pacote A a ser instalado necessita do
pacote B para funcionar, a execuo do comando de instalao verificar esta dependncia e dever
procurar o pacote B nos repositrios e executar sua instalao para ento instalar o pacote A, este
tipo de processo torna o apt o mtodo mais fcil parta instalao e manipulao de pacotes.

Voc pode verificar as dependncias de um pacote utilizando o comando apt-cache:


aptcacheshowhtop
aptgetinstallhtop

Remoo de pacotes instalados podero ser feitas com o comando apt-get remove:
aptgetremovecmatrix

Graduao em Redes de Computadores


Compilao 30.04.2016

1.2.2 Outras opes uteis do apt:

Ainda sobre o processo de remoo de pacotes, utilizando o apt tambm possumos a opo
--purge de apenas remover ou expurgar um pacote garantindo a remoo de todas as suas
dependncias:
aptgetremovepurgehtop

Uma vez que o sistema apt utiliza uma lista de repositrios no processo de instalao de
pacotes possvel executar consultas nessa lista com a funo search do comando apt-cache e exibir
informaes sobre pacotes ( mesmo pacotes no instalados ) com a funo show:
#LOCALIZEOPACOTETRACEROUTE:
aptcachesearchtracer
aptcacheshowtraceroute
#EMSEGUIDAEXECUTESUAINSTALAO:
aptgetinstalltraceroute

Atualizao em massa de pacotes podem ser executadas utilizando a funo upgrade:


aptgetupgrade

Para executar a instalao com base em repostorios o apt executa o download de todos os
pacotes a serem instalados para s ento executar os gatilhos de instalao, estes pacotes so
alocados no diretrio de cache da aplicao:
ls/var/cache/apt/archives
duhs/var/cache/apt/archives

Podemos limpar este repositrio utilizando o comando abaixo:


aptgetclean
ls/var/cache/apt/archives
duhs/var/cache/apt/archives

Graduao em Redes de Computadores


Compilao 30.04.2016

possvel executar o download de um pacote e suas dependncias sem executar a instalao


utilizando a opo --download-only:
aptgetinstallrarunrardownloadonly
VERIFIQUESEOSPACOTESENTRARAMNOCACHE:
ls/var/cache/apt/archives
cd/var/cache/apt/archives
dpkgi*.deb

No exemplo acima os pacotes rar e unrar foram baixados porm sem execuo do processo de
instalao, sendo arquivos .deb poderemos executar a instalao tanto com apt quanto com dpkg -l

1.2.3 Verificando pacotes corrompidos:

O comando apt-get check pode ser usado para verificar arquivos corrompidos no S.O.:
aptgetcheck

Para executar um processo de correo de dependncias utilize o comando abaixo:


aptgetfinstall

1.2.4 O arquivo /etc/apt/sources.list:

O arquivo /etc/apt/sources.list responsvel pelas definies sobre quais repositrios sero


utilizados pelo apt no processo de resoluo de download de pacotes, alm deste arquivo definies
sobre repositrios a serem utilizados podero ser alocadas dentro do diretrio /etc/apt/sources.list.d
em arquivos de configurao com a extenso .list;
cat/etc/apt/sources.list
ls/etc/apt/sources.list.d

Graduao em Redes de Computadores


Compilao 30.04.2016

Estrutura das entradas de repositrios:


deb http://br.archive.ubuntu.com/ubuntu/ trusty main restricted
deb-src http://br.archive.ubuntu.com/ubuntu/ trusty main restricted

deb / deb-src Essas duas linhas definem a URL retivas um mesmo repositrio sendo que a
primeira utilizada em processos de instalao de pacotes, enquanto a segunda utilizada em
processo de download para compilao manual, para a maioria das necessidades de administrao
apenas a primeira linha mandatria;

http://br.archive.ubuntu.com/ubuntu/ Definio da URL

do repositrio usado pelo apt,

podem ser utilizados diversos repositrios como o caso no arquivo que acessamos anteriormente,
por padro o apt sempre procurar pela verso mais nova de um pacote a ser instalado.

trusty Local onde sero procurados arquivos para atualizao, neste campo geralmente
utilizado o nome de sua distribuio (trusty, xenial) padro usado pelo ubuntu ou sua classificao
(stable, testing ou unstable) padro usado pelo debian.

O padro unstable usado somente para desenvolvedores, mquinas de testes e QA para validao
de pacotes em sua verso mais recente, sempre evite o uso em produo de pacotes unstable.

main restricted Representa as sesses de pacotes que sero consultadas, exatamente na ordem
em que aparecem na linha de configurao.

Graduao em Redes de Computadores


Compilao 30.04.2016

1.3. Gerenciamento de pacotes com RPM:


Os pacotes RPM ( RedHat Package Manager ) so os pacotes pr compilados prprios para a
familia RedHat, ou seja, estes pacotes so aplicveis a sistemas como RedHat, CentOS, e Fedora de
forma anloga ao que ocorre no uso de pacotes DPKG em sistemas da famlia debian sendo o RPM
o gerenciador de baixo nvel responsvel pela manipulao destes pacotes.

Para comear vamos ao processo de verificao dos pacotes instalados:


rpmqa
rpmqa|grephtop
rpmqa|grepssh
A operao acima utiliza os parmetros -qa ( query all ) para listar os pacotes instalados.

Em seguida verifique detalhes sobre o pacote localizado com a opo -qi ( query info ):
rpmqisshclient*

Uma opo til do comando rpm a checagem da verso de um binrio instalado:


whichssh
rpmqf$(whichssh)

O processo de instalao de pacotes com rpm pode ser executado com a opo -i,
comum que a esta opo sejam adicionadas as opes -vh ( verbose e human format
respectivamente ), dessa forma o comando usado no processo de instalao seria conforme abaixo,
lembre-se que por ser um gerenciador de baixo nvel necessrio que o pacote seja baixado e ou
disponibilizado de alguma forma antes de ser instalado.
wgethttp://mirror.centos.org/centos/7.2.1511/os/x86_64/Packages/tree
1.6.010.el7.x86_64.rpm
# VERIFIQUE INFORMAES SOBRE O PACOTE:
rpmqpitree*

10

Graduao em Redes de Computadores


Compilao 30.04.2016

Em seguida processa com o processo de instalao:


rpmivhtree*
rpmqa|greptree
tree/etc/yum.repos.d

O comando RPM para remoo de pacotes o rpm -e ( --erase ) e diference do dpkg por
padro j expurga todas as dependncias do pacote.
rpmetree

1.4. Gerenciamento de pacotes com YUM:


Nos exemplos anteriores para executar a instalao do pacote tree fizemos seu download
manualmente e a manipulao com o com o comando RPM, neste ponto que entramos com o
yum, o gerenciador de alto nvel para distros da familia RedHat, sua funo gerenciar tanto o
download quanto a instalao de pacotes e a resoluo de dependncias envolvida no processo, alias
a URL usada para download do pacote tree parte de um dos repositrios oficiais do yum:
cat/etc/yum.repos.d/CentOSBase.repo

De forma similar ao APT o princpio bsico do yum trabalhar com um pool de repositrios
na internet a partir dos quais os pacotes vlidos e homologados para cada distro so baixados e
instalados utilizando como motor de instalao as funes do comando RPM.
O diretrio listado acima responsvel por abrigar a relao de repositrios do sistema,
neste caso ao invs de entradas dentro de um arquivo texto temos arquivos especificos para cada
repositrio, Sendo cada um deles identificado pela extenso .repo, voc pode listar os repositrios
disponveis para uso executando o comando abaixo:

yumrepolist
O repolist responsvel tanto por listar quanto por atuyalizar esta lista de repositrios.

11

Graduao em Redes de Computadores


Compilao 30.04.2016

1.4.1 Instalando pacotes com YUM:


Faa uma busca pelos pacotes com a nomenclatura mtr utilizando o YUM:
yumsearchmtr

Ao localizar o pacote mtr verfique sua descrio detalhada e em seguida proceda com a
instalao do pacote:
yuminfomtr
yuminstallmtr
mtrfiap.com.br
Verifique que ao executar a funo install do yum automaticamente um yum update executado,
ou seja, o processo de atualizao de cache de repositrio no yum automatico e ser invocado sempre que
iniciar a instalao de um pacote.

O processo de remoo de pacotes com yum:


yumremovemtr
Toda vez que executamos o processo de remoo os pacotes so expurgados, ou seja, o yum
remover todos os pacotes e suas depenncias a no ser que sejam compartilhadas, como no caso de
bibliotecas por exemplo.

1.4.2 Funes de update e upgrade com YUM:

No YUM a funo update atualiza todos os pacotes disponveis na mquina:


yumupdate

12

Graduao em Redes de Computadores


Compilao 30.04.2016

J o comando upgrade responsvel pelo processo de atualizao de distro caso exista


uma verso mais nova do sistema disponvel.
yumupgrade

1.4.3 Habilitando o EPEL:

Existem diversos repositrios de terceiros para sistemas CentOS sendo o EPEL ( Extra
Packages for Enterprise Linux ) provavelmente o mais famoso deles, trata-se de um repositrio
mantido por um grupo de administradores responsveis pelo Projeto Fedora, criado com o objetivo
de disponibilizar pacotes adicionais para sistemas da Famlia RedHat.

O EPEL se tornou extremamente popular pela estrutura do projeto, seus pacotes so


baseados na arquitetura do Fedora ( utilizando mesmos mirrors de repositrio, mesma base de
gerenciamento etc ) e so 100% compatveis com pacotes Enterprise Linux da RedHat.

Vamos habilitar o EPEL em nosso ambiente:


wgethttp://mirror.globo.com/epel/7/x86_64/e/epelrelease76.noarch.rpm
rpmqpiepelrelease76.noarch.rpm
rpmivhepelrelease76.noarch.rpm

Verfique a estrutura criada no arquivo de configurao dentro do repositoio epel:


cat/etc/yum.repos.d/epel.repo

Execute o update para validar o acesso ao novo repositrio:


yumrepolist

13

Graduao em Redes de Computadores


Compilao 30.04.2016

1.4.4 Instalao de grupo de pacotes:

Alguns pacotes disponveis nos repositrios utilizados na familia RedHat permitem abordagem de
instalao via grupo de pacotes, basicamente trata-se de um nome de pacote que representa um grupo de
aplicativos que compem uma determinada finalidade.
yumgrouplist
Um exemplo deste modelo o grupo listado abaixo, trata-se de um grupo de pacotes de
desenvolvimento responsvel pela instalao de pacotes como o git e as bibliotecas de compilao gcc e gccc++ e o make utilizado no processo de compilao de pacotes.
yumgroupinfo'DevelopmentTools'
yumgroupinstall'DevelopmentTools'

14

Vous aimerez peut-être aussi