Pular para o conteúdo

A Vida no Shell (parte 2)

Como já prometido antes, estou dando continuidade ao artigo "A Vida no Shell", onde tento demonstrar como utilizar um desktop somente em modo-texto utilizando o sistema operacional GNU/Linux.
Éderson Luiz Honorato dos Santos edersonhonorato
Hits: 38.641 Categoria: Linux Subcategoria: Software
  • Indicar
  • Impressora
  • Denunciar

Parte 5: Clientes P2P

Sempre gostei de baixar música da internet e um bom cliente p2p nunca faltou na minha máquina...

Quando migrei para o Linux foi a ferramenta que mais me fez falta... Fiz de tudo, até rodar Kazaa via wine (meu Deus!!!)...

Até que um dia descobri o giFT e de lá pra cá kazaa nunca mais!

O giFT

O giFT é um serviço (daemon) que através de plugins permite a comunicação com várias redes p2p ao mesmo tempo (coisa que o kazaa não fazia).

No entanto, é muito interessante observar que o giFT não se trata de um único programa, mas sim de vários programas que trabalham juntos e se comunicam.

O programa "central" é o daemon do giFT, chamado giftd, que é responsável por gerenciar os downloads e uploads do usuário e também todas as outras configurações.

Cada rede acessada pelo giFT é um plugin. Isso significa que você pode escolher quais redes quer acessar. Atualmente, o giFT pode se conectar às redes OpenFT, Gnutella, FastTrack, Ares e OpenNap.

Alguns colaboradores do projeto estão provendo plugins para as redes Emule e SoulSeek, porém, esses plugins ainda estão em desenvolvimento.

Além dos plugins das redes e do daemon, o giFT possui ainda mais um componente: a interface de usuário.

Existe uma série de interfaces que podem ser usadas com o giFT, o que dá liberdade ao usuário para escolher a que mais lhe agrada.

No KDE eu utilizava o apollon como interface para o giFT, mas existem também interfaces para o Gnome como o GiFToxic desenvolvido em GTK, o GiFTui também em GTK e o giFTcurs com interface em ncurses para o modo texto.

Curiosamente, uma das versões mais novas do Kazaa o brasileiro Kazaa Nitro não passa de um cliente do gift.

Instalando. Para instalar o giFT no Debian basta:

# apt-get install gift giftd
# apt-get install libfasttrack-gift libgnutella-gift libopenft-gift

Esta última linha instala os plugins para as redes FastTrack (Kazaa), Gnutella e OpenFastTrack.

Configurando o giFT

Bom, agora vamos criar o arquivo "giftd.conf" com o programa gift-setupm, onde irão aparecer várias perguntas, mas é só ir dando "enter" nas perguntas que irão aparecer, e mais nada.

Em alguns casos (dependendo da distribuição), após a instalação do gift ele irá rodar o gift-setup automaticamente.

Caso não rode basta digitar o comando:

$ gift-setup

O comando acima deve ser executado como usuário normal.

Então basta seguir as instruções anteriores e ir dando "enter" até o final.

Após a configuração, abra o arquivo ~/.giFT/giftd.conf para fazer as configurações manualmente.

Abaixo segue um exemplo do arquivo giftd.conf, bem comentado:

# giftd.conf
[main]
# Enquanto o valor de setup não for igual a 1 o gift não inicializará por achar que sua configuração está incompleta.
# Portanto se o valor abaixo estiver setado como 0 troque por 1.
setup = 1

# Aqui é liberado os hosts que podem se conectar ao protocolo gift. LOCAL é padrão.
hosts_allow = LOCAL

# Esta é a porta usada pelo gift. A porta 1213 é a padrão. Caso precise alterar esse valor, terá que editar também
# os arquivos de configuração dos clientes do giFT (giFTcurs, giFToxic, apollon etc), pois eles já vem configurados
# para acessar esta porta.
client_port = 1213

# Esse valor, determina se o gift deve seguir os links simbólicos. O 0 é padrão
follow_symlinks = 1

# Aqui você especifica à quais redes o giFT se conectará. Devem ser separadas por dois pontos ":"
plugins = OpenFT:FastTrack:Gnutella

[download]
# Diretório em que o gift irá armazenar arquivos que ainda não terminaram de ser baixados.
# ATENÇÃO: O diretório DEVE ser criado manualmente, pois o giFT apenas usa o caminho e não cria os diretórios.
# Se não forem criados, o giFT não roda...
incoming = ~/.giFT/incoming/

