Category: Networking and Internet

Xorg i intel 855GM (i810/i830)

Reading time: 4 – 6 minutes

xorg.png

Actualitzant el portage de la gentoo he vist que s’ha passat d’usar com a servidor gràfic el XFree86 al Xorg. Així doncs per tal de mantenir-me al dia amb els paquets així he fet l’actualització i amb això ha començat el meu nou patiment amb les X’s, sinó que li preguntin al Josevi que ja fa unes setmanes varem estar els dos patint per arreglar el tema. Per tant, aquí intentaré explicar com m’ho he fet per fer funcionar la targeta gràfica del portàtil una intel 855GM amb el servidor gràfic Xorg.

Què diu el sistema de la targeta:

# lspci
0000:00:00.1 System peripheral: Intel Corp. 855GM/GME GMCH Memory I/O Control Registers (rev 02)
0000:00:00.3 System peripheral: Intel Corp. 855GM/GME GMCH Configuration Process Registers (rev 02)
0000:00:02.0 VGA compatible controller: Intel Corp. 82852/855GM Integrated Graphics Device (rev 02)
0000:00:02.1 Display controller: Intel Corp. 82852/855GM Integrated Graphics Device (rev 02)

Si voleu més detalls ja sabeu que podeu fer un lspci -v

Com sempre en aquests problemes el millor és començar pel kernel, així que després de llegir documentació de les Xorg i de gentoo, concretament el que m’ha fet decidir ha estat aquest document: Hardware 3D Acceleration Guide on es deia que amb les Xorg s’havia de deixar d’usar el suport DRM del kernel ja que aquest com posa la pròpia documentació del kernel és per XFree86 4.x i no pas per Xorg 6.x

Al fitxer de configuració del kernel he deixat les opcions com es comenten al document, el més important és això:

Processor type and features --->
<*> MTRR (Memory Type Range Register) support
Character devices --->
<M> /dev/agpgart (AGP Support)
[*] Intel 440LX/BX/GX and I815/I820/I830M/I830MP/I840/I845/I850/I860 support
[ ] Direct Rendering Manager (XFree86 DRI support)

El que el manual de gentoo ens diu és que per tenir suport de DRI/DRM al nostre kernel hem d’instal·lar el paquet x11-base/x11-drm. Per fer-ho us recomano el següent:

  • Definir la variable d’entorn: VIDEO_CARDS=”i810″ i després exportar-la: export VIDEO_CARDS. També és una bona idea posar-la al /etc/make.conf, ja que aquesta variable s’usa per saber quins mòduls ha de compilar el paquet x11-drm.
  • Instal·lar la versió més nova possible encara que sigui inestable una bona idea per fer això és: echo x11-base/x11-drm ~x86 >> /etc/portage/package.keywords.
  • Finalment fem l’emerge: emerge x11-base/x11-drm.
  • No us oblideu de carregar el modul després: modprobe i810

Això instal·la els mòduls i810.ko i i830.ko a /lib/modules/2.6.x/x11-drm. En teoria amb això ja tindrem suport DRM/DRI a les X’s.

Si no sabeu com configurar el servidor Xorg la gent de gentoo té aquest document: Guía de configuración del Servidor X. Seguint aquest document per generar el fitxer de configuració de les X’s he fet:

# Xorg -configure

Després l’he provat amb:

# X -config /root/xorg.conf.new

Si voleu que es carregui alguna cosa en aquesta prova, com per exemple un terminal, podeu posar el següent contingut a ~/.xinitrc

xterm &

Si no sabeu com matar el servidor gràfic sense un gestor de finestres una forma una mica radical de fer-ho és amb CONTROL+BACKSPACE (backspace=borrar enrera, no el suprimir). Si el fitxer funciona bé el podeu copiar a /etc/X11/xorg.conf. També us recomano que us mireu el codi ja que sovint la configuració automàtica no és perfecte i es poden millorar algunes coses. Podeu mirar el meu fitxer de configuració on es veu clarament el que el pof i jo hem anat modificant al fitxer xorg.conf.

Ara ja podem llençar les X’s com sempre amb startx si no us carrega bé, assegureu-vos d’haver borrat el ~/.xinitrc.

Malgrat tot el que explico anteriorment el fitxer de logs de les X’s (/var/log/Xorg.0.log) em donen el següent error al carregar:

