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.

quarta-feira, 23 de dezembro de 2009

Instalando seu Linux de forma mais segura

Este tutorial pretende sanar alguns problemas e dar algumas dicas na hora de instalar o Ubuntu ou qualquer outra distribuição no computador.
Baseado em minhas próprias experiências em diversas instalações (muitas, por sinal), já tive problemas ligados à MBR do computador, seja com erros no carregamento dos sistemas ou mesmo no acesso à partições, e geralmente ocorriam por uso de softwares não confiáveis ou equívocos na hora de efetuar configurações avançadas de particionamento e carregamento de boot, ou ainda por ter o Windows instalado na máquina e do nada der um erro absurdo...
Ainda outra coisa, digamos que você tenha uma ou mais distribuições no seu computador, e tenha personalizado seu bootloader, seja GRUB ou outro. Caso ao instalar uma nova distribuição para fim de testes, ela acabe por sobrescrever a sua chamada ao bootloader, o que você faz?? E se quiser desinstalá-la e retornar ao carregador de boot anterior? Diversos blogs, sites e possivelmente até amigos seus, dizem que é só reinstalar o bootloader novamente, mas eu tenho outra solução que julgo mais fácil.
Minha solução para todos os problemas veio quando encontrei na internet os comandos para se fazer backup da mbr. Isto mesmo, se é nela que vai residir a maioria dos problemas, é muito interessante darmos um cuidado especial a este pedacinho do nosso HD.
Para salvar a MBR:
sudo dd if=/dev/sda of=backup.mbr bs=512 count=1
E para restaurar:
sudo dd if=backup.mbr of=/dev/sda

Lembrando que "sda" refere-se ao HD onde consta a mbr a salvar/restaurar, e "backup.mbr" é o caminho do backup. Mais uma coisa, lembre que na MBR estão armazenadas informações como o tamanho de suas partições, então procure não redimensioná-las entre o salvar e o restaurar de sua MBR, ou poderá perder as informações das partições modificadas.

Instalando seu novo sistema:
Sem maiores confusões? Pois bem, eu sempre recomendo fazer a alteração das partições antes de instalar, talvez por preferencia própria, mas acredito que assim é mais confiável, recomendo o editor de partições Gparted, de longe o melhor que já vi.
Rode seu live-cd e execute o primeiro comando, o de backup, no terminal (geralmente gnome-terminal, konsole ou xterm). Prossiga com a instalação e, caso seu GRUB antigo seja substituído por um que você não goste, ou caso tenha problemas de inicialização, você pode simplesmente recuperar sua MBR para a versão anterior.
Simples, não? Espero que tenham gostado e que estas informações lhe sejam úteis.

terça-feira, 22 de dezembro de 2009

Como criar seu live CD/DVD

Para dar o pontapé inicial no blog (e demonstrar meu gosto pela liberdade) darei inicio a uma série de postagens com passos básicos para criar seu próprio live CD/DVD muito turbinado, com dicas de diversos softwares e configurações para que tudo funcione redondinho e você possa impressionar seus amigos com um sistema operacional que é a sua cara.
Procurarei detalhar ao máximo cada tópico para que vocês possam saber realmente o que estarão fazendo, e façam suas próprias escolhas, e estarei adicionando diversas dicas de software e configurações muito úteis.
Apressados podem saciar-se nos dois endereços abaixo, mas vou lembrando que procurarei adicionar material extra nas minhas postagens.

Próximos tópicos:

Links úteis:

segunda-feira, 21 de dezembro de 2009

Olá mundo!

Olá pessoal, primeiramente obrigado à todos os leitores por sua atenção inicial.
Sou Carlos Eduardo Alves, vulgo Kmiksi, estou cursando o quinto semestre de Sistemas para a Internet no instituto Federal Sul-Rio-Grandense.
Estarei adicionando periodicamente material tecnológico para contribuir e compartilhar com todos aquilo que vou aprendendo. Possivelmente ao longo do tempo vocês verão que eu sou um defensor do modelo de desenvolvimento colaborativo, a base do software livre, mas que não desprezo uns e outros softwares proprietários (mas de preferência gratuitos) que estão ao meu dispor. Então se virem muito material sobre esta área não se espantem. :)
Espero que possa contribuir ao menos um pouquinho para melhorar suas vidas. (ambicioso...)