dijous, 31 de juliol del 2008

RAID per programari al Servidor (fake RAID)

Com el servidor ha de tenir una certa fiabilitat utilitzarem discos en mirall (RAID1). Així si falla un dels dos discos no hi ha d'haver problema i s'ha de poder substituir el defectuós i tornar a treballar sense perdre la info ni massa temps.

La tarja RAID de què disposo pel servidor és una Promise FastTrack.... Se li poden connectar dos discos PATA i té un sol xip. Cap distribució de linux actual (excepte la linkat 1.1) la ha reconegut com a controladora RAID. És d'allò més cutre i tota la feina de càlcul la ha de fer el processador.
En l'altre servidor tinc una 3ware que sí que la va reconèixer el instal·lador i treballa com a disc SCSI amb dos discos PATA.

Per tant passaré d'ella i connectaré directament els dos discos PATA idèntics (120GB) a la placa base en els IDE 1 i 2. Afortunadament el BIOS de la placa base suporta l'arrencada des de CD-ROM USB (per fer la instal·lació inicial), per tant només hi haurà connectats aquests dos dispositius als busos ATA, tots dos com a master. Segons la nomenclatura linux són hda i hdc.

Anem a veure com es fa això del RAID 1 per soft amb linux. I com es prova. Hi ha una bona referència a How To Set Up Software RAID1 On A Running System (Incl. GRUB ... i a Replacing A Failed Hard Drive In A Software RAID1 Array.

Tot tenint connectats els dos discs a la placa i posant el CD d'instal·lació de la debian 4 en una gravadora externa connectada per USB (el BIOS permet l'arrencada). S'inicia la instal·lació del S.O. . En el pas del particionament, per fer les proves, es fan 2 particions idèntiques a cada disc (root i swap) i s'agrupen en dos "md". En acabar la instal·lació es deixa el GRUB en el MBR.

Ara s'engega per primera vegada el S.O. i se segueixen les indicacions del primer tutorial per revisar el /boot/grub/menu.lst:
En general s'ha de modificar per tal de duplicar els kernels d'arrencada i fer que si falla el que arrenca per defecte, que arrenqui amb el de l'altre disc, és a dir:
afegim (per si falla el 0 salti al 1):
default 0
fallback 1
i copiem el primer (0) a sota, tot canviant ler referències a (hd0,0) que corresponen a hda1 (master de IDE1) per (hd1,0) que corresponen a hdc1 (master de IDE2):
title
root
kernel
initrd
savedefault
Compte amb root=/dev/mdX, i comprovar a l'inici #kopt=root=/dev/md0 ro.
De tota manera cal veure si el BIOS altera la numeració dels discs si en falla un i llavors no cal la duplicació anterior.

A continuació s'actualitza el ramdisk:
# update-initramfs -u
i s'instal·la el grub en els dos discs:
# grub
> root (hd0,0)
> setup (hd0)
> root (hd1,0)
> setup (hd1)
> quit

Molt bé, ara es tracta de comprovar-ho tot:

Amb el sistema en funcionament comprovem que l'array funciona correctament amb
# cat /proc/mdstat
han d'aparèixer tots els "md" amb els seus components en ús (UU), si apareix algún disc fora d'ús (U_) o bé (_U) cal afegir-lo a l'array. Ho farem amb:
# mdadm -a /dev/mdX /dev/hdXX
llavors apareix un missatge dient que comença la sincronització. Podem comprovar per on va amb # cat /proc/mdstat. Si en el pas anterior no tenim clar el disc o la partició a afegir ho tenim més clar amb # fdisk -l.

Una vegada ho tenim tot en funcionament i els discos sincronitzats anem a provar-ho de veritat, aturant el sistema i desconnectant cada un dels discos per separat i mirant si el sistema arrenca. Cal provar si és necessari canviar l'ordre dels cables de dades dels discos per tal de poder arrencar o si bé el BIOS ja fa el canvi automàticament en no detectar un disc.

Cal fer la següent prova:
Amb un disc desconnectat creem un fitxer (touch) i aturem. Tornem a connectar l'altre disc i sincronitzem. Si ho hem fet tot correctament el fitxeret anterior ha de seguir existint.

És imprescindible documentar-ho tot i enganxar-ho físicament al lateral de l'ordinador, i etiquetar discos, cables i connectors de la placa base.

dimecres, 30 de juliol del 2008

SAI pel Servidor

El servidor haurà d'estar en funcionament continuament i suportar que es talli el subministrament d'energia elèctrica. Per a això tenim un (varis) SAI. Com és un APC SmartUPS iNET 700 podem fer que el servidor s'entengui amb ell amb el programa apcupsd.
Per tant el connecto a l'ordinador mitjançant un cable al primer port sèrie i l'instal·lo, configuro i provo:
  1. Instal·lem amb:
# apt-get install apcupsd
que descarrega uns 3,4MB i n'instal·la uns 7,9MB. Cal dir que la versió és la 3.12.4, mentre que a la oficial van per la 3.14.4 (20 de maig de 2008).
  1. Configurem:
# cp /etc/apcupsd/apcupsd.conf /etc/apcupsd/apcupsd.conf.original
# nano /etc/apcupsd/apcupsd.conf
copiem la configuració mínima del manual oficial per a "A Simple Configuration for a SmartUPS":
 ## apcupsd.conf v1.1 ##
UPSCABLE smart
UPSTYPE smartups
DEVICE /dev/ttyS0
LOCKFILE /var/lock
UPSCLASS standalone
UPSMODE disable
editem /etc/defaults/apcupsd:
# nano /etc/defaults/apcupsd i canviem la línia ISCONFIGURED a yes
  1. Engegem amb:
# /etc/init.d/apcupsd start i mirem que no dóni errors.
  1. Comprovem-ho tot i fem proves:
#ps fax | grep apcupsd
ha d'aparèixer un procés amb /sbin/apcupsd (només un doncs estem amb un kernel 2.6.xx

#apcaccess status
llistarà tot de paràmetres del SAI i del programa

Si desconnectem el cable sèrie i al cap d'una estona el reconnectem ha d'aparèixer un missatge a la consola per a cada esdeveniment (wall).

Si desconnectem el cable del corrent del SAI ha de seguir funcionant i aparèixer tot de missatges en la consola.

La info de sota no funciona pel paquet apcupsd de debian4 doncs no hi ha els programes CGI. Podem monitoritzar remòtament connectant per ssh i invocant $ apcaccess status.

Per poder-ho veure des de qualsevol ordinador des de la consola o amb un navegador web hem d'activar el servei NIS de apcupsd afegint les següents línies al fitxer apcupsd.conf:
NETSERVER on
NISPORT 3551
Llavors podem invocar:
$ apcaccess status "fqdn o bé ip del host":3551

Si volem veure-ho gràficament en un navegador cal tenir instal·lat un servidor web (apache) que pugui executar programes cgi. I cal configurar el següent fitxer /etc/apcupsd/hosts.conf tot afegint al final:

MONITOR servidor-intern "SAI del servidor-intern"
A més cal moure els fitxers cgi de /etc/apcupsd al directori cgi-bin del servidor web. Llavors només caldrà accedir a:
http://servidor-intern/cgi-bin/multimon.cgi

Si no tenim apache ho podem veure dins el webmin, amb un mòdul de tercers APC UPS Daemon 0.81-1 (que costa de trobar) i que s'instal·la en l'apartat "Altres". Cal revisar la configuració del mòdul.

dimecres, 25 de juny del 2008

Serveis varis 1

Com volem instal·lar ubuntu en tots els ordinadors del centre ( cap a 200), i per no tenir problemes cal que les màquines estiguin ben actualitzades, havíem pensat en tenir una mena de repositoris locals per no consumir una burrada d'ampla de banda cada vegada que actualitzéssim o instal·léssim programes en totes les màquines.

La solució correcta es diu apt-proxy. És un programa servidor-clients que fa de servidor intermig i magatzem per als paquets instal·lats i/o actualitzats per a tots els ordinadors.

Hi ha una mini-guia a AptProxy - Community Ubuntu Documentation que he seguit i la cosa funciona molt bé.

1.- Cal instal·lar el programa al servidor

# apt-get install apt-proxy

i revisar la configuració

# nano /etc/apt-proxy/apt-proxy-v2.conf

Jo només he tocat el paràmetre address on he posat la IP del servidor.

2.- En els clients cal modificar el fitxer de configuració de repositoris:

# nano /etc/apt/sources.list

i substituir la part de la URL corresponent al servidor.domini per IP_del_servidor:9999

3.- Comprovació del funcionament:

En un ordinador amb el sources.list correctament configurat instal·lem algun programa i observem la velocitat de descàrrega, que serà l'habitual.
Si ara instal·lem els mateixos paquets en un altre ordinador amb el sources.list configurat la descàrrega VOLA.

divendres, 13 de juny del 2008

Servidor pels usuaris de l'insti: 3.- Configurar directori LDAP

Comencem a connfigurar slapd i omplir el directori.

# dpkg-reconfigure slapd
  • Ometre configuració servidor: NO
  • DNS domain name: iespeguera.cat
  • Name of organisation (base DN): Peguera
  • Contresenya admin: secreta
  • Datebase backend: BDB
  • Esborrar BBDD al purgar: NO
  • Move old database: SI
  • LDAPv2 protocol: NO
Ara ja podem accedir des d'un altra ordinador via web i provar si podem entrar:

http://192.168.0.204/phpldapadmin/
clicant Login i omplint
  • DN: cn=admin,dc=iespeguera,dc=cat
  • Password: secreta
Si no tenim clares les dades pel login, les tenim a
# cat /etc/ldap/ldap???.conf | less. El fitxer té permisos 600 i és del root.

Ara anirem a omplir el directori

Servidor pels usuaris de l'insti: 2.- Instal·lar OpenLDAP i programari auxiliar

Com el servidor no tindrà Xwindow i a més estarà decapitat (sense pantalla) instal·larem webmin (adminstració via web) i ssh (terminal per comandes).

WEBMIN
# mkdir /root/programari
# cd programari
# wget http://prdownloads.sourceforge.net/webadmin/webmin_1.420_all.deb. Descarrega 13MB
# dpkg -i webmin....deb. No es deixa configurar per problemes de dependències.
# apt-get -f install. Instal·la les dependències anteriors i configura webmin.

Ara ja podem accedir amb un navegador des d'un altra ordinador amb
https://192.168.0.14:10000/ i entrar com root o un altre usuari sudoer.

SSH
# apt-get install openssh-server

Ara ja podem accedir des d'un altre ordinador amb
$ ssh "usuari"@192.168.0.14
o bé
$ ssh "usuari"@servidor-intern
si tenim correctament configurat el DNS en l'ordinador des d'on ens connectem.

LDAP (sense replicació)
# apt-get install slapd
i demana la contrasenya de l'admin / secreta
# apt-get ldap-utils

PHPLDAPADMIN
# apt-get install phpldapadmin
entre altres dependències instal·la: apache2, apache2.mod-php5, php5-common i php5-ldap.
Compte a no instal·lar abans apache (instal·laríem apache 1.3) ni php4 tal i com diu la guia de dixie, que suposo que és antiga.
Ara ja es pot accedir a http://192.168.0.14/phpldapadmin/

Anem a configurar el més bàsic

dijous, 12 de juny del 2008

Servidor pels usuaris de l'insti: 1.- Instal·lació S.O.

Prenem dos ordinadors per fer proves, un serà el servidor i l'altra el client.
Pas a pas:
1.- Arrenquem l'ordinador amb el CD de debian 4.0r1 i enter
2.- Anem escollint:
  • idioma català
  • teclat ca_ES.UTF-8
  • eth0: rtl8139 i eth1: 3Com Cyclone
  • IP: 192.168.0.204 / 255.255.0.0
  • hostname: servidor-intern
  • domainname: iespeguera.cat
  • disc dur sencer (20GB) partició guiada amb home separada. Posa: root 5,4GB ext2, swap 682MB i home 14GB ext3. No cal complicar-se doncs és per provar.
  • Zona horària Madrid
  • usuari root / contrasenya secreta
  • usuari TIC (super) / contrasenya
  • Suplement repositori xarxa NO
  • Només sistema estàndard. Instal·la 100 fitxers en 2 minuts.
  • grub al MBR
El sistema arrenca per primera vegada i com no volem utilitzar el CD i sí volem actualitzar per xarxa:

# nano /etc/apt/sources.list
comentem l'entrada del cd i afegim:
deb http://ftp.es.debian.org/debian etch main contrib

# apt-get update
# apt-get upgrade. Descarrega 28MB i actualitza 13 arxius (12juny2008). Com actualitza els mòduls del kernel cal
# reboot.

A continuació instal·larem programari auxiliar.

Servidor pels usuaris de l'insti: 0.- Necessitats

Es tracta de muntar un servidor pels alumnes, professors i PAS de l'institut. Ha de servir de magatzem de fitxers de cada usuari individual i tenir zones per compartir-los.

Com només vull programari legal, i si pot ser lliure, utilitzarem linux.

Característiques (sense ordenar):
  • Usuaris: uns 840 alumnes (diurn i nocturn), 70 profes i 10 PAS. Això implicarà unes quotes, d'entrada 100MB pels alumnes i 1GB pels altres. Això suposa uns 164GB per tant caldrà un RAID (mirall o 5) amb discos de 200GB (2 o 3).
  • Suposarem uns clients linux d'entrada, per tant utilitzarem NFS pels home dels usuaris.
  • Per a l'autentificació utilitzarem LDAP (no NIS) doncs també voldrem utilitzar la base de dades per a Moodle i Samba.
  • Voldrem fer altes massives d'usuaris, per a això utilitzarem el webmin, que permet fer altes massives d'usuaris linux, usuaris LDAP, usuaris Samba i sincronitzar-los. O bé caldran alguns scripts.
Semblaria ideal la Linkat2, que implementa tot això i més en els perfils de servidor i client de centre, però si no utilitzes els seus valors per defecte no tenim nassos de fer-ho funcionar.
De l'experiència amb linux que tenim podríem escollir entre servidor amb ubuntu o amb debian finalment ens hem decantat cap a debian stable (etch, ara per ara) perquè fa una instal·lació més ajustada i sense tants serveis superflus, només cal comparar l'ús de RAM entre dos servidors similars. Ubuntu sembla mésamigable o automàtic d'entrada,però si les coses es compliquen ja veuríem.

Com a guies d'implementacions similars, i que ens són d'ajuda tenim:
  • http://ieslacetania.xtec.cat/curs_linux/doku.php?id=ldap
  • http://wiki.debianperu.org/doku.php?id=tutoriales:samba-ldap
  • http://www.cs.dixie.edu/ldap/
Abans però cal documentar-se sobre el contingut i la forma del LDAP, per exemple a:
  • http://ldapman.org/articles/sp_intro.html
  • http://www.faqs.org/rfcs/rfc2251.html
  • http://dns.bdat.net/documentos/ldap/
  • http://quark.humbug.org.au/publications/ldap/
  • Google: LDAP
Aviat el pas a pas.

dimecres, 23 d’abril del 2008

Pissarra electrònica 4 (publicitat)

Ja que he traduït al català i castellà i revisat errors, demanat que es fessin unes instruccions (ajuda) i fet suggeriments diversos al programa Whiteboard (Pissarra), crec que el millor que ara puc fer és donar-lo a conèixer: comença a estar maduret i a punt.

He demanat al fòrum de la Linkat que es faci un paquet per a la Linkat2. No ho veig gaire clar doncs està basada en la SuSE Linux Entreprise Desktop 10.1 SP1 que és de l'any de la picor malgrat els esforços per adaptar el kernel.

També he fet comentaris al bloc del Choulo, doncs en veure que algú del món de l'ensenyament a Catalunya utilitzava una "PDI barata" va ser el que més em va motivar a fer-ho jo també.

Allí vaig a veure com una professora (d'una escola de Palència) havia provat de fer un port del programa original per windows per a ubuntu linux. Arran del meu comentari ella va contactar amb mi i resulta que utilitza el programa. Li he pogut facilitar alguna pista per a la utilització del linux-whiteboard. I ella n'ha fet un vídeo.

Com a la portada de la linkat apareixia una notícia dient que en el marc d'una Install Party s'havia fet una demo de la pissarra barata, vaig anar a parar al bloc del que va fer la demo (David Comuñas) i he deixat un parell de comentaris.

Aquest últim va fer la demo amb windows, però em va contestar dient que un altre (Kike Vílchez) utilitzava una versió per a ubuntu. Ja em veus fent un comentari al bloc d'aquest.

On si que no podia faltar que ho expliqués és a la llista de distribució de correu linuxcentres, on apareixen tot de missatges dels coordinadors TIC dels centres d'ensenyament de Catalunya. De fet, un missatge a la seva llista "germana", la aulainf va ser el que em va posar sobre la pista de tot aixó de les pissarres amb wiimote.

dimarts, 8 d’abril del 2008

Pissarra electrònica 3

Això vol dir que cal més potència lluminosa. Per a això he agafat 16 LEDs cutres i els he enganxat en una matriu de 4x4. A més és bi-tensió (dual power m'agrada més) doncs pot anar amb piles (4 de 1,5V = 6V) o bé amb el corrent que surt d'un port USB de l'ordinador (5V).
Per als que enteneu alguna cosa d'electricitat us he fet l'esquema.I quatre càlculs per si voleu fer les vostres provatures:
  1. Considerem que els LED IR consumeixen 1,3V i 0,1A (caldria conèixer el model i cercar al web les característiques).
  2. Si treballem amb 5V podem posar 3 LEDs en sèrie que gastaran 3,9V (3 x 1,3V) i en quedaran 1,1V fins a 5V que es menjarà el resistor. Apliquem la llei d'Ohm i R = 1,1V / 0,1A = 11ohms. Jo he posat resistors de 10ohms i així passarà una intensitat lleugerament major.
  3. Si treballem amb 6V podem posar 4 LEDs en sèrie que gastaran 5,2V (4 x 1,3V) i en quedaran 0,8V fins a 5V que es menjarà el resistor. Apliquem la llei d'Ohm i R = 0,8V / 0,1A = 8ohms. Jo he posat resistors de 8,2ohms (valor comercial més proper).
  4. Per fer maco he posat els 4 LEDs en fila i n'he apilat 4 grups. Si amb 16 LEDs no fa prou llum no se pas...
  5. Per cert, amb 5V (USB) només s'encendran 12 LEDs.
A sota teniu les fotos del procés.
  1. Enganxem els grups de 4LEDS amb cola instantània. Abans cal eliminar part de la rebava que tenen per tal que facin bon contacte i s'enganxin bé. Jo ho he fer amb unes alicates de tall de precissió.
  2. Ara tallem la major part de la longitud dels terminals on aniran soldats els resistors.
  3. Doblem i soldem els terminals per connectar els LEDs en sèrie.
  4. Soldem els resistors corresponents a 5 i 6V.
  5. Aquí tenim els 4 grups de 4.
  6. Enganxem les 4 files de 4 LEDs una sobre l'altra. Abans caldrà eliminar part de la rebava per a tenir una millor superfície de contacte. En aquesta ocasió vaig utilitzar paper de vidre sobre una superfície plana.
  7. Doblem els terminals per a soldar-los junts. Per una banda (esquerra de la foto) els terminals dels LEDs que van al pol negatiu, més al mig els resistors per al positiu dels 5V i a l'altra banda (costat dret) els resistors per al positiu dels 6V.
  8. Ara subjectem amb cinta adhesiva (super-cutre) els LEDs i resistors a un petit llistó de fusta on hem enganxat el polsador. Soldem les connexions del polsador (negatius de 5 i 6V) i els positius de 5 i 6V als grups de resistors corresponents.
  9. Aquí tenim el prototip sencer. Més d'estar per casa no pot ser. A la part de la dreta tenim una regleta de connexions on connectarem o les piles (6V) o bé els 5V d'un port USB. Si connectessim les dues coses alhora potser ens podríem carregar el port USB de l'ordinador.
  10. Ara veureu com d'encenen (les càmeres de fotos són sensibles als imfrarojos). Ara apagats
  11. Ara encesos amb 6V (piles). Un dels LEDs va quedar enganxat una mica tort.
  12. Ara encesos amb 5V (USB). Els més espavilats sabreu perquè només s'encenen 12 LEDs.
  13. Amb quatre piles tipus "D" ens assegurem una bona autonomia a canvi de carregar-nos de pes.
  14. Si no teniu problemes per sentir-vos "lligats" podeu treure 5V (i fins a 500mA) d'un port USB. Per saber a què correspon cada terminal Googlejeu "USB pinouts".
S'ha de dir que el punter va de nassos: Amb la pantalla projectada (suposo que fa uns 2x2m) i el wiimote a uns 4m, podem apuntar separats 5 o 10cm de la pantalla i va bé. De tota manera és més lògic fer-ho tocant la pantalla.

Pissarra electrònica 2

L'altra dificultat ha estat construir un bon punter infraroig. Però, és clar, l'electrònica és lo meu. Amb la merda de botigues de components electrònics de Manresa m'he hagut de complicar la vida, però ja m'agrada:
Amb una pila, un resistor i un LED IR dolent la cosa no funciona (a sota teniu una foto d'aquest primer prototip).Funciona molt just (més aviat falla sovint) sobre una pantalla de 15" i amb el wiimote a 1m.

Pissarra electrònica 1

Des que en un altre bloc d'un profe, que es fa dir Choulo, vaig veure per primera vegada que feien servir un comandament de la Wii per a bastir una pissarra digital interactiva (PDI) jo també vaig voler provar-ho.
El Johnny Chung Lee en fa propaganda en els seus vídeos y amb el seu programa per windows (una pena...).
Llavors vaig veure que hi havia tot un projecte per a aprofitar la Wii i el seu comandament treballant amb Linux.
Googlejant, és clar, vaig trobar el programa que jo volia. Crec que la versió inicial la va desenvolupar un profe català (es diu Pere Negre) que es fa dir Gemini en el seu bloc en anglès. La versió bona l'ha fet un vienamita (Tu Vuong), i m'ha faltat temps per a provar-lo.
D'aquí a instal·lar una Ubuntu BETA!! i a COMPILAR per primera vegada un programa una mica decent. I a col·laborar amb el programari lliure: l'he traduït al català i al castellà (i surto als crèdits del programa!).

Snap Shots

Get Free Shots from Snap.com