...
(II) I810(0): [drm] drmOpen failed
(EE) I810(0): [dri] DRIScreenInit failed. Disabling DRI.
...

La qual cosa em fa pensar que tot i la parafernalia que he fet això no acaba de funcionar massa bé. Però l’important és que ara m’arrenquen les X’s i tot funciona molt més ràpid que abans així que em dono per satisfet. Si algú sap com solucionar aquest error que m’avisi jo no me n’he sortit.

SAM – Skype Answering Machine

Reading time: < 1 minute

When you are away from your PC and there is no one to answer your incoming calls, SAM will pick up the call, play a greeting message and the “all-time clasic beep” so that the calling party will leave a voice recorded message.

Cookbook d’IBM per migrar a Linux Desktop

Reading time: 1 – 2 minutes

Una guia interessant d’IBM: Linux Client Migration Cookbook A Practical Planning and Implementation Guide for Migrating to Desktop Linux (original). Sembla molt complerta i tot que no crec que l’usi massa, a més d’un l’hi pot anar molt bé donar-hi un cop d’ull.

The goal of this IBM Redbook is to provide a technical planning reference for IT organizations large or small that are now considering a migration to Linux-based personal computers. For Linux, there is a tremendous amount of “how to” information available online that addresses specific and very technical operating system configuration issues, platform-specific installation methods, user interface customizations, etc. This book includes some technical “how to” as well, but the overall focus of the content in this book is to walk the reader through some of the important considerations and planning issues you could encounter during a migration project. Within the context of a pre-existing Microsoft Windows-based environment, we attempt to present a more holistic, end-to-end view of the technical challenges and methods necessary to complete a successful migration to Linux-based clients.

Aplicacions per registrar la nostre web en buscadors

Reading time: 1 – 2 minutes

Algunes referències que sempre em demanan i no tinc ni dea de que respondre cada cop que m’ho pregunten, potser no deu ser el meu tema,oi? però bueno ja que m’ho he trobat ho poso:

Linux shell: la comanda find

Reading time: 2 – 2 minutes

Inspirat per un article de BlackShell sobre la comanda find, m’he decidit a resumir les quatre coses que es comenten en l’article, ja que a més d’un li poden anar molt bé.

Segur que molts coneixeu la comanda, però degut a la seva gran quantitat de paràmetres i a la mandra que sovint ens fa mirar el man, molta gent no sap ni per on començar a usar-la. Un ús que sovint se li dona és aquest:

find . -name "*.jpg"

Això ens busca tots els fitxers acabats en “.jpg” a partir del directori actual i recursivament per tots els directoris que pengen. Una altre comanda que jo uso molt és aquesta:

chmod 755 `find . -type d`

És molt senzill, busco tots els directoris a partir del directori actual i els asigno permisos rwxr-xr-x (755). En l’article al que faig referència ens parlen del següent exemple:

find * -name "*~" -exec rm {} \;

Aquest ús del find el trobo més elegant que el que he fet jo anteriorment, bàsicament es tracta d’aprofitar la capacitat que té el find per executar comandes quan troba el que busquem. Així doncs, en el cas de l’exemple que ens ocupa el que fariem és buscar els arxius acabats en ~ (arxius de backup de molts editors) i els elimina. Com veieu el que fa és usar el paràmetre -exec i acompanyar-lo de la comanda rm (borrar), el més important és fixar-se que {} es refereix al nom del fitxer trobat i que \; s’usa per definir el final de l’ordre.

Una classe ràpida sobre find, si realment us ha agradat i ho heu trobat útil ja teniu un bon motiu per mirar-vos el man i aprofitar tota la seva potència.

Glosari de Bittorrent

Reading time: 6 – 9 minutes

Hi ha molta gent que malgrat té instal·lats programes de P2P i els usa sovint, no acaba d’entendre que carai volen dir moltes de les paraules que s’usen en aquests softwares: peers, seeds, etc. La veritat és que no he vist mai cap programa d’aquests en castellà o català. No em vull ni imaginar quines traduccions es deuen haver fet d’aquests termes. Així que jo com sempre, amb el meu afany per pràcticar anglès, uso sempre software en aquesta llengua. Però això no vol dir que per usar aquest software en aquest idioma entenguem que volen dir aquests termes. Per això he escrit aquest glosari de termes relacionats amb el BT (Bittorrent). He intentat traduïr/interpretar una mica les definicions si alguna no queda clara aviseu i intentarem millorar-les entre tots. La traducció ve d’aquest article: BitTorrent, What The Heck is a BitTorrent? (Dark Tips), però el servidor origen sembla que no respon.

