sábado, 12 de abril de 2008

Compilació d'un Kernel

Com bé sabreu per un altre article, tinc un portatil Sony Vaio VGN-FS295, que funciona molt bé. L'altre dia però m'en vaig adonar que, no sé per quin motiu, estava funcionant amb un Kernel SMP, és a dir, Symmetric Mult Processing Kernel => un Kernel preparat per sistemes amb 2 processadors, que no és el meu cas.
Vaig decidir canviar-lo, i ja que ho feia, personalitzar-me'l amb únicament el que necessités, sense Drivers per teclats midi, ni per targetes de xarxa que no tinc.

Una mini guia molt ràpida i útil, ja que a vegades costa trobar els passos exactes, ja que entre una versió i una altra pot canviar alguna cosa.




Definició de Kernel:
És el nucli o com jo li dic "cor", del Sistema Operatiu. El kernel a GNU/Linux s'anomena Linux. GNU és el conjunt de programes (ls, cp, Gnome, Openoffice, Firefox, etc) que complementen el S.O.
Permet a aquests programes comunicar-se amb el Hardware, i per tant és el Kernel el que fa totes les gestions dels teus perifèrics: Audio, Pantalla, Teclat, Ratolí, Processador, Memòria RAM, Discs Durs, etc.
http://ca.wikipedia.org/wiki/Nucli_del_sistema_operatiu

Per què vull compilar el meu propi kernel?:

Si configures el teu Kernel perquè estigui adaptat perfectament al teu Hardware, i no tingui carregats sempre Drivers o controladors genèrics o innecessaris, el sistema farà les gestions amb molta més eficiència i sense perdre recursos. Segur que guanyes en velocitat i rendiment.

Que necessito saber per configurar el meu Kernel?:
Necessites saber al detall, quins perifèrics utilitzes, ho descobriràs a mesura que el vaigis configurant. Et pot ser de molta ajuda fer:
#: lspci --> et llista els dispositius del bus PCI trobats al sistema (chip, revisió, etc.)
#: lsmod --> et llista els mòduls (drivers) carregats actualment.
#: dmesg --> Mostra el log d'inici del sistema, pots trobar informació útil.

Les sortides de lspci, lsmod i dmesg, les pots passar a grep amb una pipe:

lipi@debianAMD:~$ lspci | grep audio
00:0f.0 Multimedia audio controller: Creative Labs SB Live! EMU10k1 (rev 07)

Ja sé que tinc una Creative Labs SB Live! - EMU10k1, i que a Targetes de So serà la única que seleccionaré.

Per cada opció que no sàpigues que és disposaràs de l'ajuda en la pantalla de configuració, i sinó: www.google.com. Segur que hauràs d'investigar bastant.

Necessitaràs saber també, per a que utilitzaràs el teu sistema: Si ha de ser per un Escriptori normal, hi ha moltes opcions com per exemple el sistema d'elecció de Prioritats amb que els programes s'executen, que s'hauran de triar adequadament.

Començant:

1. Instal·lar paquets necessaris:
apt-get install build-essential libqt4-dev

2. Descarregar un Kernel:
Pots fer-ho des de synaptic (linux-image-2.6.xx), però jo et recomano que vaigis a www.kernel.org i et baixis la última versió.
Per veure l'actual que tu tens:
uname -r

3. Descomprimir el Kernel a la carpeta /usr/src
debianAMD:/usr/src# cp /home/lipi/linux-2.6.24.4.tar.gz /usr/src
debianAMD:/usr/src# cd /usr/src
debianAMD:/usr/src# tar xvzf linux-2.6.24.4.tar.gz

4. Configurar el Kernel:

debianAMD:/usr/src/linux-2.6.24.3# make xconfig

Si ens dona algun error, és que ens falta instal·lar alguna llibreria, mira quina és i apt-get.



Aquesta és la part més llarga, a jo em va costar 4 capvespres, i després refinar, ja que em vaig deixar algunes opcions. Pots carregar una configuració d'un altre kernel; aquesta es trobarà a /boot/config-2.6.22-2-k7 per exemple.