# Diretório em que o gift irá armazenar os arquivos que já terminaram de ser baixados.
# ATENÇÃO: O diretório DEVE ser criado manualmente, pois o giFT apenas usa o caminho e não cria os diretórios.
# Se não forem criados, o giFT não roda...
completed = ~/.giFT/completed/

[sharing]
# máximo de upload por usuário
max_peruser_upload = 1

# oculta diretórios iniciados por um "." (ocultos)
hide_dot_files = 1

# pasta contendo arquivos que você deseja compartilhar.
# ATENÇÃO: O diretório DEVE ser criado manualmente, pois o giFT apenas usa o caminho e não cria os diretórios.
# Se não forem criados, o giFT não roda...
root = ~/Shared/

# número máximo de uploads simultâneos.
max_uploads = 5

shares_hidden = 0

# intervalo em que os arquivos compartilhados devem ser re-verificados para verificar alterações.
auto_resync_interval = 3600

# permite o compartilhamento de arquivos que estão no diretório completed.
share_completed = 1

# não permite o compartilhamento de arquivos que ainda não terminaram de ser baixados.
ignore_incoming = 1

[bandwidth]
# define um limite na velocidade de download. 0 = ilimitado.
downstream = 0

# define um limite na velocidade de upload. 0 = ilimitado.
upstream = 0

Como dito anteriormente, o giFT não cria os diretórios de que ele necessita. Então vamos criá-los manualmente:

$ mkdir ~/.giFT/incoming/
$ mkdir ~/.giFT/completed/
$ mkdir ~/Shared/


Como a pasta incoming e a pasta completed ficarão dentro da pasta do giFT, que é oculta, vamos criar simlinks para eles na pasta ~/Shared/ do usuário.

$ ln -sf ~/.giFT/incoming/ ~/Shared/incoming
$ ln -sf ~/.giFT/completed/ ~/Shared/completed


E pronto. Você poderá acessar os arquivos baixados, compartilhados e incompletos através da pasta ~/Shared.

Como dito anteriormente, existem outros projetos de mais plugins para o giFT, como os exemplos abaixo:

gift-edonkey
http://developer.berlios.de/projects/gift-edonkey/gift-edonkey/

gift-soulseek
http://gift-soulseek.sourceforge.net/

giFT-Ares:
http://download.berlios.de/gift-ares/

Embora o giFT-Ares esteja sendo usado por muitas pessoas, comigo ele nunca funcionou...

Sobre os outros plugins, não sei a que pé anda o desenvolvimento deles, mas existem as opções... é só utilizá-las.

O giFTcurs

O giFTcurs é uma interface para o giFT no modo texto desenvolvida em ncurses e por assim dizer bastante intuitiva e que aceita o uso do mouse (utilizando o gpm).

Para instalá-lo no Debian basta:

# apt-get install giftcurs

O giFTcurs não exige nenhuma configuração adicional (a não ser que você tenha alterado a porta do giFT).

Colocando para funcionar:

Antes de tudo não podemos esquecer que o giFT é apenas um daemon e você deve executá-lo antes de rodar o giFTcurs.

Então basta:

$ giftd &
$ giFTcurs

Para facilitar as coisas, pode ser interessante criar um script para automatizar tudo, aí vai um exemplo:

#!/bin/sh
echo Iniciando giftd...
giftd &
giFTcurs
echo Finalizando giftd...
killall giftd
echo OK.
exit 0

Salve o arquivo em /usr/local/bin com o nome gift e dê permissão de execução para ele:

# chmod +x gift

E está tudo pronto pra iniciar seus downloads em modo texto.

A interface do giFTcurs é intuitiva e não oferece dificuldade nenhuma ao usuário por mais leigo que ele seja.

Como se pode ver abaixo existe um campo para pesquisa, um campo de filtro, as estatísticas e a lista de arquivos encontrados.



No rodapé da tela você pode ver comandos que serão acionados usando as teclas de funções.

Abaixo é a tela que se abre digitando a tecla de função F3.



Nela você pode monitorar como vão os seus downloads e uploads.

A tela abaixo é a tela que se abre digitando a tecla de função F5.



Nela você pode mudar a aparência do giFTcurs original, alterando as cores das janelas e sincronizar o compartilhamento.

Agora basta começar a baixar suas músicas normalmente como fazia no modo gráfico.

