Ciao gente.
E’ da molto tempo oramai che i programmi di virtualizzazione la stanno faccendo da padroni nel campo dell’informatica e credo che nel prossimo futoro si spingerà per una sempre più spinta virtualizzazione.
Come programmi per la virtualizzazione ne esistono diversi, sia free che commerciali.
Tra i programmi più usati per la virtualizzazione cito quelli messi a disposizione da VMWARE, VIRTUALBOX e QEMU.

Nel mio pc personale per virtualizare uso principalmente Virtualbox, ma ultimamente stò giocando molto con altri programmi di virtualizzazione. Proprio in questi giorni stò provando ad usare il nuovo supporto per la virtualizzazione fornito dal kernel linux: KVM.

Dato che sono pigro ho cercato un modo per non dover rifare tutte le mie VM, l’installazione e la configurazione di un sistema rubano sempre del tempo.
La soluzione è molto semplice, basta prendere i dischi virtuali di Vbox e trasformali in dischi per Qemu.
I passi fondamentali da eseguire sono 2:

  • convertire i vdi in raw
    pennega@pennegaz:HardDisks $ VBoxManage clonehd --format RAW Arch_raid_disk2.vdi Arch_raid_disk2.img
    Oracle VM VirtualBox Command Line Management Interface Version 3.2.12
    (C) 2005-2010 Oracle Corporation
    All rights reserved.
    
    0%...^F10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
    Clone hard disk created in format 'RAW'. UUID: a0a2e205-139c-4b91-88f5-a523cc7b82fd

    NB: Per questa operazione disogna avere a disposizione tanto spazio quanto la grandezza massima del disco

  • convertire il disco raw in un disco qcow2:
    pennega@pennegaz:HardDisks $ qemu-img convert -f raw Arch_raid_disk2.img -O qcow2 Arch_raid_disk2.qcow

Ora non rimane che ricreare la macchina struttando KVM ed usare i dischi appena convertiti.

Buona virtualizzazione a tutti.

Condividere connessione ad internet

Inserito da il28 February 2011

Può capitare di dover usare un pc ed ad un certo punto ci si accorge di aver bisogno della connessione ad internet, e fin qui niente di complicato, però cosa succedere se il pc è lontano dal modem/router e non possiamo stendere dei cavi o il pc non è dotato di scheda wifi? Siamo costretti a portare il pc nella stanza dove si trova trova il router?  Bhe questa può essere una soluzione, ma ne esiste una ancora migliore e cioè condividere la connessione di un pc (connesso in wifi) tramite un semplice cavo di rete (cross).

In questo caso il pc A farà lui stesso da router per il pc B. E’ necessario che A abbia almeno due interfaccie di rete (in questo caso una wifi ed una ethernet), una connessa al router  (wlan0) e l’altra (eth0) al pc B.

Configuriamo il pc A per condividere la connessione, assumendo che l’interfaccia wlan0 sia già configurata, e configuriamo la eth0:

root@pennegaz:pennega # ifconfig eth0 192.168.2.1

Ora si deve abilitare il forwarding, inserendo “1” in /proc/sys/net/ipv4/ip_forward

root@pennegaz:xenserver # echo 1 > /proc/sys/net/ipv4/ip_forward

Ora è necessario scrivere una regola per iptables per far si che il forwarding venga eseguito:

root@pennegaz:xenserver # iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE

Ora configurare il pc B per avere ip statico della classe 192.168.2.X e come gateway inserire l’ip della eth0 del pc A (192.168.2.1).

Ed ecco la connessione è condivisa.

Openfiler: creare un nas opensource

Inserito da il25 February 2011

Openfiler è una distribuzione browser-based per la realizzazione di un NAS o di un SAN.
I protocolli supportati sono:

  • NFS
  • SMB/CIFS
  • HTTP/WebDAV
  • FTP

Supporta inoltre autenticazione NIS ed LDAP (con il supporto per SMA/CIF).
Scaricare l’immagine iso dall’ area download del sito di openfiler .
Far avviare il pc da cd e premere INVIO al prompt per iniziare l’installazione.


Il primo passo dell’ installer è quello di verificare il cd di installazione, passo che può essere saltato, ma dato che prendere meno di un minuto lo si può eseguire. Se l’installer dovesse rifiutarsi di continuare l’installazione perchè non trava il cd semplicemente toglierlo e reinserirlo.

Ora ci si trova difronte ad una comoda ed intuitiva (anaconda) interfacia grafica di installazione.

Per far partire l’installazione premere NEXT. Verrà proposto di scegliere il layout della tastiera, ancora NEXT e si dovrà provedere al partizionamento del disco.

Per comodità si può scegliere di fare tutto in automatico, selezionando il disco in cui installare il sistema e marcare la casella che permette di controllare ed in caso modificare lo schema delle partizioni. Qui è possibile anche procedere ad una installazione in RAID o LVM.

Il passo sucessivo è quello di impostare la rete e l’hostname, impostare il timezone e sucessivamente scegliere la password di root.

Al prossimo NEXT partirà l’installazione vera e propria compresa di formatazione dei dischi ed installazione del software.

Premere reboot per riaviare la macchina a fine installazione.

Terminato il reboot aprire un browser e nella barra degli indirizzi inserire https://INDIRIZZO-IP:446. Nella schermata di login inserire:

  • Username: openfiler
  • Password: password


Prima di continuare dal menu Accounts–>Admin Password cambiare la password di amministratore e sucessivamente dal menu System–>System Update si può procedere all’agiornamento del sistema. Terminato l’aggiornamento riavviare la macchina.
Dal menu System–>Network Setup–>Network Access Configuration si impostano le reti che devono avere acesso alle risorse condivise.
Si continua creando una risorsa condivisa. Per creare lo spazio da condividere andare nel menu Volumes–>Block Devices e scegliere il disco vuoto (/dev/sdb).

In fondo alla pagina si potrà creare una partizione di tipo Primary–>Physical Volume .

Creiamo un VG (Volume Groups) di nome “shared”, selezionare /dev/sdb1 e premere Add volume group.

Ora aggiungere un LV (Logical Volume) al VG, menu Add Volume selezionare il VG dare un nome al volume, una descrizione, la dimensione ed il FS.
Dal menu Services è possibile abilitare alcuni servizi, abilitare ldap samba ecc..
Ora dal menu Accounts–>Authentication—>User Information Configuration abilitare LDAP ed in Accounts–>Administration si possono creare i gruppi e gli utenti per le risorse condivise.

Dal menu Shares è possibile creare una directory condivisa, renderla pubblica od ad acesso controllato, assegnare i permessi per i vari protocolli (nfs,samba ecc).

Ecco il NAS è pronto.

Password di mysql persa?

Inserito da il22 February 2011

Chi lavora con server e database ha a che fare (volente o nolente) con dei DBMS.
Tra i DBMS più diffusi, almeno in ambito OSS, c’è mysql.
Per potersi collegare al demone mysql è solitamente necessario inserire un username ed una password.
Ma cosa succede se non si ricorda più la password di amministratore?
La risposta è semplice non si accede più al database e non si possono eseguire più le operazioni di manutenzione.
Come risolvere?
Prima cosa stoppare il demone mysqld

root@pennegaz:pennega # /etc/rc.d/mysqld stop

Ora avviare mysqld in safemode

root@pennegaz:pennega # /usr/bin/mysqld_safe --skip-grant-tables&
[1] 23658

Ora ci si può collegare a mysql senza inserire la password:

root@pennegaz:pennega # mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.5.9 Source distribution

Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

e procedere con il cambio della password per l’utente root.
Selezionare il database mysql

mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> show tables;
+---------------------------+
| Tables_in_mysql           |
+---------------------------+
| columns_priv              |
| db                        |
| event                     |
| func                      |
| general_log               |
| help_category             |
| help_keyword              |
| help_relation             |
| help_topic                |
| host                      |
| ndb_binlog_index          |
| plugin                    |
| proc                      |
| procs_priv                |
| servers                   |
| slow_log                  |
| tables_priv               |
| time_zone                 |
| time_zone_leap_second     |
| time_zone_name            |
| time_zone_transition      |
| time_zone_transition_type |
| user                      |
| user_info                 |
+---------------------------+
24 rows in set (0.00 sec)

Adesso si può cambiare la password con

mysql> update user set password = password('NUOVA_PASSWORD') where user = 'root' and  host='localhost';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql>

Prima di stoppare e riavviare mysql è necessario aggiornare i permessi sui DB:

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> quit;
Bye
root@pennegaz:pennega #

Fermare e riattivare mysqld

root@pennegaz:pennega # /etc/rc.d/mysqld stop
:: Stopping MySQL Server                                                                                     [BUSY] 110222 11:09:24 mysqld_safe mysqld from pid file /var/lib/mysql/pennegaz.pid ended
                                                                                                             [DONE] 
[1]+  Done                    /usr/bin/mysqld_safe --skip-grant-tables
root@pennegaz:pennega # /etc/rc.d/mysqld start
:: Starting MySQL Server                                                                                     [DONE] 
root@pennegaz:pennega # 

Bene ora il collegamento può avvenire con la nuova password.

Rimuovere commenti dai file

Inserito da il21 February 2011

Prima o poi capita a tutti di dover mettere mano ad un file di configurazione. Solitamente l’operazione non è molto complicata, basta aprire un editor di testo (nano,vi,emax,kate,gedit ecc) e modificare le righe di nostro interesse.
La cosa inizia a complicarsi quando i file di configurazione sono molto ricchi di commenti, non che guastino ma rendono pesante la lettura dello stesso.
Come procedere?
Possiamo semplicemente eliminare tutte le righe che contengono dei commenti, lasciando solo le direttive di configurazione.
Prima di rimuovere i commenti è bene fare una copia del file originale (possono sempre tornarci utili):

 cp file_di_conf.conf file_di_conf.conf.ori

Ora tramite grep si può procedere ad eliminare i commenti:

cat file_di_conf.conf.ori  | grep -v -E '(^#|^$)'  > file_di_conf.conf

Ora il file di configurazione sarà senza commenti.

NB:Per commenti si intendono le linee che iniziano per #.

Grazie a xnamix