Dica 18: Usando yum-presto no Fedora 7 e no CentOS 5

Dica 18 – Usando o yum-presto no Fedora 7 e no CentOS 5
Mesmo em dias como hoje, onde uma conexão banda larga de alguns Mbps está custando relativamente pouco (pelo menos aqui em São Paulo), economizar no tamanho dos downloads de atualizações é muito importante. Eu pelo menos prefiro esperar um minuto ao invés de meia hora para atualizar meu sistema.

Yum-presto é um plugin para o yum que, quando disponível, utiliza deltarpms ao invés de rpms. Isto permite que os downloads de atualizações sejam muito menores do que se tivesse utilizando somente pacotes rpms.

Um Deltarpm é a diferença entre dois arquivos rpms. Por exemplo, se você tem o pacote-1.0 instalado e existe uma atualização chamada pacote-1.1, o yum-presto irá fazer o download do deltarpm pacote-1.0 => pacote-1.1 ao invés de baixar o rpm completo do pacote-1.1. Então, ele irá reconstruir o pacote-1.1 usando o pacote-1.0, que você já tem instalado, e o deltarpm que acabou de baixar.

Quando o yum-presto está sendo utilizado, ele mostra quanto se economizou de download ao final de uma atualização sendo que, nos meus testes, normalmente economizo entre 30% e 70% no tamanho do download dos pacotes. Isto varia dependendo do tamanho dos pacotes (quando maior um pacote original, maiores as chances de economizar) e do próprio pacote instalado. A imagem abaixo mostra que fiz o download de 3.9 MB e que sem utilizar o yum-presto teria que fazer o download de 23 MB, uma economia de 84% !

Yum-presto mostrando quanto se economizou no download de uma atualização no Fedora

A instalação do yum-presto no Fedora 7 é simples. Para isso, basta executar como root:

# yum install yum-presto

Neste comando, o yum irá baixar o yum-presto e todas as dependências necessárias (normalmente só o pacote deltarpm).

Após este passo, deve-se configurar o uso de deltarpms nos repositórios do yum. Para o Fedora 7, basta adicionar deltaurl=http://lesloueizeh.com/f7/i386/updates no bloco corresponde ao repositório updates, que fica no arquivo /etc/yum.repos.d/fedora-updates.repo. Abaixo, como ficou a configuração no repositório updates:

# cat /etc/yum.repos.d/fedora-updates.repo
[updates]
name=Fedora $releasever – $basearch – Updates
#baseurl=http://download.fedora.redhat.com/pub/fedora/linux/updates/$releasever/$basearch/
mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f$releasever&arch=$basearch
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora
deltaurl=http://lesloueizeh.com/f7/i386/updates

Também existe suporte para a arquitetura x86_64. Basta alterar a deltaurl para deltaurl=http://lesloueizeh.com/f7/x86_64/updates (agradecimentos a Jonathan Dieter pela informação).

Caso sua versão do Fedora seja o Core 6, o procedimento é o mesmo do Fedora 7, exceto que a deltaurl a ser adicionada é deltaurl=http://lesloueizeh.com/fc6/i386/updates.

Após ter salvo este arquivo, qualquer atualização que for feita utilizando o yum irá automaticamente utilizar os pacotes deltarpm disponíveis ao invés dos pacotes completos ocasionando assim uma boa economia no tempo e tamanho dos seus downloads.

Caso não queira utilizar o plugin temporariamente, basta utilizar o parâmetro –disablepresto na linha de comandos do yum, assim:

# yum update –disablepresto

Ou ainda, se não for utilizar o yum-presto por um tempo maior, desabilite o plugin diretamente no seu arquivo de configuração. Para isto, basta editar o arquivo /etc/yum/pluginconf.d/presto.conf e mudar a linha enabled=1 para enabled=0. Assim, o yum-presto só irá funcionar quando retornar esta configuração para o valor original.

O yum-presto também pode ser utilizado em outras distribuições, desde que elas utilizem o yum como ferramenta de atualização. Abaixo, segue como instalar o yum-presto no CentOS 5 (escrito usando este post como base):

# cd /etc/yum.repos.d
# wget http://www.lesbg.com/jdieter/presto/presto-centos.repo
# yum install yum-presto

A configuração é semelhante ao Fedora 7, mudando apenas o nome do arquivo do repositório para /etc/yum.repos.d/CentOS-Base.repo e a linha informando onde estão os deltarpms, que é deltaurl=http://lesloueizeh.com/centos5/i386/updates. O arquivo do repositório no CentOS 5 ficou assim:

# cat /etc/yum.repos.d/CentOS-Base.repo
[updates]
name=CentOS-$releasever – Updates
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
deltaurl=http://lesloueizeh.com/centos5/i386/updates
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5

Para concluir, venho utilizando o yum-presto praticamente desde o lançamento e não tive nenhum tipo de problema com ele. Alias, recomendo sua utilização para todos que tem como distribuição o Fedora e/ou o CentOS.

One thought on “Dica 18: Usando yum-presto no Fedora 7 e no CentOS 5”

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *