Monthly Archive for November, 2008

Mondo Virtuale

L’ultima volta che avevo giocato con KVM, cercavo un modo per far andare la rete, non importava come…

Trovata quella soluzione molto arrangiata, non contento, ho cercato qualcosa di molto più elegante per gestire la situazione. Avviare uno script bash per acquisire i privilegi di amministrazione, impostare tutte le interfacce di rete e avviare kvm sempre da root, mi faceva storcere troppo il naso.

Oggi casualmente mi sono imbattuto su una libreria di astrazione dei cosidetti virtualizzatori: libvirt. Ok una libreria, ma come controllarla?! Ebbene grazie a Fedora/RH, è stato reso disponibile un software di gestione grafica tanto comodo chiamato in modo molto originale virt-manager.

Ancora sono in fase di testing, ma ho notato che non viene aggiunto il supporto all’ACPI e quindi il sistema virtualizzato inizia a consumare il 100% della CPU del povero portatilino. In questo thread c’è scritto come aggiungere il supporto ACPI, ma è meglio farlo prima dell’installazione di sistemi Windows: non gradiscono molto il cambio di questo tipo di driver…

Adesso devo solo risolvere i problemi di esecuzione da utente normale e il gioco è fatto!

Tags: , , , ,

Gears

Wordpress dalle ultime versioni supporta Google Gears, una estensione per il nostro panda preferito che introduce un pesante caching/salvataggio delle pagine dell’interfaccia amministratore aumentandone così la velocità e diminuendo il consumo della rete.

Prima o poi (forse anche ora, ma non capisco come attivarlo), si narra che questa estensione verrà usata anche con Gmail e Google Calendar. Non vedo l’ora!

La versione disponibile sul sito attualmente non riesco ad installarla su questo sistema x86_64 (64bitte), mi da uno strano errore, ma sembra un problema noto. Così ho installato la versione disponibile su un altro sito, in attesa che sistemino il baco.

Tags: ,

Precisazione

NB: Questa non è una nota politica. Ma le affermazioni di Berlusconi mi fanno vergognare…

Tags:

KVM e la Rete

Il processore Intel P9500 montato sul mio piccolo portatilino supporta il set di istruzioni Intel® VT specifiche per una virtualizzazione a livello quasi hardware (anche se non è la z/Architecture :P).

Con gli ultimi Kernel, Linux ha introdotto moduli per questa tecnologia e una versione modificata dell’emulatore QEMU riesce a sfruttare, o almeno ci prova, questa caratteristiche. La Kernel-based Virtual Machine (KVM) supporta una gran quantità di sistemi operativi, ma fortunatamente basta Windows XP a chi, data l’arretratezza della cultura informatica italiana, è obbligato ad usare sistemi Microsoft per piccoli e stupidi lavori, dove nemmeno Wine ti può essere d’aiuto.

Il sistema in sé è molto grezzo e per far scroccare al sistema ospitato la rete di quello ospitante ci sono non pochi passi da compiere. La soluzione base è quella di creare un bridge tra le due connessioni, ma questo approccio può compromettere gli eventuali automatismi di un sistema desktop. Ho optato quindi per la creazione di una rete virtuale e dare al mio sistema delle capacità di routing temporanee.

Ecco lo script kvm-ifup:

/etc/kvm/kvm-ifup
  1. #!/bin/sh
  2.  
  3. switch=$(/bin/netstat -rn | awk '/^0\.0\.0\.0/ { print $NF }')
  4. dns=$(grep nameserver /etc/resolv.conf | cut -f 2 -d " ")
  5.  
  6. /sbin/ifconfig $1 192.168.2.1 netmask 255.255.255.0 up
  7. echo 1 > /proc/sys/net/ipv4/conf/$1/proxy_arp
  8. echo 1 > /proc/sys/net/ipv4/conf/$1/forwarding
  9. echo 1 > /proc/sys/net/ipv4/conf/$switch/forwarding
  10.  
  11. /sbin/iptables -t nat -I PREROUTING 1 -i $1 -p udp -d 192.168.2.1 –dport 53 -j DNAT –to-destination $dns
  12. /sbin/iptables -t nat -I POSTROUTING 1 -o $switch -s 192.168.2.0/24 -j MASQUERADE

L’orribile e oscena tecnica di reindirizzare le query DNS, l’ho presa da tutti i router ultimamente in commercio. Chiedo perdono…

Ed invece lo script kvm-ifdown:

/etc/kvm/kvm-ifdown
  1. #!/bin/sh
  2.  
  3. switch=$(/bin/netstat -rn | awk '/^0\.0\.0\.0/ { print $NF }')
  4.  
  5. /sbin/iptables -t nat -D POSTROUTING 1
  6. /sbin/iptables -t nat -D PREROUTING 1
  7.  
  8. echo 0 > /proc/sys/net/ipv4/conf/$1/proxy_arp
  9. echo 0 > /proc/sys/net/ipv4/conf/$1/forwarding
  10. echo 0 > /proc/sys/net/ipv4/conf/$switch/forwarding
  11.  
  12. /sbin/ifconfig $1 down

Questi due script vengono ovviamente lanciati dall’invocazione del kvm:

  1. modprobe tun; kvm -smp 2 -usb -net tap -net nic winxp_x86.img

Come si può notare, è necessario invocare il comando con i privilegi di root, altrimenti niente caricamento di moduli per l’interfaccia virtuale, niente configurazione di interfacce di rete, niente impostazione del firewall, ecc. ecc… E sul sistema operativo emulato va impostato un indirizzo di classe 192.168.2.0/24 mentre il default gateway e il dns impostati su 192.168.2.1.

Devo risolvere ancora qualche problemino come aggiungere l’audio o una tastiera a 105 tasti visto che freccette, pagina su e giù non vanno.

Tags: , , , ,

Muro di Tubi

Il vecchio e il nuovo. Un album storico che non ha bisogno di presentazioni e l’ultimo lavoro della miglior band “emergente” italiana…

Tags: , , , , ,