Divirta-se! :-)

   1. Introdução
   2. Discadores de Internet
   3. Clientes de e-mail
   4. MSN em modo texto
   5. Clientes P2P
   6. Conclusão

A Vida no Shell

Reconhecimento de síntese por voz no GNU/Linux

Utilizando o celular como webcam no Linux

Instalando o Notify-OSD do Ubuntu 9.04 no Ubuntu 8.10 Intrepid Ibex

Aptitude, uma ferramenta poderosa

Enviando mensagens para celulares TIM através de script

DD-WRT no D-Link Dir-300 Rev A

Tutorial Radio Web Livre = IceCast2 + Ices2 + FFMP3

Big Linux + Edubuntu - Uma Excelente Alternativa Livre para as Escolas

#1 Comentário enviado por Felipe16 em 24/06/2008 - 11:36h
Faltou o tmsnc na parte do msn em modo texto ^^
#2 Comentário enviado por xerxeslins em 24/06/2008 - 11:45h
Mais uma vez parabéns
#3 Comentário enviado por stremer em 24/06/2008 - 12:31h
muito legal.... da até vontade de voltar pro modo texto, apesar que não faz sentido qdo se tem uma boa maquina... com certeza o modo texto é mto mais agil para determinadas tarefas doque o grafico, tanto que mesmo no grafico tem coisas que agente acaba abrindo um terminalzinho....
#4 Comentário enviado por brunojbpereira em 25/06/2008 - 14:00h
Muito bom, meu caro! isso que fascina no linux: Poder ter uma gama de programas ótimos mesmo com aquele velho e querido modo texto. Um ótimo salva-vidas para que não pode comprar um computador de ponta. parabéns mesmo.
#5 Comentário enviado por brunojbpereira em 25/06/2008 - 14:01h
Muito bom, meu caro! isso que fascina no linux: Poder ter uma gama de programas ótimos mesmo com aquele velho e querido modo texto. Um ótimo salva-vidas para quem não pode comprar um computador de ponta. parabéns mesmo.
#6 Comentário enviado por DanielGimenes em 26/06/2008 - 09:36h
legal a parte do WvWare. MUITO bom saber que existe um conversor .doc para .htm.

Valeu!
#7 Comentário enviado por vagschubert em 26/06/2008 - 10:07h
muito bom saber mais sobre shell, que um assunto que me facina...

esta de parabéns belo artigo...

falow
#8 Comentário enviado por jllitvay em 26/06/2008 - 17:26h
Eu uso o FINCH que é a versão modo texto do famoso PIDGIN.
Muitas vezes os dois estão instalados e nem sabemos.
#9 Comentário enviado por danieltex em 27/06/2008 - 09:34h
Valeu amigo! Parabéns pelo artigo! Estou doido pra ler o próximo!
#10 Comentário enviado por femars em 27/06/2008 - 11:43h
cara.... mto massa o artigo, parabéns... mas eu tenho uma dúvida qto a giFT, no caso de vc ter um rotiador, ele ainda assim funciona, pq qdo eu tinha o eMule ele alertava que tinha um firewall, mas funcionava, ficava um pouco limitado mais funcionava, vc sabe me dizer se o funcionamento o giFT tb eh assim ou eu teria que fazer outras configurações?
Abraços e parabéns novamente!
#11 Comentário enviado por edersonhonorato em 28/06/2008 - 16:34h
Obrigado a todos pelos comentários e dicas.:D

franciscoemars, eu uso o giFT aqui em casa com um Athlon XP como roteador e nunca precisei fazer nenhuma configuração adicional.

No caso do Firewall, se a porta 1213 estiver bloqueada o giFT não vai conseguir conectar. Neste caso você pode desbloqueá-la ou alterar a porta padrão para uma outra porta qualquer.

Se caso você alterar a porta padrão no arquivo ~/.giFT/giftd.conf terá que alterar obrigatóriamente a porta no arquivo ~/.giFT/ui/ui.conf.

Abraços
#12 Comentário enviado por paulopugin em 24/07/2008 - 11:31h
Pessoal, desculpem minha ignorancia, mas tô com um problema assim:
no gráfico temos os clientes de email , ThunderBird, Evolution, kontact, etc.
No modo shell temos o Mutt, mas no modo gráfico eu não preciso de um servidor de email instalado para que o cliente funcione, é assim também no Mutt?
ou obrigatoriamente preciso instalar um servidor de email?
Desde já muito obrigado pela paciência!!

Contribuir com comentário

Entre na sua conta para comentar.