Un detall a comentar és que podràs seleccionar els drivers que es compilin com a (M) Mòduls, o com a (*) Integrats al kernel. Si estan integrats, sempre estaran carregats. Pot ser interessant per tenir sempre la targeta de xarxa o algun altre, funcionant. Els (M) es carregaran quan es necessitin, però no és descarregaran. Fes un lsmod i veuras els que tens carregats actualment, a més dels integrats que no surten a la llista. Si fas lsmod | wc -l et dira el nombre de mòduls carregats+1.

5. Compilar Kernel, Mòduls, crear initrd..:
(Farem veure que compilam la versió: 2.6.24.3)
debianAMD:/usr/src# make
debianAMD:/usr/src# make modules_install

**Si compiles una versió d'un kernel que ja tens, es substituirà la carpeta de mòduls de /lib/modules/2.6.24.3 per l'actual, perdràs mòduls instal·lats manualment, p.ex Driver d'NVIDIA.

debianAMD:/usr/src/linux-2.6.24.3# mkinitramfs -o /boot/initrd.img-2.6.24.3
debianAMD:/usr/src/linux-2.6.24.3# cp System.map /boot/System.map-2.6.24.3
debianAMD:/usr/src/linux-2.6.24.3# cp arch/x86/boot/bzImage /boot/vmlinuz-2.6.24.3
debianAMD:/usr/src/linux-2.6.24.3# update-grub


6. Reiniciem, escollim el nou kernel, i provem. Si no funciona, tornarem al kernel anterior, i una altra vegada al pas 4 a retocar-lo. Igual farem si algun mòdul no ens funciona o ens falta.

Una vegada compilat, retocar-lo és molt ràpid ja que no ha de re-compilar tots els mòduls. Si vols fer net la instalació i començar de 0, has de fer:

debianAMD:/usr/src# cd linux-2.6.24.3
debianAMD:/usr/src/linux-2.6.24.3# make mrproper

7. Pot ser que et costi que tot funcioni bé, però si ho fas bé aconseguiràs que l'ordinador no et gasti memòria, que vaigi tot més ràpid, que utilitzi el mínim de processador, que la bateria del protàtil et duri 30 minuts més, etc. SORT!


3 Comentaris:
1. A Ubuntu funciona la majoria de hardware que hi connectis a la primera, perquè té gairebé totes les opcions del kernel activades com a mòduls, i a més, la gent d'Ubuntu modifica el kernel i hi afegeix altres drivers que no hi són a la versió de www.kernel.org oficial. Un dia explicaré com "parchejar" el Kernel, afegint actualitzacions o més mòduls.

2. A Windows, no pots modificar el Kernel, és el mateix per totes les màquines del planeta. Per això consumeix tants de recursos i funciona sovint, tant malament. Tu podràs triar fins i tot el model del processador!

3. Resum ràpid:
debianAMD:/usr/src/linux-2.6.24.3# make xconfig
debianAMD:/usr/src/linux-2.6.24.3# make
debianAMD:/usr/src/linux-2.6.24.3# make modules_install
debianAMD:/usr/src/linux-2.6.24.3# mkinitramfs -o /boot/initrd.img-2.6.24.3
debianAMD:/usr/src/linux-2.6.24.3# cp System.map /boot/System.map-2.6.24.3
debianAMD:/usr/src/linux-2.6.24.3# cp arch/x86/boot/bzImage /boot/vmlinuz-2.6.24.3
debianAMD:/usr/src/linux-2.6.24.3# update-grub


Llegir més...

Muntar particions amb SSH

Últimament m'he trobat amb la necessitat de tenir un servidor de fitxers centralitzat fàcilment accessible, del tipus obrir carpeta i arrossegar fitxers. Els FTP solen anar molt a poc a poc, Samba no és una opció per jo vàlida, NFS és un forat important al no utilitzar contrasenyes... llavors només em quedaven dues opcions, o pagar per un servidor que funcionés bé, o muntar un SSH Fuse.



