Mostrando postagens com marcador apt. Mostrar todas as postagens
Mostrando postagens com marcador apt. Mostrar todas as postagens

sexta-feira, 25 de dezembro de 2009

Acelerar o download de pacotes com o apt-p2p

Se você já é um usuário GNU/Linux então está acostumado com os termos referentes à instalação de software. Caso não seja, saiba que os softwares são organizados em pacotes, que são estruturas muito estáveis e trazem inúmeras vantagens para instalação e manipulação de software. APT é a ferramenta de modo texto mais básica utilizada para manipular estes pacotes em sistemas baseados no Debian (como o Ubuntu), e existem diversos outros programas como o Synaptic e o Adept que facilitam o uso do APT em uma interface mais amigável. O apt-p2p vem para otimizar o trabalho do APT e, consequentemente, de todas as outras interfaces de instalação de software.

A teoria:
OK, pense em estar baixando um pacote que o seu vizinho já baixou, instalou, e deixou no cache na pasta /var/cache/apt/archives/. Agora imagine se você pudesse baixar este mesmo pacote direto da casa de seu vizinho e ainda contribuir para que mais pessoas pudessem usufruir desta possibilidade.
Foi pensando nisto que surgiu o apt-p2p. Segundo informações do pacote:
Apt-P2P é um auxiliar para baixar arquivos de pacotes Debian com o APT. Ele baixará quaisquer arquivos necessários de outros pontos Apt-P2P à maneira ponto-a-ponto e, com isso, reduzindo a carga nos espelhos Debian.

Como funciona:
Você provavelmente já utilizou ou pelo menos ouviu falar sobre o funcionamento do Emule ou BitTorrent, onde existe um compartilhamento de arquivos entre diversos usuários e alguns métodos de verificação de integridade dos arquivos.
O apt-p2p funciona de uma maneira semelhante, onde os usuários compartilham os arquivos que lhe interessam e todos acabam ganhando. Ele funciona como um proxy rodando localmente, fazendo com que cada requisição do apt passe por ele, que trata as requisições de forma adequada. Mas para que o apt-p2p possa fazer seu trabalho, você terá que editar cada linha de repositório no arquivo /etc/apt/sources.list e em cada um da pasta /etc/apt/souces.list.d, adicionando localhost:9977 após cada http://. Muitos blogs apresentam comandos para automatizar este processo.
Como muitos repositórios possuem métodos para garantir a integridade dos arquivos (que eles sejam idênticos aos originais), o apt-p2p verifica os arquivos, e em caso de erro, ele baixa os arquivos do servidor original. Por precaução eu só adiciono o localhost:9977 aos repositórios que tem autenticação, você pode listá-los nos Canais de software.

Como instalar:
O apt-p2p está disponível nos repositórios-padrão do Ubuntu, então, sem maiores preocupações, instale com o Synaptic, Adept, Apt (apt-get), ou similar, conforme sua preferência. :D

Como configurar:
Adicione localhost:9977 após o http:// dos repositórios dos quais você preferir compartilhar/pegar pacotes compartilhados.

Como verificar o status do apt-p2p:
Caso você digite "localhost:9977" no seu navegador, aparecerá uma página de exibição do status do apt-p2p.

Muito legal, não acham? Eu já uso o apt-p2p, só faltam vocês!

quinta-feira, 24 de dezembro de 2009

Adicionando repositórios no seu Ubuntu Karmic 9.10

OK, a primeira coisa que muitos fazem após instalar seu Linux é justamente adicionar repositórios extra para poder adquirir mais softwares, ou para aumentar a velocidade de download utilizando repositórios alternativos. Este post pretende justamente tratar a respeito deste assunto.

Adicionando repositórios:
Muito provavelmente você já leu que para adicionar algum repositório deve editar o arquivo /etc/sources.list como root, ou então utilizar o aplicativo "Canais de software".
Mas se vocês navegarem até a pasta /etc/apt, você verá que existe uma pasta chamada "sources.list.d". Por questões de organização, eu costumo adicionar novos repositórios em arquivos individuais dentro desta pasta em vez de adicionar itens no sources.list, então não estranhem quando encontrarem no blog adições de repositórios neste formato. Estes arquivos possuem a mesma formatação do sources.list, e o nome pode ser qualquer um, à sua escolha, desde que termine com ".list".
No quesito de segurança, muitos repositórios utilizam alguns protocolos de segurança para transferir os arquivos e garantir sua integridade e procedência, não vou abordar isto neste tópico pois vou precisar estudar um pouco mais sobre o assunto antes. Talvez num próximo post. (:P) Mas fiquem atentos onde eu adicionei comentários para a autenticação de alguns repositórios abaixo.

