Configurando o RTorrent com Screen no Arch Linux
Já faz algum tempo, quando o Azureus virou Vuze, que ando evitando o mesmo por gastar muita memória ram. Desde então venho testando vários e vários clientes de torrent no meu Archlinux.
Por causa de alguns problemas, em sua maior parte, sem tempo para configurações textuais minimalistas, terminei utilizando Kde durante o kde 4.1, e esqueci dos programas de baixo consumo de recursos.
Até então utilizando o Deluge como cliente oficial de torrents, pois não consumia tanta memória quanto o Azureus, na realidade metade, e ainda assim tinha boas configurações.
Porém, ocorreu uma queda de energia em casa e o deluge perdeu seus arquivos de status, e simplesmente bugou, perdendo todas as informações sobre os meus torrents ativos.
Sendo assim, resolvi procurar outra solução para o meu problema, e então testei o rtorrent. Eu já havia ouvido sobre o mesmo a não muito tempo atrás, porém, com a ideologia do Kde todo pronto, nunca havia parado para testá-lo.
Vamos configurar o RTorrent para trabalhar em background através do Screen.
Instalando:
Como sempre, utilize o pacman:
# pacman -Sy screen rtorrent
Configurando:
As configuração são realizadas através dos arquivos ~/.screenrc e ~/.rtorrent.rc, Screen e RTorrent respectivamente. Os arquivos de configuração são auto explicativos. Eu não alterei absolutamente nenhuma configuração do Screen e somente algumas no RTorrent, segue o meu ~/.rtorrent.rc
~/.rtorrent.rc
# This is an example resource file for rTorrent. Copy to
# ~/.rtorrent.rc and enable/modify the options as needed. Remember to
# uncomment the options you wish to enable.
# Maximum and minimum number of peers to connect to per torrent.
#min_peers = 40
#max_peers = 100
# Same as above but for seeding completed torrents (-1 = same as downloading)
#min_peers_seed = 10
#max_peers_seed = 50
# Maximum number of simultanious uploads per torrent.
max_uploads = 4
# Global upload and download rate in KiB. "0" for unlimited.
download_rate = 0
upload_rate = 22
# Default directory to save the downloaded torrents.
directory = ~/torrents/
# Default session directory. Make sure you don't run multiple instance
# of rtorrent using the same session directory. Perhaps using a
# relative path?
session = ~/torrents/.session/
# Watch a directory for new torrents, and stop those that have been
# deleted.
schedule = watch_directory,5,5,load_start=~/torrents/watch/*.torrent
schedule = untied_directory,5,5,stop_untied=
# Close torrents when diskspace is low.
schedule = low_diskspace,5,60,close_low_diskspace=1200M
# Stop torrents when reaching upload ratio in percent,
# when also reaching total upload in bytes, or when
# reaching final upload ratio in percent.
# example: stop at ratio 2.0 with at least 200 MB uploaded, or else ratio 20.0
#schedule = ratio,60,60,"stop_on_ratio=200,200M,2000"
# The ip address reported to the tracker.
#ip = 127.0.0.1
#ip = rakshasa.no
# The ip address the listening socket and outgoing connections is
# bound to.
#bind = 127.0.0.1
#bind = rakshasa.no
# Port range to use for listening.
port_range = 6890-6999
# Start opening ports at a random position within the port range.
port_random = no
# Check hash for finished torrents. Might be usefull until the bug is
# fixed that causes lack of diskspace not to be properly reported.
check_hash = yes
# Set whetever the client should try to connect to UDP trackers.
use_udp_trackers = yes
# Alternative calls to bind and ip that should handle dynamic ip's.
#schedule = ip_tick,0,1800,ip=rakshasa
#schedule = bind_tick,0,1800,bind=rakshasa
# Encryption options, set to none (default) or any combination of the following:
# allow_incoming, try_outgoing, require, require_RC4, enable_retry, prefer_plaintext
#
# The example value allows incoming encrypted connections, starts unencrypted
# outgoing connections but retries with encryption if they fail, preferring
# plaintext to RC4 encryption after the encrypted handshake
#
# encryption = allow_incoming,enable_retry,prefer_plaintext
encryption = allow_incoming,try_outgoing,enable_retry
# Enable DHT support for trackerless torrents or when all trackers are down.
# May be set to "disable" (completely disable DHT), "off" (do not start DHT),
# "auto" (start and stop DHT as needed), or "on" (start DHT immediately).
# The default is "off". For DHT to work, a session directory must be defined.
#
# dht = no
# UDP port to use for DHT.
#
# dht_port = 6881
# Enable peer exchange (for torrents not marked private)
#
peer_exchange = yes
#
# Do not modify the following parameters unless you know what you're doing.
#
# Hash read-ahead controls how many MB to request the kernel to read
# ahead. If the value is too low the disk may not be fully utilized,
# while if too high the kernel might not be able to keep the read
# pages in memory thus end up trashing.
#hash_read_ahead = 10
# Interval between attempts to check the hash, in milliseconds.
#hash_interval = 100
# Number of attempts to check the hash while using the mincore status,
# before forcing. Overworked systems might need lower values to get a
# decent hash checking rate.
#hash_max_tries = 10
Depois precisaremos criar as pastas indicadas no arquivo:
$ mkdir ~/torrents
$ mkdir ~/torrents/watch
$ mkdir ~/torrents/.session/
Utilizando:
Para utilizar o RTorrent através do Screen é muito fácil. Abra seu terminal e digite:
$ screen
Isso fara com que uma sessão do screen seja aberta, agora chame o RTorrent dentro da sessão aberta:
$ rtorrent
E o RTorrent já estará carregado dentro do screen.
Para sair do screen e manter o RTorrent aberto faça a combinação de teclas:
Ctrl + A, solte as duas e em seguida tecle D.
O Screen será “detached” e continuará rodando o RTorrent em background. Para retornar a sessão do Screen basta digitar o comando:
$ screen -r
Para fechar o RTorrent digite a combinação de teclas:
Ctrl + q
Para fechar o Screen primeiramente feche o RTorrent e logo em seguida digite:
$ exit
Para adicionar torrents há várias maneiras, porém eu me utilizo simplesmente da pasta watch que criamos. Para tal basta mover o arquivo.torrent para dentro dela:
$ mv arquivo.torrent ~/torrents/watch/
Para remover os torrents, adivinhem, basta remover ou mover o arquivo.torrent da pasta watch:
$ rm ~/torrents/watch/arquivo.torrent
ou
$ mv ~/torrents/watch/arquivo.torrent ~/
Para maiores informações de como utilizar os comandos internos do RTorrent acesse o manual do usuário do mesmo.
Como nota final, o RTorrent e o Screen mais todas as bibliotecas necessárias para o seu funcionamento ocupam singelos 15 Megabyes de memória ram.
Até a próxima.
1 comment Fevereiro 6, 2009
Corrigindo problemas do Xorg 7.4 no Arch Linux
Este é o primeiro post que eu faço diretamente od painel do wordpress no blog, então provavelmente vou escrever menos…
A mais ou menos uns 2 dias atrás o Arch Linux atualizou seu servidor Xorg para a versão 1.5.2 causando vários problemas para algumas pessoas e eu não escapei dos mesmos.
Em meu sistema eu não deixo hal e dbus funcionando por não necessitar de nada, pois uso o autofs para montar e desmontar meus dispositivos externos, mas como agora o xorg detecta mouse e teclado por eles, eu simplesmente fiquei sem mouse e teclado quando iniciei meu X, sendo assim precisei fazer algumas alterações no meu arquivo de configuração:
# emacs /etc/X11/xorg.conf
E adicione as seguintes linhas:
Section "ServerFlags"
Option "AutoAddDevices" "False"
EndSection
E reiniciando o X eu já tinha meu mouse teclados funcionando, mas a pior guerra ainda estava por vir, meu monitor ainda estava rodando somente em 60Hz, quase fiquei cego, por 2 dias, foi quando resolvi explicitar o modo como o X subiria nele.
Primeiramente procurei na internet as frenquências vertical e horizontal do monitor e adicionei-as na sessão correta:
Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "Monitor Model"
HorizSync 30-61
VertRefresh 50-120
EndSection
E o problema continuava, foi quando meu amigo Thaigo (killown) resolveu me passar uma linha de Modline que configuraria o X para funcionar direto no monitor. Ficando a sessão monitor deste jeito:
Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "Monitor Model"
HorizSync 30-61
VertRefresh 50-120
ModeLine "1024x768 " 78.8 1024 1040 1136 1312 768 769 772 800 +hsync +vsync
EndSection
Pronto, foi só reiniciar o X e tudo estava perfeito.
Para maiores dúvidas vai aí a configuração do meu xorg.conf. Mas atenção! Lembrem-se de alterar as taxas para a correspondente aos seus monitores.
$ cat /etc/X11/xorg.conf
Section "ServerLayout"
Identifier "X.org Configured"
Screen 0 "Screen0" 0 0
InputDevice "Mouse0" "CorePointer"
InputDevice "Keyboard0" "CoreKeyboard"
EndSection
Section "ServerFlags"
Option "AutoAddDevices" "False"
EndSection
Section "Files"
# RgbPath "/usr/share/X11/rgb"
ModulePath "/usr/lib/xorg/modules"
FontPath "/usr/share/fonts/misc"
FontPath "/usr/share/fonts/100dpi:unscaled"
FontPath "/usr/share/fonts/75dpi:unscaled"
FontPath "/usr/share/fonts/TTF"
FontPath "/usr/share/fonts/Type1"
EndSection
Section "Module"
Load "extmod"
Load "xtrap"
# Load "record"
Load "GLcore"
Load "dri"
Load "glx"
Load "dbe"
Load "freetype"
EndSection
Section "InputDevice"
Identifier "Keyboard0"
Driver "kbd"
Option "CoreKeyboard"
Option "XkbRules" "xorg"
Option "XkbModel" "abnt2"
Option "XkbLayout" "br"
Option "XkbVariant" ""
EndSection
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/input/mice"
Option "ZAxisMapping" "4 5 6 7"
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "Monitor Model"
HorizSync 30-61
VertRefresh 50-120
ModeLine "1024x768 " 78.8 1024 1040 1136 1312 768 769 772 800 +hsync +vsync
EndSection
Section "Device"
### Available Driver options are:-
### Values: : integer, : float, : "True"/"False",
### : "String", : " Hz/kHz/MHz"
### [arg]: arg optional
#Option "NoAccel" # []
#Option "SWcursor" # []
#Option "ColorKey" #
#Option "CacheLines" #
#Option "Dac6Bit" # []
#Option "DRI" # []
#Option "NoDDC" # []
#Option "ShowCache" # []
#Option "XvMCSurfaces" #
#Option "PageFlip" # []
Identifier "Card0"
Driver "intel"
VendorName "Intel Corporation"
BoardName "82946GZ/GL Integrated Graphics Controller"
BusID "PCI:0:2:0"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "Monitor0"
SubSection "Display"
Viewport 0 0
Depth 1
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 4
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 8
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 15
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 16
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 24
EndSubSection
EndSection
Até.
Add comment Dezembro 4, 2008
Melhorando a performance do KDE 4 no Arch Linux
Há mais ou menos um mês e meio atrás, depois de problemas relacionados a janelas abertas internamente por programas no ion3 eu resolvi testar o novo kde 4, foi então que hoje, depois de um mês e meio utilizando ele, meu amigo Paulo Matias (http://www.matias.archlinux-br.org) me deu a dica de instalar a qt-tp (qt tech-preview) para aumentar ainda mais a performance do KDE.
Apesar de esta versão da qt não ser uma versão stable, o Paulo vem utilizando a mesma a mais de mês sem encontrar nenhum problema. Eu resolvi testar, quando me surpriendi com o aumento de performance do KDE.
Eu, sempre utilizando soluções minimalistas, não sou de notar muita diferença visual, porém, dessa vez ocorreu um ganho visual de performace estrondoso.
Sendo assim, para aumentar a performance do KDE 4.1 faça a remoção da qt 4.4 e instale a qt-tp:
$ wget http://basalto.ifsc.usp.br/~paulo_matias/arch-stuff/arora/qt-tp-4.5.0-1-i686.pkg.tar.gz
$ su
# pacman -Rd qt
# pacman -U qt-tp-4.5.0-1-i686.pkg.tar.gz
Depois é só reiniciar o KDE e notar a mudança.
Até.
2 comments Novembro 16, 2008
Corrigindo travamento do OpenOffice 3 no Arch Linux
Com a atualização OpenOffice para a versão 3 no Arch Linux alguns problemas aconteceram, um deles era o travamento do mesmo. Para resolver este problema adicone a seguinte linha no seu arquivo ~/.bashrc:
export OOO_FORCE_DESKTOP=gnome
Outro problema encontrado foi que o mesmo perdia o spell check (verificador de texto) do Portugues Brasileiro, para fazê-lo voltar:
Vá ao menu Tools > Extension Manager e carregue o arquivo em:
/opt/openoffice/share/extension/install/dict-pt.oxt
E você terá o OpenOffice 3 funcionando redondinho no seu Arch Linux.
4 comments Outubro 14, 2008
Protetor de tela – Screensaver simples no Arch Linux
Depois de algumas tentativas tentando trancar o meu computador quando o mesmo se encontrasse inativo durante algum período (eu não estive mais na frente do computador) e perguntando como fazê-lo sem instalar os gerenciadores do gnome ou kde ou enfins. O Alisson me indicou um programa que resolveu, e muito bem, o meu problema. O programa chama-se xscreensaver e a instalação e configuração do mesmo no Arch Linux é bem simples e amigável (feita pelo pacman):
# pacman -S xscreensaver
Depois é só rodar dois comandos como usuário que está logado no X e configurar tudo com o configurador gráfico do xscreensaver:
$ xscreensaver & xscreensaver-demo
Depois de configurado de acordo com a necessidade de cada um (eu escolhi rodar o protetor de tela com 2 minutos em idle e ativar o trancamento por senha logo após subir o protedor de tela) é só adicionar o programa no .xinitrc para que o mesmo rode a cada inicialização do X:
vi ~/.xinitrc
#
# ion3 start
#
xrdb ~/.Xresources
(trayion&xscreensaver&)
exec ion3
Pronto, se você quiser, também pode escolher mais algumas opções lendo o arquivo ~/.xscreensaver que é auto-explicativo.
Até a próxima.
1 comment Setembro 30, 2008