SIDEBAR
»
S
I
D
E
B
A
R
«
Convertire un server Linux in macchina virtuale Vmware
Nov 25th, 2009 by OttoFit

Premessa

Un server datato che occorre tenere in produzione per gestire un vecchio sito web, un server smtp per la reportistica, un server proxy per il filtraggio e l’analisi della navigazione per un numero limitato di utenze – sono tutte applicazioni che possono essere convertite in altrettante macchine virtuali riducendo consumi energetici, ingombro e necessità di manutenzione fisica. Tuttavia la conversione non è semplice specie se il sistema operativo non è supportato ovvero se il server in questione ha un guasto di qualche tipo, ovviamente non riguadante il/i dischi rigidi.

Virtualizzazione di macchine fisiche

I principali software di virtualizzazione(VmWare, VirtualBox, VirtualPC) offrono versioni gratuite dei loro prodotti. Esistono quindi controparti open source come qemu, KVM o Xen.
Chi si trova ad avere a che fare con server eterogenei ha talvolta la necessità di convertire una macchina fisica in macchina virtuale. Come procedere?

Convertire un sistema operativo Linux attraverso qemu-img

VmWare Converter è la soluzione, sempre gratuita, di VmWare per la conversione di macchine fisiche. Per quanto riguarda l’ambiente Linux supporta come destinazione solo Server ESX Server, il quale richiede hardware specifico.

dd e quemu-img

Per superare questo ostacolo, ci viene in aiuto uno strumento di qemu, qemu-img, che si occupa di convertire immagini disco tra vari formati di macchine virtuali.

  • creare su un disco differente una immagine di tutto l’ahrd disk della macchina fisica da convertire, in modo da conservare anche le informazioni sulla tabella delle partizioni del disco di partenza, che poniamo essere /dev/sda:
dd=/dev/sda of=/immaginedisco.dd
  • effettuare la conversione con qemu-img
qemu-img convert immaginedisco.dd -O vmdk immaginedisco.vmdk

Creazione della VM

  • Creare una macchina virtuale impostando come hard disk il file ottenuto dalla conversione [immaginedisco.vmdk ], e facendo il boot della suddetta macchina virtuale da una linux live – ad es. livecd di ubuntu o knoppix
  • effettuato il boot, montare il disco e aggiornare grub come segue [chi si trova invece davanti LILO deve seguire un approccio lievemente differente che non illustro - non mi ricordo più :) ]
sudo -i
mkdir server
mount /dev/sda1 server/
mount -t proc none server/proc
mount -o bind /dev server/dev
chroot server /bin/bash
  • Occorre poi aggiornare gli UUID dei dischi rigidi, per ogni partizione da montare é necessario ricavare l’UUID con il comando che segue per poi aggiornare /etc/fstab ed il parametro kopt in /boot/grub/menu.lst (in questo caso la partizione è /dev/sda1)
sudo vol_id --uuid /dev/sda1
  • Quindi rigenerare la configurazione di grub
update-grub
grub-install /dev/sda1

Configurazione dell’hardware virtuale

  • Clean-up vari: verificare eventuali personalizzazioni di periferiche effettuare in /etc/udev/rules.d/
    Nel mio caso in 70-persistent-net-rules: è stato necessario cancellare tutto l’hw di rete considerando che il mac address delle schede di rete cambia nella trasformazione in macchina virtuale. Se si hanno più schede di rete, al primo boot sarà possibile personalizzare la configurazione udev delle schede.
  • Commentare poi i moduli non necessari in
/etc/modules
  • disattivare gli eventuali smartmontools quindi togliere acpid e acpi-support
update-rc.d -f smartmontools remove
update-rc.d -f acpid remove
apt-get purge acpid acpi-support
apt-get autoremove

Prima esecuzione

  • Riavviare la macchina virtuale direttamente dal disco configurato sopra, togliendo l’eventuale ISO o cd usato per il precedente boot. Verificare che tutto funzioni :) e nstallare ora  i vmware tools correnti attivando dal menu di VmWare Workstation l’opzione relativa. Se abbiamo convertito una macchina server, potrebbe essere ncessario montare il supporto per i vmware tools:
mount /dev/cdrom /mnt
cd ~
tar -xvzf /mnt/vmwareX
cd vmwareX
. ./vmware-install.pl

Conclusioni

  • Attraverso strumenti open source è possibile aggirare le limitazioni di VmWare Converter ottenendo una VM corrispondente alla macchina fisica.

                
Condivisione File Windows con Ubuntu
Oct 16th, 2009 by OttoFit

Riassunto: se utilizzi nautilus per condividere i file con Ubuntu, la configurazione sta in /var/lib/samba/usershares :)

Dopo aver installato samba, operazione che non richiede altro che
sudo apt-get install samba

come raccomandato dagli sviluppatori è bene procedere come segue

sudo cp /etc/samba/smb.conf{,.master}

per poi apportare i cambiamenti a  /etc/samba/smb.conf.master e generare il file di configurazione con

testparm -s /etc/samba/smb.conf.master | sudo tee -a /etc/samba/smb.conf

Attivando con Nautilus (intendo clic destro su una cartella sul desktop ad esempio) la condivisione file windows in Ubuntu 9.04 (ma presumo anche nelle versioni precedenti),  non si va a modificare
/etc/samba/smb.conf
bensì nautilus crea un file con il nome della condivisione in
/var/lib/samba/usershares

Di conseguenza è meglio evitare di utilizzare la condivisione di nautilus e invece ricorrere al vecchio smb.conf, in quanto più versatile e meno problematico. Documentazione completa disponibile installando il pacchetto samba-doc con l’usuale

sudo apt-get install samba-doc

Che kernel per Ubuntu su vmware?
Sep 30th, 2009 by OttoFit

Che kernel utilizzare per una Ubuntu Server 8.04.3 LTS? se come me non hai usato una ubuntu Jeos, oppure hai trasformato una macchina fisica in una virtuale, puoi installare il kernel ottimizzato per vm digitando in bash
sudo aptitude install linux-virtual
Quindi, per installare i kernel headers
sudo aptitude install linux-headers-virtual
Ora è possibile procedere alla riconfigurazione dei vmware tools, specie se si è variata la configurazione del kernel
sudo config-vmware-tools.pl
Infine, ricordati di rimuovere i kernel che non servono, conservando il penultimo per eventuali emergenze, soprattutto se non hai ancora riavviato la macchina virtuale dopo aver installato il nuovo kernel
sudo aptitude purge linux- (tab) e verificare ciò che appare, completando il comando in modo da eliminare i kernel/moduli che non sono più utili.
Infine, è bene aggiornare il menu di grub:
sudo update-grub

Se al reboot vi sono problemi di connettività, verificare il mac address: riportato nell’iftab
sudo vi /etc/iftab
eventualmente correggendolo con quello attuale (vmware può aver variato il mac address della scheda di rete) ottenibile con
ifconfig eth0

OpenDNS per navigazione sicura su Windows e Linux.
Jan 22nd, 2009 by OttoFit

Cos’è:

OpenDNS è un servizio di filtraggio e di risoluzione dei nomi DNS gratuito e personalizzabile.  Utilizzando OpenDNS è possibile escludere svariate categorie di siti indesiderati dalla propria navigazione internet, riducendo il rischio di prendere un virus e/o permettendo di escludere intere categorie di siti pericolosi o indesiderati. E’ estremamente utile sia per aziende che vogliono introdurre un primo filtraggio di siti pericolosi o non pertinenti all’attività lavorativa, sia per privati che vogliono ad esempio rendere irraggiungibili dai computer di casa siti pornagrafici, inappropriati o quant’altro. In entrambi i casi,comunque, velocizza la navigazione su internet
Più tecnicamente, OpenDNS fornisce un servizio gratuito e personalizzabile di gestione del DNS, consentendo

  1. di evitare da parte dei provider (es. Alice) il reindirizzamento di richieste DNS, che comporta tracciamento delle abitudini dell’utente e spesso pubblicità indesiderata.
  2. di definire, previa registrazione, scorciatoie per la propria rete: ad esempio, si puo’ definire la keyword mail impostandola per il reindirizzamento verso la propria webmail
  3. di avere, previa registrazione, statistiche di utilizzo
  4. di escludere, previa registrazione, siti indesiderati in base a categorie
    predefinite e/o la definizione di una lista di esclusione personalizzata. Unica lacuna: è inseribile solo un dominio alla volta, via web, non consentendo
    l’importazione di file di testo. Una lista personalizzata si traduce quindi in una lunga fase di inserimento.