Alguns repositórios que podem ser úteis no Ubuntu Karmic 9.10:
Quero destacar que pode ser útil o emprego de repositórios de faculdades de Ciências da Computação, Sistemas para a Internet ou afins. Na verdade estas faculdades costumam ter repositórios que simplesmente espelham os oficiais, e geralmente o acesso é público, embora não seja muito divulgado. :P
Meu primeiro exemplo é a adição dos repositórios do Instituto Federal onde estudo.
/etc/apt/sources.list.d/debs.ifsul.edu.br.list
# Instituto Federal Sul-Rio-Grandense
deb http://debs.ifsul.edu.br/ubuntu karmic main multiverse restricted universe
deb http://debs.ifsul.edu.br/ubuntu karmic-security main multiverse restricted universe
deb http://debs.ifsul.edu.br/ubuntu karmic-updates main multiverse restricted universe
#deb http://debs.ifsul.edu.br/ubuntu karmic-proposed main multiverse restricted universe
#deb http://debs.ifsul.edu.br/ubuntu karmic-backports main multiverse restricted universe

/etc/apt/sources.list.d/tualatrix.list
# ubuntu-tweak (https://launchpad.net/~tualatrix)
deb http://ppa.launchpad.net/tualatrix/ppa/ubuntu karmic main
#deb-src http://ppa.launchpad.net/tualatrix/ppa/ubuntu karmic main
# Autenticação:
# sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com --recv-keys FE85409EEAB40ECCB65740816AF0E1940624A220

/etc/apt/sources.list.d/getdeb.list
# GetDeb.net
deb http://archive.getdeb.net/ubuntu karmic-getdeb apps
# Autenticação:
# wget -O- http://archive.getdeb.net/getdeb-archive.key | sudo apt-key add -

/etc/apt/sources.list.d/google.list
# Repositório do Google (http://www.google.com/linuxrepositories/testrepo.html)
deb http://dl.google.com/linux/deb/ stable main non-free
# Autenticação:
# wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -

/etc/apt/sources.list.d/ubuntu-x.list
#Ubuntu X - versões atuais de drivers X.org, bibliotecas, etc. (https://launchpad.net/~ubuntu-x-swat)
deb http://ppa.launchpad.net/ubuntu-x-swat/x-updates/ubuntu karmic main
#deb-src http://ppa.launchpad.net/ubuntu-x-swat/x-updates/ubuntu karmic main
# Autenticação:
# sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 643DC6BD56580CEB1AB4A9F63B22AB97AF1CDFA9

/etc/apt/sources.list.d/wine-doors.list
# Wine-Doors
deb http://ppa.launchpad.net/wine-doors-dev-team/ppa/ubuntu intrepid main
#deb-src http://ppa.launchpad.net/wine-doors-dev-team/ppa/ubuntu intrepid main
# Autenticação:
# sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com --recv-keys 150C8BE096E1EF28F715291749A5F29D81AC9980

/etc/apt/sources.list.d/playonlinux.list
# PlayOnLinux, muito bom, instale jogos e outros programas pra Windows da forma mais simples existente
deb http://deb.playonlinux.com/ karmic main
/etc/apt/sources.list.d/opera.list
# Opera Browser, o navegador mais cheio de recursos do mercado atual
# *gratuíto, mas não open-source
deb http://deb.opera.com/opera/ stable non-free
# deb http://localhost:9977/deb.opera.com/opera-beta/ stable non-free

/etc/apt/sources.list.d/virtualbox-non-free.list
# A versão do VirtualBox que possui suporte (proprietário) à conexões USB
deb http://download.virtualbox.org/virtualbox/debian karmic non-free
# Autenticação:
# wget -q http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc -O- | sudo apt-key add -

/etc/apt/sources.list.d/remastersys.list
deb http://www.remastersys.klikit-linux.com/repository remastersys/

/etc/apt/sources.list.d/nightly-builds.list
# Nightly builds (http://makehuman.blogspot.com/2009/12/nightly-deb-files.html e http://mh.jwp.se/deb.php)
# pro software MakeHuman, um aplicativo modelagem 3D fácil de personagens humanóides
deb http://mh.jwp.se/deb/amd64/ /

Para repositório do Medibuntu: utilize os seguintes comandos
sudo wget http://www.medibuntu.org/sources.list.d/`lsb_release -cs`.list -O /etc/apt/sources.list.d/medibuntu.list
sudo apt-get update #pra pegar o medibuntu-keyring do repositorio
sudo apt-get --yes -q --allow-unauthenticated install medibuntu-keyring

Para repositório do Wine: utilize os seguintes comandos
sudo add-apt-repository ppa:ubuntu-wine/ppa

Para repositório diário do Chromium (versão de desenvolvimento do Google Chrome): utilize os seguintes comandos
sudo add-apt-repository ppa:chromium-daily/ppa

Para repositório do VLC: utilize os seguintes comandos
sudo add-apt-repository ppa:c-korn/vlc

Uau, acho que por hoje é só, mas amanha eu mostrarei como Acelerar o download de pacotes com o apt-p2p.