torrent

És un petit fitxer amb metainformació que normalment descarreguem d’un servidor web (fitxers acabats amb .torrent). Metainformació significa que el fitxer conté informació sobre la informació que tu vols descarregar (el fitxer que tu realment vols). És usual descarregar aquest fitxer i treballar amb ell de forma local, sobre tot perquè si talles la connexió i després vols seguir amb la descarrega de la informació en si és usual tenir-lo guardat. Així doncs per poder descarregar la informació que volem és indispensable disposar d’aquest fitxer en primera instància.

peer

Un peer és un altre ordinador connectat a Internet que es pot connectar amb tu i que és capaç de transferir informació. Generalment un peer no conté el fitxer que busquem sencer, també s’acostuma a anomenar a aquest fet un feed. També hi ha gent que quan parla de peer ho fa referint-se a la paraula leeches, per diferenciar-los de la gent que conté els fitxers d’informació sencers i que continuen compartint la informació per la resta de la gent.

seed

Un ordinador que té una còpia completa de la informació que volem, la informació de la que parla el .torrent això és el que se’n diu un seed. Per exemple, si nosaltres estem descarregant un fitxer mentre descarraguem també estem compartint indirectament per això fem de feeds; quan acabem la descarrega i no tanquem el client de BT continuem compartint el fitxer però ja no descarreguem llavors estem fent de seeds. Estem sent persones generoses que comparteixen el que tenen amb els altres sense demanar res a canvi.

reseed

Quan no hi ha cap seeds per descarregar un torrent i tampoc hi ha suficients peers que tinguin copies amb informació complementaria del torrent, llavors és impossible que fem la descarrega sencera del contingut que volem. Quan algú amb el contingut sencer del fitxer (seed) es connecta al ‘swarm’ i envia els trossos que ningú tenia, d’això se’n diu reseeding.

swarm

Són el grup de màquines que estan connectades entre elles passant-se informació sobre un fitxer. Per exemple, si iniciem un client de BT i aquest et diu que estàs connectat a 10peers i a 3seeds, llavors el ‘swarm’ esta format per tu i aquestes 13 persones.

tracker

És un servidor d’internet que actua com a coordinador d’accions entre clients de BT. Quan tu obres un torrent, la teva màquina contacta amb un tracker i demana la llista de ppers per contactar. Durant la transmissió el client de BT va fent connexions periódiques al tracker. Això ho fa per anar informant dels avanços que anem fent en les nostres descarregues; els enviaments que estem fent i per demanar si hi ha alguna modificació en les llistes de peers que comparteixen el torrent. A més també es comunica el següent al tracker: starting, finished download, stopping. Si un tracker no esta online i nosaltres obrim un torrent, no podrem connectar fer mai la descarrega. Però si aquest cau durant una descarrega podrem continuar fent la descarrega amb la llista de peers que tenim, el que no podrem fer és ampliar la llista.

downloading

Descarregant informació DES D’UN altre ordinador.

uploading

Enviament informació A UN altre ordinador.

share rating

Molts clients de P2P mostren aquesta dada. És simplement el rati de tot el que has pujat (uploaded) a la xarxa dividit entre tot el que has baixat (downloaded). Només acumulen la informació per la sessió actual no és acumulatiu. Per cortesia amb els altres es considera que s’ha de tenir aquest rati el més alt possible.

distributed copies

Hi ha alguns clients, que mostren un text que diu algo semblnat a: “Connected to X seeds; also seeing X.XXX distributed copies.” Un seed és una màquina amb una còpia complerta del fitxer, com ja hem dit. Així doncs del que ens estan informant és de que hi ha suficients trossos distribuits a la xarxa com per obtenir X.XXX còpies complertes del fitxer que volem. La qual cosa equivaldria a tenir tots aquests seeds servint el fitxer, cosa que realment no és certa, és només una aproximació important per saber si aconseguirem baixar el fitxer que vole o no.

choked