Come funziona:

Per usufruire dei servizi sopra

  • per il servizio 1) :
    è sufficiente impostare sul proprio router ADSL o sul proprio PC i DNS di opendns 208.67.222.222 e 208.67.220.220, nient’altro.
  • Per le altre funzionalità, occorre:
    • creare un account, gratuito, su OpenDNS
    • installare sul proprio PC un client per l’aggiornamento secondo le specifiche. Qui le istruzioni per per Windows e MACOS, mentre per linux si può utilizzare ddclient impostandolo manualmente.
      Es: UBUNTU:

      #sudo aptitude install ddclient
      #sudo vi /etc/ddclient.conf
        ## OpenDNS.com account-configuration
        ssl=yes
        use=web, web=whatismyip.org
        server=updates.opendns.com
        protocol=dyndns2
        login=opendns_username    
        password=opendns_password 
        opendns_network_label

      Rif: KB di Opendns
      DNS Update API.

    • Accedere a www.opendns.com eseguendo il login e impostare le funzionalità desiderate cliccando sulla scheda relativa.

OpenDNS verrà utilizzato come DNS di default e consentirà l’uso di scorciatoie che è possibile definire nel pannello su  www.OpenDns.com previo login.

Radio Online su Ubuntu con Mplayer invece di Windows Media Player o Quicktime
Dec 14th, 2008 by OttoFit

Uso IGoogle con il gadget Radio per ascoltare un paio di Radio in streaming. Con Windows. Ho Vista sul PC d’ufficio, più per pigrizia che per scelta. Sui vari portatili di casa invece uso Linux:sul netbook  ubuntu-eee, sul vecchio notebook Compaq PIII con 192 MB Ram (e LCD da 1400×1050!) uso ubuntu server 8.04 LTS, sul centrino 2Ghz ubuntu desktop 8.04 LTS.
Ma niente, nonostante varie interazioni con Synaptic non ero ancora riuscito ad ascoltare radio in streaming via browser, accidenti ai browser e alle radio online che 2 istruzioni potrebbero pure permettersele.
Oggi mi è venuta l’ispirazione mentre riguardavo i parametri e switch di mencoder.

Con Synaptic, veloce ricerca per mplayer, selezionati i vari browser plugin, ed ecco che Firefox suona la mia radio in streaming preferita :)

Facebook…
Oct 6th, 2008 by OttoFit

Il blog di Stefano è spesso interessante. Conoscendolo personalmente riesco ad apprezzare alcuni post più di altri.

Leggendolo oggi mi è saltato in mente mio fratello:ma porca puttana! :) è la frase che invece pronunzia  l’uomo (pensando all’80% di contatti di origine femminile che ha nel profilo) quando la propria compagna scopre Facebook, vi si iscrive e gli manda la richiesta di amicizia. Non è il mio caso ovviamente…

In ogni caso ecco una scusa pronta per l’aumento delle proprie amicizie.

Backup e clone di un hard disk con Clonezilla, in locale e via rete
Sep 8th, 2008 by OttoFit

Grazie a questo post sappiamo come rendere avviabile un dispositivo USB (o una scheda SD). Utilizziamolo per installarvi sopra Clonezilla Lice e per effettuare il successivo boot (è possibile in alternativa masterizzare la iso di clonezilla live).

Un avolta effettuato il boot dal dispositivo USB, procediamo con il wizard ed effettuiamo il backup.

Volendo invece effettuare il backup via rete, possiamo scegliere come destinazione ad esempio una condivisione SAMBA.

Questo passo serve anche per utilizzare clonezilla, ricca di driver di scehde di rete e di storage, per effettuare un clone via i soliti dd e netcat.

Effettuiamo il boot sia nel computer SORGENTE sia nel computer DESTINAZIONE; dopo aver configurato samba, premiamo ALT+F2.

Nel nuovo prompt digitiamo sudo su – e proseguimo con istruzioni differenti a seconda del PC su cui stiamo operando:

Supponiamo che il computer DESTINAZIONE abbia ip 192.168.1.19 e che il SORGENTE abbia ip192.168.1.46, che abbiano disci identici e che Clonezilla live li veda come /dev/sda

DESTINAZIONE

nc -l -p 10000 |gzip -dc | dd of=/dev/sda

Solo dopo aver eseguito il comando di cui sopra, passare a

SORGENTE:

dd if=/dev/sda | gzip -4c | nc 192.168.1.46 10000

et voila, clone effettuato

p.s. via ethernet le velocità per computer recenti sono circa da 6 a 9 Mb/sec, circa 30 Gigabyte all’ora…

Ubuntu su Asus EEEPC 900
Sep 8th, 2008 by OttoFit

Si parte da qui

https://help.ubuntu.com/8.04/installation-guide/i386/boot-usb-files.html

poi

https://help.ubuntu.com/community/Installation/FromUSBStick

e quindi

https://help.ubuntu.com/community/EeePC

Universal Netboot installer
Sep 8th, 2008 by OttoFit

Utilissima utility per il boot da usb, per Windows e Linux.

Permette di installare una distribuzione Linux tra le numerose supportate su una pennetta o un hard disk esterno USB formattato in Fat o Fat32

http://unetbootin.sourceforge.net

Installare GmailFS su Debian
Jul 14th, 2008 by OttoFit

Gmail è il noto servizio di posta elettronica di Google.

7 gb di spazio e l’integrazione con la suite di applicazioni basate sul browser di Google lo rendono, per me, irrinunciabile. Se non bastasse, gmail offre API per la manipolazione degli email con cui è possibile utilizzare i 7gb di gmail come un vero e proprio hard disk via web.  Linus Torvalds diceva “Real Men don’t do backups, they upload their files via ftp and let others do backups” – ma a quel tempo non c’era GMail. Ora diventerebbe “they mount their gmail account via fuse and cp their files there” :)

A parte le boiate,
# sudo -i

# apt-get install gmailfs

e

modprobe fuse

non danno i risultati sperati, perchè

mount.gmailfs none /mnt/gmailfs -o username=tuonome@gmail.com,fsname=TUOFILESYSTEM -p

restituisce una serie di errori di cui i primo è

HTTP Error 400: Bad Request

Il responsabile è

python-libgmail - Python bindings to access Gmail accounts

La versione presente nei repository di Debian 4 è precedente alla 0.1.6.1, che risolve tale bug.

Ok, scarichiamo l’ultima versione da

http://sourceforge.net/project/showfiles.php?group_id=113492

scompattiamola e installiamola

sudo python setup.py install

Compare un altro errore: manca il modulo ClientCookie

Traceback (most recent call last):
  File "setup.py", line 7, in ?
    import libgmail
File "/home/ottofit/tmp/libgmail-0.1.9/libgmail.py", line 36, in ?
    import ClientCookie
ImportError: No module named ClientCookie

Nuova ricerca per ClientCookie, che si trova a http://wwwsearch.sourceforge.net/ClientCookie/

Decompattazione, installazione, questa volta l’errore è

# python setup.py build
urllib2.HTTPError: HTTP Error 404: Not Found

ClientCookie cerca di scaricare setuptools, che evidentemente ha cambiato indirizzo

Nessun problema, ci viene in aiuto README.txt di ClientCookie :) che spiega come per l’installazione sia necessario copiare la directory Clientcookie presente nel tarball omonimo:

cp ClientCookie /usr/local/lib/python2.4/site-packages

a questo punto occorre ritornare nella directory in cui avevamo estratto l’originario python-libgmail, e impartire il comando:

python setup.py install

Finalmente sarà possibile montare il nostro filesystem su gmail con il comando

mount.gmailfs none /mnt/gmailfs  -o username=tuonome@gmail.com,fsname=TUOFILESYSTEM  -p

Se però hai fatto un po’ di prove di mount con tanto di errori, prima di arrivare a questo post chiarificatore, verifica che non sia rimasto qualche mount errato con

mount |grep fuse

ed eventualmente smonta tutto e riparti da capo con il mount.

Ora puoi effettuare backup e altro su gmail con

# cp filedasalvare.tar.gz /mnt/MOUNTPOINT

»  Substance:WordPress   »  Style:Ahren Ahimsa
© Creative Commons License