SSH (o OpenSSH), és una eina que serveix per conectar-se remotament a altres màquines per una consola. La forma de conectar-s'hi es tenir obert el port 23 al servidor, que haurà de tenir instal·lat OpenSSH Server (apt-get install openssh-server), i des de l'altre ordinador client, connectar-s'hi amb ssh (apt-get install ssh).
SSH, acrònim de Secure Shell, té moltes opcions, una de les més interessants és la de passar-li l'opcio -X:

lipi@debianAMD:~$ ssh -X frank@10.0.0.180

Que el que farà serà donar-te una consola, i si executes per exemple gedit, firefox, o synaptic, se t'obrirà el programa gràficament com si fossis a l'altre ordinador.

El que vaig investigar l'altre dia va ser SSHFs, Secure Shell FileSystem. És un sistema de fitxers basat en el protocol de transferència de fitxers de SSH, juntament amb FUSE, el sistema de fitxers per l'"userspace" (per l'usuari i no pel sistema).

http://fuse.sourceforge.net/sshfs.html

Passant a temes més pràctics:
1. Instal·la ssh, sshfs, des de Synaptic o apt.

debianAMD:/home/lipi# apt-get update
debianAMD:/home/lipi# apt-get install ssh sshfs

2. Afegeix el teu usuari al grup "fuse":

debianAMD:/home/lipi# usermod -aG fuse lipi
(on lipi és el nom de l'usuari)
Comprova si ha anat bé:
debianAMD:/home/lipi# groups lipi
lipi : lipi dialout cdrom floppy audio video plugdev users lpadmin powerdev netdev scanner icecast fuse

O també, Sistema - Administració - Usuaris i grups:



3. Canvia el grup del dispositiu fuse:
debianAMD:/home/lipi# chgrp fuse /dev/fuse

4. Surt de la consola, i torna entrar o fes:
debianAMD:/home/lipi# su - lipi

5. Ja pots muntar el SF on vulguis, no fa falta que siguis root:

lipi@debianAMD:~$ sshfs frank@10.0.0.180:/home/frank /home/lipi/Red

Això entra com a usuari frank a la màquina 10.0.0.180, i munta la seva carpeta /home/frank dins
la teva /home/lipi/Red


Per part del servidor no hi ha que fer res més que instal·lar openssh-server.

FI.

- Una altra forma de connectar-te que podries provar és anant a Llocs - Connectar-se al servidor:



(no l'he provada).

Llegir més...

miércoles, 27 de febrero de 2008

Sa Campanya electoral

Estem en plena campanya electoral, es fan debats PSOE vs PP, es veu propaganda pel carrer, noticies, vídeos, anuncis per TV, radio, etc. però es problema és que es partits petits no tenen es mateix espai electoral que es dos partits majoritaris. Per això per exemple TV3 no va emetre es famós debat d'en ZP i en Rajoy, i tampoc firma ses noticies que emet. Hi ha que dir que és molt cert que partits com IU, PNV, CIU, etc. es queden gairebé sense "veure" sa llum i fins i tot a vegades es fa difícil saber quina és la totalitat de partits que es presenten, segurament si ho fessin molta més gent els votaria i no hi hauria aquesta por de votar a partits minoritaris, ja que ara, un vot a un partit minoritari com pot ser ERC de poc serveix, perquè segur que no obtindrà cap representació.
Aprofitant es tema de que sa campanya es un "cachondeo", us poso aquí es vídeos del Follonero, molt bo!



Estan per ordre!











Llegir més...

martes, 26 de febrero de 2008

Linux: "Raising Elephants Is So Utterly Boring"

Freqüentment es diu que Linux és impenjable, que mai se't congelarà ni que hauràs d'aguantar lo que passa a altres sistemes. És veritat.

Avegades pot passar però, que una aplicació falli i que faixi que el sistema no respongui, ja sigui per un driver, aplicació gràfica, etc. Que fer en aquests casos?




Podem intentar el típic CTRL+BACKSPACE, que reinicia l'entorn gràfic, però, i si això no funciona? CTRL+ALT+SUPR, per provar de reiniciar, però també pot fallar. Que fer llavors? Segurament l'únic que se us acudirà serà pitjar el botó de "Reset" de l'ordinador... NO!!

Proveu de fer:

ALT+SySReq(ImpPetSis) i mentre manteniu aquestes dues tecles pitjades, escriure a poc a poc REISUB, màgicament l'ordinador es reiniciarà de manera correcta!!!

Què ha passat?:
El Kernel Linux conté una opció màgica (Magic SysRq) que si és activada al compilar-lo (en la majoria de sistemes hi està), permet fer una crida al sistema. Aquesta crida al sistema pot rebre unes interrupcions "màgiques", que en el nostre cas han estat:

# R: Retorna el control del teclat(De raw a xlate).
# E: Envia un SIGTERM a tots els processos exceptuant el pare (PID 1).
# I: Envia un SIKGILL a tots els processos exceptuant l'init (PID 1).
# S: Fa la sincronització de dades als discs durs.
# U: Re-munta totes les unitats en "read-only" mode.
# B: Reboot.

Raw
End
kIll
Sync
Umount
reBoot

Curiosament, per recordar aquesta combinació de tecles, es coneguda la mnemotècnia, "Raising Elephants Is So Utterly Boring".

Té moltes més opcions que REISUB, per exemple volcar info de memòria a la consola,
matar els processos d'una consola determinada, llistar les tasques actuals amb informació,
etc.

Per +info:
http://en.wikipedia.org/wiki/Reisub
http://www.kernel.org

Llegir més...

miércoles, 20 de febrero de 2008

Quedate con el cuento...

Curiosa i didàctica història...















Llegir més...

martes, 19 de febrero de 2008

Actualitzeu Windows Vista!

Llegeixo a "meneame" que una actualització de Windows Vista causa un bucle infinit de reinicis, l'única sol·lució és reinstal·lar windows, jajajaja, que bo deu meu xD
"Lo que en principio iba a ser una actualización como cualquiera otra lleva visos de convertirse en un engorro considerable para Microsoft. Y es que horas después de lanzarla, un número considerable de usuarios de Windows Vista se han quejado de que cuando el proceso de instalación estaba a punto de acabar, sus ordenadores se han reiniciado... y se han vuelto a reiniciar... y se han vuelto a reiniciar... y se han vuelto a reiniciar indefinidamente. Una portavoz de Microsoft ha reconocido que son conscientes del problema y que ..."

http://meneame.net/story/actualizacion-windows-vista-provoca-bucle-infinito-reinicios-sistema-o

http://www.abadiadigital.com/noticia2796.html

Llegir més...

lunes, 4 de febrero de 2008

Ets un pringat?

Està ja desactualitzat, però segueix sent vàlid per tots aquells que per fer un favor, no podem deixar de ser pringats.

Llegir més...

lunes, 28 de enero de 2008

Problemes inal·làmbrics? WiCD!

Fins fa poc vegades havia tingut problemes amb els gestors de xarxa de Gnome
o amb alguns que havia instal·lat, com el WifiRadar. Cap m'havia convençut,
ja que veia que a Windows era més fàcil administrar la xarxa. Un dia vaig trobar el WiCd, i vaig quedar
molt sorprès. Funciona millor que el Gnome Network Manager, que el WifiRadar i que el gestor de Windows.

Feu-li una ullada...


Començarem per instal·lar-lo, com sempre a Debian o una variant, afegirem a
/etc/apt/sources.list, la línia:
deb http://apt.wicd.net feisty extras
i després des de synaptic o a un terminal fent:

#] apt-get install wicd


Un cop instal·lat veurem que ens ha posat un dimoni a l'initd, que serà el que
gestionarà les connexions. Un cop instal·lat WiCd, no faixis servir CAP més gestor.

El funcionament es veu molt bé amb imatges.


Això és la pantalla principal del programa. És molt simple;

Botons:
Hidden Network - Introdueix el nom d'una xarxa que està amagada.
Connecta/Desconnecta - d'una xarxa al que volguem connectar o que estem desconnectats
Actualitza - Cerca noves xarxes inal·làmbriques, en el meu cas n'hi ha una
que s'anomena LiPix amb encriptació WEP.
Preferències - Triar el driver per WPA i les interfícies de xarxa.
Credits
Sortir

Per últim tenim les Xarxes amb fils (Wired Network a l'imatge):


Clicant a Advanced Settings podrem posar paràmeres personalitzats, o deixar-ho
amb configuració automàtica. Un cop acabada la configuració, podras posar un nom
(a l'exemple "Xalet LiPix"), clicar a Afegeix i es guardarà per sempre aquesta
configuració.

I les xarxes sense fils:


A la xarxa "LiPix" podem triar si connectar-s'hi automàticament quan se detecti,
a més veiem que té encriptació WEP, força de senyal de 44% (última actualització),
veiem la MAC, el mode de connexió i el canal.

Per últim a Advanced Settings pots configurar els paràmetres que necessitis, i si fer servir o no
encriptació. Suporta WEP, WPA 1/2, LEAP, TTLS, EAP-FAST i PEAP. La configuració que deixis quedarà guardada per sempre.


I no hi ha més, és així de simple. Pots veure altres captures, veure les característiques, col·laborar en el projecte, etc. des de la web del WiCD: http://wicd.sourceforge.net

Finalment dir que les traduccions del programa encara estan en fase "Beta", per açò ara surt
el programa mig en anglès i mig en català. Però a una versió pròxima segurament ja hi estaran
implementats.


Disfruteu!

Llegir més...

Paisatges i GNU/Linux :o

L'altre dia vaig fer fotos d'un paisatge, i com que la camara no m'avarcava tot el paisatge en vaig haver de fer unes quantes. Tenia l'opció de ajuntar les fotos resultants amb el Gimp, i ajustar el color manualment, però cercant un poc vaig trobar Hugin i Panorama Tools.




Panorama Tools és una eina gratuïta i lliure que serveix per tractar imatges panoràmiques, funciona en consola i és molt potent. Per més informació: http://panotools.sourceforge.net/

Hugin proporciona una interficie gràfica per les Panorama Tools, però necessitarem també AutoPano, que és un programa per detectar punts de concordancia entre imatges.

Hugin agafarà els punts trobats per Autopano, i ajuntarà les imatges, fent la correcció de color. Podrem ajuntar les imatges amb diferents tipus de prespectiva: Equirectangular, Cilindrica, Rectilinia, Gran angular, Esterogràfica, Mercator, Sinusoidal, etc.

1. Començarem per instal·lar el programa, afegint els repositoris de Debian Multimedia si es que estem en una Debian o "descendent".


#] echo deb http://www.debian-multimedia.org/ sid main >> /etc/apt/sources.list


(podeu canviar sid per stable o testing)

#] apt-get update && apt-get install hugin autopano-sift

2. Una vegada fet, obrirem el programa. És molt intuïtiu, el procés bàsic és afegir les imatges, trobar punts de control i línies horizontals/verticals amb Autopano, repassar-ho i afegir-ne algun més, optimizar la composició, veure una vista prèvia, i si ens agrada, renderitzar.

Hi ha que dir que no és perfecte, en segons quin tipus de fotografies no les encaixa perfectament, o avegades hi ha alguns errors de color. Us penjaré un "sample" perquè el proveu si no teniu fotos panoràmiques.

A continuació unes imatges, i el zip amb fotos d'una muntanya.

Per fer proves:




Posant les imatges al Hugin



Autopano a punt de cercar punts de control



Els punts trobats



Una prèvia de com quedaria



Llegir més...

miércoles, 23 de enero de 2008

S.M.A.R.T

No us heu demanat mai quant li queda de vida al vostre disc dur? Quantes vegades s'ha engegat?.. Tots aquests paràmetres i molts més els monitoriza internament qualsevol disc dur amb tecnologia S.M.A.R.T, sigles de "Self Monitoring Analysis and Reporting Technology".



Aquests paràmetres es poden consultar mitjançant GNU/Linux, amb una eina que es diu "SmartmonTools". Anem per feina:

- Primer instal·larem el paquet, des de Debian, o qualsevol "descendent":


sonydeb:/home/lipi# apt-get install smartmontools

- Indicarem al disc que faixi un diagnòstic "curt";

Si el disc és IDE, o s'anomena hdx:

sonydeb:/home/lipi# smartctl -t short /dev/hda

Si és SATA:

sonydeb:/home/lipi# smartctl -t short -d ata /dev/sda

smartctl version 5.37 [i686-pc-linux-gnu] Copyright (C) 2002-6 Bruce Allen
Home page is http://smartmontools.sourceforge.net/

=== START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION ===
Sending command: "Execute SMART Short self-test routine immediately in off-line mode".
Drive command "Execute SMART Short self-test routine immediately in off-line mode" successful.
Testing has begun.
Please wait 2 minutes for test to complete.
Test will complete after Wed Jan 23 15:45:17 2008
Use smartctl -X to abort test.

sonydeb:/home/lipi#


Com podem veure, ens diu que esperem 2 minuts, després podrem recollir el resultat. Si en algun moment ens interessa cancel·lar el test, farem smartctl -X com ens indica el programa.

Quan el temps hagi passat, recollirem el resultat, en el meu cas:
sonydeb:/home/lipi# smartctl -H -l selftest -i /dev/hda


smartctl version 5.37 [i686-pc-linux-gnu] Copyright (C) 2002-6 Bruce Allen
Home page is http://smartmontools.sourceforge.net/

=== START OF INFORMATION SECTION ===
Model Family: Fujitsu MHV series
Device Model: FUJITSU MHV2080AT
Serial Number: NS56T5425AFT
Firmware Version: 00000096
User Capacity: 80,026,361,856 bytes
Device is: In smartctl database [for details use: -P show]
ATA Version is: 6
ATA Standard is: ATA/ATAPI-6 T13 1410D revision 3a
Local Time is: Wed Jan 23 15:51:40 2008 CET
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

SMART Self-test log structure revision number 1
Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error
# 1 Short offline Completed: read failure 90% 3308 91458423

Informació rellevant:
Remaining: 90% significa que el test encara no s'ha acabat.
User Capacity: 80Gb
SMART overall-health self-assessment test result: El disc dur està correcte. Si no fos així l'smartmontools diu que en menys de 24h el disc pot fallar.
LifeTime(hours): 3308 , són les hores que du funcionant, en aquest cas 137 dies.
LBA_of_first_error: La direcció del primer error trobat va ser 91458423

Però podem voler més informació, llavors podem fer un test llarg:

smartctl -t long /dev/hda

I a més a més pintar tota la informació de SMART:
sonydeb:/home/lipi# smartctl -a /dev/hda

El més interessant d'això és la taula que surt:

Per exemple,
Raw_Read_Error_Rate: Tassa d'errors de lectura
Start_Stop_Count: Nombre de vegades engegat (el disc es pot pausar)
Seek_Error_Rate: Tassa d'error de col·locació de l'agulla
Power_On_Seconds: Temps engegat
Spin_Retry_Count: Nombre de reintents d'engegada
Power_Cycle_Count: Nombre de vegades que li ha "arribat corrent"
Temperature_Celsius: Temperatura actual
etc.

En el meu cas, tenim que ha estat 3309h 01m 50s engegat, està a 35ºC i s'ha encès i parat 1586 vegades.

En el cas que veiem que el paràmetre THRESH, s'incrementa o te un valor alt, es probable que el disc falli, o també si un dels altres paràmetres es més petit que THRESH.
Els valors més importants són:

Reallocated_Sector_Ct, Seek_Error_Rate, Reallocated_Event_Count, Offline_Uncorrectable,
UDMA_CRC_Error_Count, Multi_Zone_Error_Rate, Hardware_ECC_Recovered

Esper que us hagi picat la curiositat per provar-ho.

+ info @:
http://es.wikipedia.org/wiki/S.M.A.R.T.
http://www.vicente-navarro.com/blog/2007/10/28/linux-no-mata-discos-duros-se-mueren-solos/
http://www.thewilfamily.com/hardware/testeo-de-disco-duro-en-debian
http://www.captain.at/howto-linux-smartmontools-smartctl.php
http://fixunix.com/storage/202551-smartctl-conflicting-pre-fail-results.html
http://www.webservertalk.com/archive233-2004-11-462907.html

Llegir més...