Gerenciador de pacotes: yum
Para quem n茫o conhece Linux, instalar e desinstalar programas pode parecer uma tarefa dif铆cil. Mas na realidade, sabendo utilizar as ferramentas certas, estas tarefas se tornam muito mais f谩ceis que qualquer outro sistema. Os gerenciadores de pacotes fazem isso muito bem e o yum 茅 um deles!
O yum (Yellow dog Updater, Modified) 茅 um programa cujo objetivo 茅 resolver as complica莽玫es da instala莽茫o/desinstala莽茫o de pacotes em formato RPM. Com o yum, o processo de instala莽茫o de um pacote se torna extremamente simples: com apenas um comando conseguimos baixar da internet a vers茫o mais atual e instalar no sistema, deixando-o pronto para o uso. Seu endere莽o oficial 茅: http://linux.duke.edu/projects/yum/.
Inicialmente feito para a distribui莽茫o Yellow Dog 鈥 uma vers茫o modificada do Red Hat/Fedora para sistemas com arquitetura PowerPC 鈥 o yum chamou a aten莽茫o dos desenvolvedores do Red Hat/Fedora, pois os mesmos necessitavam de um gerenciador de pacotes que resolvesse depend锚ncias e trabalhasse com reposit贸rios na Internet. Foi adotado oficialmente desde a primeira vers茫o do Fedora.
As instru莽玫es aqui s茫o baseadas na distribui莽茫o Fedora.
O arquivo de configura莽茫o do yum 茅 o /etc/yum.conf. Al茅m disso, os reposit贸rios (sites que cont茅m os pacotes dos programas) s茫o configurados atrav茅s de cada arquivo de extens茫o .repo, localizados no diret贸rio /etc/yum.repos.d.
A configura莽茫o padr茫o do yum contida no /etc/yum.conf 茅 suficiente para o bom funcionamento do programa. Voc锚 s贸 precisar谩 de alguns reposit贸rios j谩 configurados. Por exemplo, o padr茫o para o reposit贸rio do Fedora 茅 o arquivo /etc/yum.repos.d/fedora.repo:
[fedora] name=Fedora $releasever - $basearch baseurl=http://fedora.c3sl.ufpr.br/linux/releases/$releasever/Everything/$basearch/os/ enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora file:///etc/pki/rpm-gpg/RPM-GPG-KEY
As linhas acima significam que o reposit贸rio denominado fedora ter谩:
1. name: Nome descritivo, no exemplo: Fedora (vers茫o da distribui莽茫o) - (arquitetura da distribui莽茫o, ex. i386); 2. baseurl: O endere莽o que cont茅m a lista dos programas e os pacotes; 3. enabled: Se o reposit贸rio est谩 habilitado ou n茫o (1 significa sim, 0 significa n茫o); 4. gpgcheck: Se todos os pacotes devem ter sua autenticidade verificada (extremamente recomendado, 1 significa sim, 0 significa n茫o); 5. gpgkey: Qual chave criptogr谩fica utilizar para a verifica莽茫o dos pacotes.
Com este reposit贸rio configurado, pode-se instalar e remover todos os pacotes b谩sicos da distribui莽茫o. No caso das atualiza莽玫es de pacotes, o reposit贸rio 茅 outro e pode ser configurado no arquivo /etc/yum.repos.d/fedora-updates.repo:
[updates] name=Fedora $releasever - $basearch 鈥 Updates baseurl=http://fedora.c3sl.ufpr.br/linux/updates/$releasever/$basearch/ enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora
H谩 varios outros reposit贸rios de terceiros dispon铆veis (como o livna, dag, freshrpms, atrpms) que cont茅m outros programas que podem n茫o estar na lista principal por diversos motivos. Cada um desses reposit贸rios t锚m configura莽玫es pr贸prias e por isso criam arquivos .repo dentro do diret贸rio /etc/yum.repos.d. Aqui n茫o iremos listar todos os reposit贸rios e sim apenas os oficiais.
Uma vez configurados os reposit贸rios desejados, 茅 hora de utilizar o yum.
Para procurar por um pacote usando alguma palavra relacionada, utilizamos o par芒metro search. Por exemplo, procurar todos os pacotes relacionados com a palavra 鈥楧VD鈥:
# yum search DVD
Para instalar um pacote:
# yum install pacote
Para desinstalar o pacote:
# yum remove pacote
Atualizando um pacote espec铆fico, caso exista uma atualiza莽茫o para o mesmo:
# yum update pacote
Ou se precisarmos atualizar todo o sistema, instalando todos os pacotes novos que tenham atualiza莽玫es dispon铆veis:
# yum update
Para verificar quais os pacotes que precisam de atualiza莽茫o:
# yum check-update
Listando todos os pacotes dispon铆veis, tanto no reposit贸rio quanto os j谩 instalados:
# yum list
Listando todos os pacotes dispon铆veis para a instala莽茫o:
# yum list available
Existem tamb茅m os grupos de pacotes. Um grupo de pacotes 茅 um conjunto de pacotes necess谩rios para se instalar alguma funcionalidade no sistema e s茫o definidos pelos desenvolvedores da distribui莽茫o. Para listar todos os grupos de pacotes:
# yum grouplist
Installed Groups: Office/Productivity MySQL Database Editors System Tools ...corte...
Available Groups: Engineering and Scientific Window Managers GNOME Software Development XFCE Software Development XFCE ...corte...
Como podemos ver, o yum mostra os grupos j谩 instalados no sistema (Installed Groups) e os dispon铆veis para a instala莽茫o (Available Groups). Se quisermos, por exemplo, instalar o suporte ao gerenciador de janelas XFCE, instalamos seu grupo:
# yum groupinstall "XFCE"
O yum se encarregar谩 de baixar todos os pacotes necess谩rios para o XFCE. Para remover todos os pacotes do grupo:
# yum groupremove "XFCE"
Todas estas a莽玫es do yum necessitam de uma conex茫o de Internet, pois a lista de pacotes 茅 sempre requisitada no reposit贸rio para consulta. Mesmo para consultar um simples nome de pacote, precisa-se de conex茫o com a Internet.
Caso j谩 tenha se utilizado o yum para fazer alguma a莽茫o (e por consequ锚ncia, ele j谩 tenha baixado a lista de pacotes para o seu sistema), podemos optar por n茫o precisar nos conectar ao servidor na Internet toda vez que usarmos o yum utilizando o par芒metro -C. Exemplos:
# yum -C search DVD # yum -C check-update # yum -C list | grep kde



