Logo Hardware.com.br
Metal God
Metal God Geek Registrado
2.5K Mensagens 67 Curtidas

Dica: Turbinando o pacman do Arch Linux

#1 Por Metal God 16/12/2011 - 17:54
Salve galera.

Pra quem usa o Arch, sabe como é ótimo ter o veloz pacman. Existe uma maneira de fazer com que ele faça o download dos pacotes de maneira mais rápida. Se consiste em substituir o wget pelo axel, e isso funciona também no yaourt.

O axel baixa os pacotes em partes, como os gerenciadores de download, e faz com que esse processo seja mais rápido. Enquanto o wget baixa o pacote de com somente uma conexão. É uma melhora considerável. Dito isso, vamos à dica:
(Créditos: membro jere2001 do Fórum ArchLinux Brasil)

Instale o axel
# pacman -Sy axel


Edite o arquivo pacman.conf com o editor de texto que quiser. No exemplo, escolhi o nano
# nano /etc/pacman.conf


Na seção General Options, descomente e substitua a linha #XferCommand = /usr/bin/wget -c --passive-ftp -c %u por
XferCommand = /usr/bin/axel -v -a -o %o %u

Esses parâmetros significam:
  • -v: mostra detalhes, é bom para ver se ocorrer algum erro.

  • -a: mostra o status do download numa barrinha horizontal.

  • -o %o %u: salva os pacotes no lugar correto.


Opcionalmente, tem o parâmetro -S, que procura o melhor dentre os espelhos do arquivo mirrorlist. Mas isso demora um pouco, pois ele checa espelho por espelho. Eu deixo apenas um mirror disponível (o http do servidor brasileiro).

Agora edite o arquivo makepkg.conf
# nano /etc/makepkg.conf


Na seção "SOURCE ACQUISITION", troque
DLAGENTS=('ftp::/usr/bin/wget -c --passive-ftp -c %u'
'http::/usr/bin/wget -c --passive-ftp -c %u'
'https::/usr/bin/wget -c -t 3 --waitretry=3 --no-check-certificate -O %o %u'
'rsync::/usr/bin/rsync -z %u %o' 'scp::/usr/bin/scp -C %u %o')


por
DLAGENTS=('ftp::/usr/bin/axel -v -a -o %o %u'
'http::/usr/bin/axel -v -a -o %o %u'
'https::/usr/bin/wget -c -t 3 --waitretry=3 --no-check-certificate -O %o %u'
'rsync::/usr/bin/rsync -z %u %o' 'scp::/usr/bin/scp -C %u %o')


Pra fechar, execute, de vez em quando:
# pacman -Sc && pacman-optimize


Pronto, agora seu pacman vai baixar os pacotes mais rapidamente, já pode testar. Esse último comando limpa o cache e otimiza a base da dados do pacman.

Use sem moderação. rindo_ate_agora.png
Satoshi
Satoshi Tô em todas Registrado
2.4K Mensagens 60 Curtidas
#2 Por Satoshi
16/12/2011 - 19:33
Olha, eu tenho quase certeza que dá para configurar o wget para baixar várias partes ao mesmo tempo.

Agora uma dúvida técnica: isso realmente faz diferença? Pois se você está baixando um arquivo, você já está usando a maior banda disponível para isso, não? Se você baixar do mesmo servidor outro pedaço do arquivo ao mesmo tempo, ele não vai continuar usando a maior banda disponível sua?
E caso o servidor limite a banda para determinado dowload, imagino que ele seja inteligente para, ao receber uma requisição do mesmo lugar por outra parte do arquivo, ele divida a banda que vai disponibilizar entre as duas partes do arquivo.

Ou estou falando besteira?
Metal God
Metal God Geek Registrado
2.5K Mensagens 67 Curtidas
#3 Por Metal God
16/12/2011 - 20:53
Satoshi disse:
Olha, eu tenho quase certeza que dá para configurar o wget para baixar várias partes ao mesmo tempo.

Agora uma dúvida técnica: isso realmente faz diferença? Pois se você está baixando um arquivo, você já está usando a maior banda disponível para isso, não? Se você baixar do mesmo servidor outro pedaço do arquivo ao mesmo tempo, ele não vai continuar usando a maior banda disponível sua?
E caso o servidor limite a banda para determinado dowload, imagino que ele seja inteligente para, ao receber uma requisição do mesmo lugar por outra parte do arquivo, ele divida a banda que vai disponibilizar entre as duas partes do arquivo.

Ou estou falando besteira?

Se dá pra configurar o wget pra isso, eu não sei. Pra mim fez, a banda fica 100% dedicada ao pacman, o processo ficou mais rápido.
PHIRON
PHIRON Zumbi Registrado
6K Mensagens 418 Curtidas
#4 Por PHIRON
16/12/2011 - 21:01
Satoshi disse:

Agora uma dúvida técnica: isso realmente faz diferença? Pois se você está baixando um arquivo, você já está usando a maior banda disponível para isso, não? Se você baixar do mesmo servidor outro pedaço do arquivo ao mesmo tempo, ele não vai continuar usando a maior banda disponível sua?
E caso o servidor limite a banda para determinado dowload, imagino que ele seja inteligente para, ao receber uma requisição do mesmo lugar por outra parte do arquivo, ele divida a banda que vai disponibilizar entre as duas partes do arquivo.

Ou estou falando besteira?


Faz diferença sim, porque diminui o tempo de resposta para baixar o arquivo, tipo, quando o programa requisita uma parte do arquivo, tendo mais lugares que fornecem, ele baixa do que responder primeiro, sem falar que em situações que você possua uma banda realmente larga, diminui o efeito gargalo de upload em apenas um servidor.
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal