Nova versió de la màquina virtual de guifi.net

Acabo de penjar al servidor de la web de la Fundació de guifi.net la nova versió de la màquina virtual de guifi.net.

Tal com s’explica a la pàgina de guifi.net sobre la màquina virtual és una màquina on hi ha instal·lat un Drupal amb el codi dels mòduls de guifi.net (actualitzat a ahir a la tarda) i una versió anonimitzada de la base de dades de guifi.net (de fa unes setmanes).

I per què serveix? Doncs molt senzill, perquè qualsevol que vulgui aportar millores tant al codi o tema de guifi.net tingui un entorn funcional que amb molt pocs minuts ja estigui funcionant.

D’aquesta manera es facilita que més persones puguin donar una ullada al codi dels mòduls de guifi.net i per tant hi pugui haver més routers que es puguin configurar, noves visualitzacions de les dades, un tema més refinat…

Així de cara al SAX 2011 que es farà d’aquí 3 setmanes tothom podrà tenir una versió recent i amb més dades. Ja no hi ha excusa per no millorar la pàgina de guifi!

màquina virtual per a desenvolupar guifi.net

Tenir un entorn per a desenvolupar qualsevol aplicació web es força engorrós. Has de configurar el servidor web, la base de dades, posar-hi dades de prova, crear usuaris, obrir ports, gestionar el codi a banda i una llarga llista de coses a fer i mantenir.

Per això durant els últims  caps de setmana de Desembre i principis de Gener vaig estar configurant una màquina virtual1 amb el fantàstic VirtualBox2 on ja hi hagués tot el necessari pe a posar-se a programar guifi.net (Apache, Drupal, codi de guifi, base de dades anonimitzada …).

Després dels últims cerrells, empaquetar-la i pujar-la a un servidor3 la vaig fer pública.

Si en una cosa anem força curs de recursos a guifi és en la pàgina web, tot i que la pàgina funciona i es va millorant mica a mica sempre he tingut l’espina clavada de poder-hi ajudar per a així intentar millorar-la i optimitzar-la com més millor, ja que com més creix la xarxa més s’exprimeix la pàgina de guifi :)

Espero que amb aquesta petita contribució es faciliti que més i més ulls es puguin posar sobre el codi de guifi, almenys aquesta era la intenció :)

  1. Una Debian pelada []
  2. Cada vegada m’agrada més aquest programa []
  3. De moment l’ADSL de casa no pot servir fitxers de 1,5 Gb :D []

obrir ports a un Virtualbox

Long time no blogging … anyway!

Ja fa temps1 que feia servir unes opcions no tant conegudes del Virtualbox i que permeten interactuar molt més fàcilment amb la màquina virtual, aquí va l’explicació:

Problema: Tinc una màquina virtual amb Virtualbox i vull accedir a algun dels serveis que hi ha en algun port en concret d’aquesta màquina virtual.

Sol·lució: Són tres senzilles línies que només has d’anar copiant i enganxant en un terminal cada vegada que facis una màquina virtual nova.

# VBoxManage setextradata NOM_MAQUINA_VIRTUAL “VBoxInternal/Devices/pcnet/0/LUN#0/Config/guesthttpd/HostPort” 8000
# VBoxManage setextradata NOM_MAQUINA_VIRTUAL “VBoxInternal/Devices/pcnet/0/LUN#0/Config/guesthttpd/GuestPort” 80
# VBoxManage setextradata NOM_MAQUINA_VIRTUAL “VBoxInternal/Devices/pcnet/0/LUN#0/Config/guesthttpd/Protocol” TCP

Canvieu el “NOM_MAQUINA_VIRTUAL” pel nom que li hagueu posat a la màquina virtual. Recordeu que després d’executar aquestes tres ordres haureu d’apagar i tornar a engegar la màquina virtual (no n’hi ha prou en reiniciar-la).

Un cop fet això i amb la màquina engegada de nou només cal que aneu al vostre navegador de l’ordinador amfitrió i poseu la direcció http://localhost:8000 i estareu veient l’Apache de la màquina virtual!

El mateix podeu fer amb l’ssh:

# VBoxManage setextradata NOM_MAQUINA_VIRTUAL “VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/HostPort” 2222
# VBoxManage setextradata NOM_MAQUINA_VIRTUAL “VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/GuestPort” 22
# VBoxManage setextradata NOM_MAQUINA_VIRTUAL “VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/Protocol” TCP

Després de apagar i tornar a engegar ja podreu fer un ssh2 a la màquina virtual.

Entenc que es pot fer amb qualsevol port i que en la cadena “VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/*” només cal canviar l’ssh per ftp o per qualsevol nom arbitrari no repetit, no he trobat cap guia que ho expliqui amb detall (tampoc he buscat molt :D)

Espero que sigui útil!

  1. De fet ho vaig descobrir a Openbravo quan utilitzava les màquines virtuals per fer coses de la feina []
  2. ssh -l USUARI -p 2222 localhost []

Ubuntu en crisi (vmware-player)

(el resum de la GUADEC encara l’estic fent :) teniu algunes imatges a la galeria per anar fent boca :D

Com pot ser que la versió anterior (Gutsy) hi tingués paquets per a l’vmware-player i en canvi pel que he arribat a veure no hi ha cap paquet per a la versió actual (Hardy) quan fa més de 3 mesos ja que ha sortit?

Per sort, instal·lar-lo no és massa complicat, tot i que l’script en perl que incorpora el tar.gz és molt molt pesat, et fa més de 50 preguntes! Quan el 99,9999% dels usuaris que l’instal·len no volen ni una pregunta, només que s’instal·li i s’executi :S

Està molt bé que permeti canviar el directori on deixarà les icones, bla bla bla, però en tot cas que posin en el mateix fitxer totes les variables amb una explicació de cada una i que n’avisin en l’execució, així tots feliços.

Acabo de trobar-li una altra errada MOLT greu al vmware-player aquest (es nota que m’agrada més el virtualbox oi? :) . Resulta que si hi fas clic et captura el punter, que està molt bé, però estaria encara millor que t’avisés com coi treure la capturació del punter (el virtualbox per exemple fins que no li dius que ja no t’empipi més quan et captura el punter et mostra un diàleg que et diu com la combinació de tecles per treure la capturació i com canviar-la).

Ara a esperar que acabi de compilar-se la base de dades de l’Openbravo ….

Guest Additions en Linux

logo del virtualboxFa uns dies comentava que per compartir carpetes i tenir integració de finestres calia instal·lar les Guest Additions al Windows.

Doncs bé, per fer-ho a Linux no es gaire més complicat :)

Només hem de muntar la ISO de les Guest Additions al Linux i (almenys a mi no m’ha funcionat) ignorar l’avís d’arrencada automàtica.

Naveguem pel disc que acabem de muntar i executem en un terminal el fitxer VBoxLinuxAdditions.run.

Un cop ho ha instal·lat tot podeu afegir línia al fitxer ~/.xinitrc que posi:

98vboxadd-xclient

Ara ja podeu reiniciar i podreu redimensionar la pantalla a gust i tindreu la integració de ratolí.

Per a compartir carpetes entre dos Linux hi ha un document[1] a la pàgina oficial del Virtualbox, encara no ho he investigat tot i així :)

[1] També hi ha un manual complet de 211 pàgines que deu explicar-ho també, però tampoc me l’he mirat del tot encara

Host+L

logo del virtualboxSi premeu aquesta combinació de tecles quan estigueu en un Windows virtualitzat dins d’un VirtualBox (i amb les Guest Additions instal·lades)us desapareixerà[1] el Windows però en canvi les finestres que tingueu obertes estaran a l’escriptori.

Un captura val més que mil paraules :)

Captura del Virtualbox

La qual cosa va genial quan vols copiar dades d’una aplicació a l’altre :)[2]

[1] De fet també es queda la barra del Windows a sota (com es pot veure a la captura de pantalla

[2] Aquí diria que es errada del VirtualBox, ja que en principi si hi ha instal·lades les Guest Additions hauria de permetre compartir el porta-retalls (o sigui el que copies al Windows ho pots enganxar al Linux i al revés) però només em funciona en una sola direcció, de Linux a Windows.

virtualbox – compartir carpetes

logo del virtualboxJa fa temps que el vaig començar a fer servir per virtualitzar el Windows. És molt senzill i ràpid, es segueix un petit auxiliar i ja està tot apunt. Poses el cd (o seleccionar una imatge ISO que ja tinguis al disc dur) i comences a instal·lar el sistema operatiu.

 

Ara bé, amb això no en tenia prou, necessitava poder compartir documents entre el sistema operatiu amfitrió i el virtualitzat, així que vaig buscar una mica per Internet i resulta que és igual de fàcil:

 

  • Un cop tens la màquina engegada vas al menú Dispositius → Instal·la les Guest Additions
  • Es baixarà una petita imatge ISO que després es muntarà al Windows[1] i s’obrirà l’instal·lador
  • Segueixes l’auxiliar i reinicies [2]
  • Abans de tornar a engegar la màquina vas a les opcions de la màquina virtual i li dius les carpetes que vols compartir
  • Engeges la màquina virtual i un cop està engegat vas al terminal i hi escrius: “net use x: \\vboxsvr\$carpeta” on $carpeta és el nom de la carpeta que li has donat en el punt anterior[3]

Fent-ho així tindreu una unitat de xarxa muntada a la lletra x: si voleu compartir més carpetes repetiu els dos últims punts tantes vegades com faci falta, canviant el $carpeta i la x: per el nom de la carpeta i una lletra d’unitat lliure clar.

 

[1] Diria que només es per Windows les Guest Additions. Les distribucions de Linux que he provat no m’hi he entretingut a mirar com compartir carpetes

[2] No n’estic segur si cal reiniciar, però sent Windows segurament serà que si :)

[3] Sobretot poseu l’espai entre x: i \\vboxsrv… que sinó no funcionarà

virtualització

logo del virtualboxcom que sembla que no hi ha cap alternativa lliure per el Minitab (i dóna la casualitat que fa força força temps parlava de virtualització) avui m’he decidit a instal·lar algun sistema de virtualització per a poder treballar amb el Windows sense haver de sortir de linux

a més com que el vmware menja molts recursos i no és lliure m’he decidit a explorar les altes solucions que corren, així que provat primer el QEMU i després el VirtualBox

el QEMU realment m’ha anat molt lent a instal·lar així que de seguida he mirat el següent i de moment em convenç força

si no toqueu cap opció, només instal·lar i fer funcionar, la xarxa ja funciona tota soleta (això sí, no feu com jo i proveu de fer pings, que no funcionaran i us passareu una hora mirant com és que no funciona la xarxa)

ara només em faltaria provar Xen, KVM, Parallels i algunes de les moltes altres solucions que ja existeixen ara mateix

alguna preferència o recomanació?