Aquest terma s’usa en la descripció del protocol de BT, es refereix a l’estat d’un ‘uploader’. Per exemple, el fil que envia dades a un altre peer. Es diu que una connexió esta en ‘choked’, quan el que transmet no vol enviar la informació a aquest enllaç (link). Les senyals d’un client de BT que estan ‘choked’ a un altre client poden tenir diferents motius, però el més comú és que el client només pugui mantenir una serie d’uploads simultanis (max_uploads), la resta d’uploads seran marcats com a ‘choked’. Cal fixar-se que una connexió pot estar en aquest estat ‘choked’ per dos motius, un per cada possible transmissió (com a sistema bidereccional que és).

interested

Aquesta és una altre marca del protocol de BT, bàsicament significa que un ‘downloader’ pot marcar-se com a interessant (interested) si aquest té alguna part del fitxer que a nosaltres ens pot interessar. Sinó es marcara com a no interessant (not interested). És com tenir complicitat amb la gent que té trossos de fitxers que ens poden interessar i els donem preferencia sobre la informació que nosaltres pugem a la xarxa (upload).

snubbed

Si el teu client de BT no rep res durant un cert perioda de temps, es marcarà la connexió com a ‘snubbed’, en aquest cas el peer a l’altre extrem escollirà no enviar-nos informació mentre aquest estat es mantingui. El motiu de fer això és el de millorar les velocitats de pujada. Ocasionalment el client pot trobar-se en un estat on a través de la connexió amb molts peers, que aquest sigui marcat com a ‘choked’ per tots ells. El client usa aquest estat, snubbed, per evitar aquesta situació.

optimistic unchoking

Periodicament, els clients remena la llista d’uploads i prova d’enviar a diferents connexions que han estat previament ‘choked’. Això passa cada 10 o 20s, ho podem comprobar mirnat el panell “Advanced” de molts dels clients de BT.

dd_rescue: el dd de sempre amb funcions de recuperació d’informació

Reading time: 2 – 2 minutes

[ X.Caballé ] Una imatge anomenada dd_rescue és una eina per a copiar dades des d’un fitxer o un dispositiu de blocs (com pot ser un disc dur o un CD, per exemple) a un altre, amb la particularitat que tracta de recuperar les dades en cas de detectar un error de lectura. A diferència del dd original, no talla el fitxer de sortida, excepte si li indiquem que ho faci.

D’aquesta forma, cada vegada que l’executem contra un mateix fitxer de sortida tracta d’omplir els forats. L’algortime de dd_rescue llegeix la part que no està feta malbé. A continuació llegeix les parts danyades, dividint-les en unes de menor mida i tractar de recuperar la informació. Repeteix aquesta operació fins arribar a la mida del bloc de hardware, arribar al límit d’intents indicats o l’usuari interrompi l’operació.

Algoritme de funcionament

  • Read the non-damaged part of the disk, skipping the damaged areas.
  • o bé

  • Read a list of bad blocks (damaged areas) from a file.
  • Try to read the damaged areas, splitting them into smaller pieces and reading the non-damaged pieces, until the hardware block size is reached, or until interrupted by the user.
  • Try to read the damaged hardware blocks until the specified number of retries is reached, or until interrupted by the user.
  • Optionally write a list of bad blocks to a file.

Carpetes compartides IMAP amb Courier IMAP

Reading time: < 1 minute

[ Via Bulma ] A aquestes altures tothom sap què fa l’IMAP, doncs en aquest article de BULMA el que comenten és com treballar amb les shared folders (carpetes compartides) de l’IMAP les quals permeten fer coses molt interessants entre els usuaris, per exemple, enmagatzemar SPAM.(local)

Shell scripts: eliminar extensió del nom d’un fitxer (bash)

Reading time: 1 – 2 minutes

Quan fem shell scripts tenim la necessitat d’extreure l’extensió dels fitxers i ens acostumem, almenys en el meu cas, a fer experiments amb l’ordre cut i d’altres similars intentant treure alguna solució que ens permeti fer això. El més dur és descobrir que sabies com fer-ho d’una forma ràpida i neta. Això és el que em va passar revisant un article que jo mateix havia referenciat: Shell Scripts.

Doncs bé anant al que interessa per extreure una extensió, per exemple .jpg l’únic que em de fer és això:

${FITXER%.jpg}

Perquè us quedi clar, ho pdriem usar en aquest exemple útil:

#!/bin/sh
for FITXER in `ls *gif`
do
        F=`echo ${FITXER%.gif}`
        echo convert $F.gif $F.jpg
done

Com segur que heu descovert el que ens permet fer aquest petit script és convertir tots els fitxers *.gif a *.jpg

Scroll to Top