sabato 18 luglio 2015

Manjaro linux e problemi aggiornamento kernel

Ho già avuto modo di parlare dei problemi che riscontro ogni volta che aggiorno il kernel di Manjaro avendo i driver proprietari ATI.
Con l'upgrade del kernel dalla 4.0.7 alla 4.0.8 la situazione è perfino peggiorata, colpa mia che ho dimenticato di eseguire la rimozione/installazione dei driver prima del riavvio dopo aver terminato l'aggiornamento.
Ma non solo i driver ATI hanno creato problemi, questa volta al riavvio non si montava più la home directory che ho su un disco separato e in formato reiserfs, purtroppo questo filesystem non sembra più essere sviluppato e quindi quelli di Manjaro hanno pensato bene che non servisse più caricarlo.
Per risolvere questo problema è stato sufficiente aggiungere il modulo reiserfs al file /etc/modules-load.d/modules.conf, in questo modo viene caricato ad ogni avvio e infatti dopo il reboot il problema si è risolto.
Tornando hai driver ATI, questa volta anche dopo averli rimossi, il sistema grafico non si avviava, e da /var/log/Xorg.0.log sembra che non trovasse nemmeno i driver ati e vesa.
Per uscire dalle peste ho dovuto reinstallare il vecchio kernel 4.0.7 e relativi driver catalyst ripescandoli da /var/cache/pacman/pkg, visto che non avevo nemmeno la rete attiva, ne cablata ne wireless.
Una volta riavviato il sistema con il vecchio kernel ho eseguito questi comandi :
sudo pacman -Syu
sudo mhwd -r pci video-catalyst
sudo mhwd -i pci video-catalyst
sudo mhwd-gpu --setgl catalyst
a questo punto ho riavviato il sistema e tutto è andato per il verso giusto.
Diciamo che avere questi problemi ad ogni aggiornamento del kernel non mi sembra il massimo, immagino che sarò l'unico sfigato in questa situazione, di certo uno dei pochissimi che usa reiserfs, ma anche tu Mr. Reiser che mi vai ha combinare ?

mercoledì 8 luglio 2015

Grub, EFI, Debian e tanti c....

Dopo circa un mesetto che non accendo più il mio DELL E5410 mi ritrovo con una bella sorpresa, mancato avvio di Debian perchè non risulta esserci un disco di boot.
La prima cosa che controllo è che da BIOS il disco risulti presente, che non sia che con la sfiga che ho sia andato in cavalleria per mancatao utilizzo, ma il disco è presente e forse dovrebbe anche essere funzionante almeno dalle prove che vado a fare dopo aver avviato con una live usb.
Questo PC usa EFI come sistema di avvio e controllando le partizioni del disco vedo che iniziano con /dev/sda2 che è la root ma non vi è traccia della /dev/sda1 che dovrebbe essere la partizione /boot con tutto il necessario per l'avvio con EFI.
Come e perchè sia sparita solo il cielo lo sa, però sono ormai certo che è questo il problema, comunque usando un altro pc raggiungo il wiki di Debian sull'argomento e seguendolo scrupolosamente sono riuscito a ripristinare il PC.
Le cose che ho dovuto fare in più sono state la creazione della partizione che proprio non c'era :
parted /dev/sda
poi al prompt :
mkpart primary fat32 4MiB -1s
in modo da creare una partizione allineata ai 4 megabyte che occupasse tutto lo spazio disponibile.
Poi la ho formattata :
mkfs.vat /dev/sda1
e seguito il resto della guida.
Poi aggiornato il file /etc/fstab indicando il nuovo UUID della partizione leggendolo con il comando :
blkid /dev/sda1 
El al riavvio magicamente parte Debian in tutto il suo splendore.
Ma cosa può essere successo ? Boh, però su questo PC uso la nuova testing di Debian ( stretch ), che un aggiornamento abbia fatto un casino del genere ? mi pare strano ma di  mio casini  non ne ho fatti, di questo sono sicuro.
Beh sicuro ..... dopo un mese cosa volete che mi ricordi ?



mercoledì 1 luglio 2015

Virtualizzare Windows 3.11 for Workgroup

Nonostante il titolo del post non ho intenzione di propinare nessuna procedura per installare Windows 3.11 visto che in rete si trovano tanti di quei tutorial che uno in più non ha nessuna utilità.
Non chiedetemi nemmeno che senso abbia nel 2015 voler installare/usare un sistema operativo così vecchio, in fondo la risposta la sapete già : nostalgia.
Ma allora questo post di che parla ?
Beh semplicemente di quella che è la mia esperienza sul campo e delle conclusioni a cui sono giunto, partiamo dall'inizio con la premessa che il sistema operativo guest che uso è sempre linux, Debian per la precisione.
Il PC su cui ho fatto gli esperimenti è un vecchio Pentium III a 1GHZ con Debian Squeeze, il primo sistema di virtualizzazione adottato è stato VirtualBox che in linea generale è la soluzione che preferisco, gratuita, completa e sempre aggiornata e supportata.
L'installazione è semplice e le varie guide poi spiegano come e cosa installare per avere la rete funzionante, una grafica che arrivi almeno a 800x600, io ho impostato 1024x768, il modulo da installare per ridurre l'impegno della CPU durante l'emulazione ecc. ecc.
Quindi con VirtualBox possiamo avere il nostro caro vecchio Windows 3.11 usabile ? No. No perchè un problema che non ho risolto è quello del comportamento del mouse nella VM, in pratica a momenti salta da una posizone dello schermo all'altra rendendone l'uso un'agonia, questo anche facendo attenzione a muovere lentamente il mouse. Non è certo legato alle performance del guest che come ho detto è un vecchio PC, e in rete ho solo trovato conferma del problema ma nessuna soluzione.
Ho provato allora con VMWare Workstation, ho dovuto ricorrere ad una vecchia versione, la 7, l'ultima a supportare PC a 32 bit.
Anche qui installazione regolare, aggiunta dei componenti per rete, risoluzione video ecc. ecc e mouse funzionante perfettamente, quindi ho proceduto con l'installazione di tutta una serie di programmi che avevo da parte per il buon vecchio Windows 3.11.
L'unico che mi ha dato problemi subito è stato FoxPro 2.6 che non si avvia dando un errore che sembra relativo ad un problema con la CPU, lo dico perchè è piuttosto interessante la cosa, vedrete dopo.
E' anche interessante notare come questa VM portata e messa in esecuzione sotto VMWare Player 7.1 su Debian Wheezy con CPU a 64 bit, ma senza estensioni VT, non funzioni, o meglio appena si avvia Windows 3.11 ed eseguito il logon si blocca miseramente.
Ho provato anche a importare la VM in VMWare Workstation 11 ma anche in questo caso all'avvio di Windows si blocca con un errore di VMWare che accenna alla lettura di una zona di memoria non valida.
Forse dovrei provare a reinstallarla da zero e non a importarla.
Diciamo che comunque quasi ci siamo, almeno sul vecchio Pentium III Windows 3.11 sotto VMWare funziona, ma è molto lento, purtroppo il PC è quello che è e non è certo il miglior candidato come host per l'emulazione, anche di un OS così vecchio.
Ma adesso veniamo alla vera sorpresa.
DOSBOX, già proprio il programma che per sua natura è dedicato all'emulazione dei vecchi giochi DOS.
Ma in DOSBOX si può installare anche Windows 3.11, anche se nella sua versione standard, chiamiamola così, DOSBOX fornisce un DOS versione 5 e manca di alcune funzionalità che gli permettono di eseguire il programma SHARE.EXE che è fondamentale per alcune applicazioni Windows, Office giusto per citare la più importante.
DOSBOX però permette anche di avviare DOS, e quindi Windows 3.11, ma anche Windows 95, da un file immagine, file immagine che non è altro un file che rappresenta un disco fisso, in questo modo si può installare DOS 6.22, l'ultimo, Windows 3.11 e il livello di emulazione sembra molto buono, vi ricordate di cosa ho detto di FoxPro in VMWare ? beh in DOSBOX funziona.
Ovviamente ci sono dei limiti, DOSBOX non ha il supporto per una scheda di rete, anche se a essere sinceri non è proprio un grandissimo problema, io quando usavo Windows 3.1 non ho mai avuto accesso a Internet o a risorse di rete locali, poi dove vuoi andare oggi sul WEB con un OS così vecchio.
Non è un problema anche perchè per installare software o usi una ISO e la agganci ad un'unità CD nella configurazione di DOSBOX, oppure, come il più delle volte faccio io, monto l'immagine del disco e ci copio dentro i file di installazione e poi avvio DOSBOX e lancio l'installazione direttamente dal disco.
Per montare l'immagine è sufficiente :
sudo mount -o loop,offset=`echo 63*512|bc` -t msdos win311.img /mnt
l'unica cosa degna di nota è il calcolo dell'offset della prima partizione all'interno del file immagine, poi sotto /mnt ho tutto il contenuto del disco e vado a copiare i file nella cartella install che ho creato apposta per questo scopo. Quando finisco smonto e avvio DOSBOX.
Non stò qui a spiegare come installare DOS/Windows 3.11 su un file immagine in DOSBOX perchè anche su questo argomento le guide non mancano.
Ovviamente con DOSBOX Windows 3.1 o 3.11 non fa differenza visto che non c'è la possibilità di usare la rete.
Ho provato l'esecuzione di DOSBOX con questa immagine di Windows su un portatile con CPU Intel Core2Duo T5450 a 1,66GHZ e la velocità di esecuzione è più che buona e permette di poter usare i vecchi programmi senza problemi. Personalmente ritengo che anche con una risoluzione grafica di 800x600 a 256 colori la resa sia piuttosto buona, ma anche aumentandola a 1024x768 non ci sono rallentamenti evidenti, l'unica cosa è che su un classico display 1280x800 c'è ben poco spazio.
Ci sarebbe poi qemu, che ammetto di non amare molto anche se in passato lo avevo provato e usato abbastanza, ma la gestione attraverso quel "monitor" dove l'help è inutile e i comandi solo per cambiare un floppy sono così poco facili da ricordare, cioè non puoi usare fda sulla linea di comando e floppy0 nel monitor per identificare il floppy a:.
Sicuramente colpa mia che non riesco a farmi piacere questo sistema macchinoso di iterazione con la VM, ma a parte questo dopo aver installato il sistema di base non sono riuscito a configurare la scheda video, anche se indicata come Cirrus e scaricati i driver dedicati una volta installati la resa era tale da non renedere leggibile nulla, mancavano le icone, anche i controlli grafici sembravano incompleti. Non ho voluto perderci più di tanto, anche perchè pure con l'installazione della scheda di rete non ne sono venuto a capo.
In conclusione devo dire che al momento DOSBOX mi sembra la soluzione migliore per emulare Windows 3.11, e per quello che vale, DOSBOX, essendo un vero emulatore, può eseguire i programmi DOS anche su altre architetture come ARM o PowerPC.
Provandolo su un PowerBook G4 e su un Toshiba AC100 ( Tegra2 ) le prestazioni sono accettabili, più sul PowerBook che non sul Tegra ad essere sinceri, nonostante il Tegra2 sia una CPU più recente, benchè ARM.
Quindi per l'operazione nostalgia con Windows 3.1/3.11 direi che sono a posto con DOSBOX.




sabato 6 giugno 2015

SheevaPlug : "UBIFS: recovery needed"

Qualche tempo fa è partita la corrente e con essa anche lo SheevaPlug, già una volta ho dovuto sostituire la parte dell'alimentazione perchè si era bruciata ma questa volta sono stato più fortunato, infatti il led dell'alimentazione era acceso e anche quelli sulla presa di rete, quindi il problema per cui non vi potevo accedere doveva essere di diversa natura.
Ho quindi attaccato il cavo USB alla presa JTAG, che funge anche da console seriale, e mi ci sono collegato con il classico :

screen /dev/ttyUSB0 115200
e scopro che l'avvio si interrompe con il seguente messaggio :
UBIFS: recovery needed
Error reading superblock on volume 'ubi:rootfs'!
UBIFS not mounted, use ubifs mount to mount volume first!
UBIFS not mounted, use ubifs mount to mount volume first!
Wrong Image Format for bootm command
ERROR: can't get kernel image!
purtroppo cercando in rete scopro che da U-Boot non è possibile eseguire il recovery del file system, la sfiga di avere installato Debian sulla NAND.
La soluzione è in realtà semplice, basta eseguire questi comandi :
ubiattach /dev/ubi_ctrl -m 2
mount -t ubifs ubi0:rootfs /mnt
e verrà eseguito il recovery, in quanto si accorge del problema sul file system.
Ma per eseguirlo bisogna avere un sistema da avviare da USB o da SD, ecco io con questo device la SD non sono mai riuscito ad usarla, provato schede di ogni marca da 2 a 8 giga e nessuna è mai andata bene.
Insomma alla fine della fiera ho seguito questa guida è ho installato Wheezy su USB, poi avviato da questa, fatto il mount e corretto il problema.
Due cose, la guida ha i link per scaricate l'installer di Jessie che però non funziona, poi una volta installato Wheezy bisogna installare il pacchetto mtd-utils altrimenti non verrà riconosciuto UBIFS come un file system valido.

Per abilitare nuovamente il boot dalla  NAND digitare questi comandi al prompt di U-BOOT :
setenv mtdids nand0=orion_nand
setenv mtdparts mtdparts=orion_nand:0xa0000@0x0(u-boot),0x400000@0x100000(uImage),0x1fb00000@0x500000(rootfs)
setenv bootargs_ubi 'console=ttyS0,115200 ubi.mtd=2 root=ubi0:rootfs rootfstype=ubifs'
setenv bootcmd_ubi 'ubi part nand0,2; ubifsmount rootfs; ubifsload 0x1100000 /boot/uInitrd; ubifsload 0x800000 /boot/uImage'
setenv bootcmd 'setenv bootargs $(bootargs_ubi); run bootcmd_ubi; bootm 0x00800000 0x01100000'
 
saveenv
Ora posso usare tranquillamente la mia Wheezy installata su NAND, ma sarà bene che mi tenga da parte una chiavetta USB in caso di necessità.

venerdì 17 aprile 2015

Il bello e il brutto di una distribuzione rolling

Di solito uso solo debian come distribuzione linux, Wheezy e Jessie, quindi ad oggi stable e testing, anche se ormai prossima a diventare stable.
L'unica eccezione è un PC dove uso Manjaro una derivata da Arch, che uso in salsa OpenBox e con la quale mi trovo decisamente bene e anche con i tanti aggiornamenti non ho mai avuto problemi.
Fino ad oggi.
Dopo la solita sfilza di aggiornamenti mi dedico alla visione di un video e nel momento in cui lo mando a schermo intero tutto diventa nero.
Vabbè mi dico forse fatti gli aggiornamenti ci vuole un riavvio, non ci ho fatto neanche caso a cosa sia stato aggiornato e quindi vado di riavvio ..... e non arrivo più al login. Schermo nero.
Riavvio e istruisco grub a non passare al kernel i parametri quiet e splash ma anche così facendo non capisco il perchè si blocchi.
Riavvio in single user e visto che sul PC ci sono i driver video catalyst per la scheda ATI mi viene in mente di dare un 'occhiata a /var/log/Xorg.0.log e mannaggia la p... il problema è nell'avvio del server grafico.
Allora, a mali estremi estremi rimedi :
mhwd -r pci video-catalyst
e tanti saluti ai driver proprietari.
Riavvio e finalmente posso usare il PC, ma visto che ho tendenze masochiste eseguo nuovamente l'installazione dei driver :
mhwd -i pci video-catalyst
riavvio, con le dita ben incrociate, e con mia sorpresa non ci sono problemi e adesso mi trovo qui a scrivere questo post.
Morale della favola, le rolling per quanto stabili possono sempre presentare, presto o tardi, un problema che a seconda delle capacità dell'utente può essere più o meno difficile da risolvere.
Beh, oltre alle capacità, c'è da considerare lo stato d'animo, io avevo voglia di piallare tutto e provare qualche altra distro senza andare di virtualizzazione, ma poi mi sono detto .... calma figliolo, fai un bel respiro e affronta il problema con lo spirito giusto.
Zen linux, tenetelo a mente.

Aggiornamento del 1 maggio 2015

A quanto pare c'è qualcosa che non va con la gestione degli aggiornamenti e i driver proprietari ATI in Manjaro.
Oggi dopo aver aggiornato il sistema ho deciso di installare il kernel 3.19 e al riavvio ho avuto lo stesso identico problema, risolto nel solito modo, quindi nulla di che però non è certo una cosa simpatica.
Vedremo quando, fra qualche mese, passerò al kernel 4.0, tra l'altro già disponibile, se il problema si presenterà di nuovo e, soprattutto, se mi ricorderò ancora come risolverlo.
 

martedì 14 aprile 2015

Virtualizzare con ProxMox

ProxMox è un ambiente di virtualizzazione che si basa su una distribuzione Debian e usa KVM e Linux Container per fornire i propri servizi di virtualizzazione.
Una volta installato il sistema scaricando la relativa ISO si gestisce il server tutto attraverso un'interfaccia web, quindi non serve nessun software lato client e quindi non siamo vincolati a Windows, come spesso accade con altri sistemi.
Come detto si accede al server puntanto il browser al relativo indirizzo in questo modo :
https://192.168.1.100:8006
ovviamente l'IP sarà quello della vs. rete.
Di default l'interfaccia web è in inglese ma si può fin da subito scegliere anche l'italiano come lingua predefinita.
A ogni login appare il messaggio "no valid subscription", perchè immagino si possa avere anche una licenza commerciale con relativa assistenza, ma basta dare OK e andare avanti.
La prima cosa da fare è configurare uno storage da dove pescare le ISO di installazione, io ho usato una share SMB configurandola seguendo le istruzioni qui indicate, ammetto che avrei preferito si potesse fare direttamente attraverso l'interfaccia web.
Purtroppo fatta questa operazione nell'area di storage appena creata il contenuto è vuoto, nessuna delle ISO presenti viene visualizzata.
Per capire come la cosa funzioni ho usato la funzione "carica" per leggere una ISO dal PC client e caricarla sul server, e qui la cosa si fa un pò strana, infatti il file viene caricato, c'è una barra di progressione che indica il procedere del lavoro, ma nella share non appare nulla, c'è una cartella che si è creata quando ho creato l'area di storage che si chiama "template/iso" che però risulta vuota, al termine del caricamento un pò alla volta si sta copiando l'ISO in questa cartella.
Quindi prima viene caricata da qualche parte e poi spostata in questa cartella, perchè non copiarla subito qui ? anche perchè questa fase di copia sembra piuttosto lenta.
Scoperto che le ISO le vuole in questa cartella template/iso mi sposto a mano le ISO già caricate qui dentro e appaiono per magia nell'area di storage.

Creazione di una nuova VM.
Per creare una nuova VM basta premere il pulsante "Crea VM", intuitivo vero ?
Parte un wizard che ci guida nella creazione della VM, la prima cosa da notare è che il nome che daremo alla VM non può contenere spazi, onestamente è un dettaglio che non mi piace molto ma così è.
Nel passo successivo andiamo a scegliere quale OS stiamo installando, ci sono tutte le versioni di Windows dal 2000 al 8/Server 2012, linux, solaris e un generico altro.
Il primo tentativo lo faccio con l'installazione di Debian Wheezy quindi scelgo l'opzione "linux 3.x/2.6", non c'è distinzione tra 32 e 64 bit.
Poi seleziono l'immagine ISO da usare, configuro l'immagine disco da creare e altri parametri come numero di CPU e quantità di RAM.
Quando si tratta di configurare la rete vedo che anche in questo caso tra i modelli supportati manca la classica PC-Net, sicuramente sarà un problema con SCO e OpenBSD. Oltre alla Realtek 8139, già vista con XenServer, qui c'è anche la Intel E1000 che spero sia già supportata bene da OpenBSD, mentre per SCO sarà un problema installare il driver, che però dovrebbe esistere.
Ma per quest'installazione di Debian proverò il driver VirtIO che dovrebbe offire le prestazioni migliori.
Terminata la creazione della VM non viene chiesto di avviarla per cui procedo cliccando con il tasto destro sulla VM appena creata e scelgo "Start", poi accedo alla "Console", sempre dal solito menù.
Anche qui, come con XenServer, la videata di grub non accetta input dalla tastiera che comincia a funzionare solo quando, dopo qualche secondo, parte l'installer chiedendo l'impostazione della tastiera.
A questo punto parte la solita installazione di Debian, noto che l'iterazione con la console è molto più veloce che non quella fornita da XenServer, qui è una nuova finestra del browser e anche il processo di installazione sembra più veloce.
L'installazione di Debian, benchè minimale, non ha dato nessun problema.
Ho provato OpenBSD e usando la scheda di rete Intel E1000 non ho incontrato i problemi visti con la Realtek con XenServer, installazione senza problemi e rete funzionante.
Ho installato anche NetBSD, in questo caso sia per il disco che per la rete ho usato VirtIO e tutto a funzionato a dovere.
Non potevo esimermi dal provare ad installare SCO OpenServer, nella versione 5.0.7, e devo dire che anche in questo caso le cose sono andate piuttosto bene, ovviamente non funziona la rete perchè sul CD di installazione non è presente il driver per gestire la Intel E1000 che ho usato per la VM, ma dovrebbe esserci la possibilità di recuperare il driver sul sito di SCO.
Andando qui è possibile scaricare un CD di aggiornamento che tra le altre cose prevede il driver per questa scheda, a questo punto scaricata la ISO e messa nell'area di storage la ho agganciata alla VM SCO e ho proceduto con l'installazione dei driver aggiornati e successivamente alla configurazione della rete.
L'unico problema incontrato con l'utilizzo della console è che ogni tanto digitando i caratteri viene fuori anche qualche serie di 7 rendendo ovviamente il comando digitato inutilizzabile, non credo sia un grosso problema perchè una volta installato SCO ci si collega poi via SSH.
Ultima nota, l'installazione è solo a carattere non ho provato a installare e usare la gui con SCO, onestamente non la ho mai usata neanche su hardware reale proprio perchè è un sistema operativo server dove un desktop non ha nessuna utilità.
Devo dire che fino ad ora ProxMox, grazie anche a KVM per l'emulazione, mi ha fatto proprio una bella impressione, ricordo che con XenServer non c'è stato verso di farlo andare SCO.
Per ultimo ho lasciato Windows 2003, su questo voglio provare, come fatto con NetbSD, a installarlo usando VirtIO sia per il disco che per la rete, ovviamente Windows non ha i driver integrati per questo tipo di periferiche e bisogna installarli usando la ISO che si trova qui.
Quindi dopo aver creato la VM di base, prima di avviarla, vado ad aggiungere un secondo lettore CD, così uno sarà per la ISO di installazione, e il secondo per la ISO con i driver VirtIO.
Il problema che incontro subito è che Windows richiede di premere il tasto F6 per accedere a driver di terze parti, ma il tasto F6 anche a premerlo non fa nulla e l'installazione poi procede e va in errore perchè non rileva nessun disco.
A questo punto rimuovo il disco VirtIO e creò un classico IDE per l'installazione e mi limiterò a usare VirtIO solo per la rete.
Al termine dell'installazione ho agganciato al CD l'ISO con i driver e installato la rete che infatti ha cominciato poi a funzionare.
Ho provato anche con Windows 2008 e sebbene sia stato possibile dirgli di caricare il driver VirtIO per il disco in fase di installazione arrivava sempre l'infame schermata BSOD ad ogni tentativo quindi almeno dalle mie prove sembra che Windows come sempre faccia qualche capriccio di troppo.
Alla fine, non so se per puro caso o altro, ho provato a installare solo i driver per la rete e il disco escludendo quello che si chiama "Balloon driver" e così facendo sono riuscito con l'installazione, quindi era quest'ultimo a mandare in crash.
Questo potrebbe dipendere dal fatto che ho indicato 2 giga fissi di RAM per questa VM mentre il "Balloon driver" serve per la gestione dinamica della stessa e quindi avrei dovuto, forse, indicare che la VM poteva usare un range tra i 2 e i 4 giga per esempio.
Al termine dell'installazione però la rete non funzionava e per qualche motivo il driver VirtIO per la scheda di rete non si caricava, non quello della cartella Win7/2008, però usando quello per Vista invece è andato. Boh.
Ho provato a installare anche OpenIndiana purtroppo quando si è avviato il sistema live con la GUI il mouse non veniva rilevato e quindi non mi è stati possibile procedere con l'installazione.

Difetti e/o mancanze.
La gestione via WEB di ProxMox ha alcune pecche a mio avviso.
Per quanto possa sembrare banale il fatto che le VM non possano avere spazi nel nome secondo me ne limita la leggibilità del nome assegnato, ma quello che è peggio è che nel nome c'è sempre il prefisso numerico dell'ID assegnato e quindi non c'è un ordinamento alfabetico delle stesse. Certo essendo l'ID modificabile nel momento in cui si crea la VM si può sempre decidere di adottare una certa logica tipo dal 100 al 150 per le VM Windows e via dicendo, ma avrei preferito l'ordine alfabetico.
Manca poi la possibilità di gestire delle note per le VM create.
Nell'area di storage delle immagini delle VM il nome è costruito sulla base dell'ID, anche qui avrei preferito venisse usata la descrizione in modo che fosse più immediato a quale VM appartenga un'immagine.
Non sono mancanze fondamentali però a parer mio migliorerebbero la gestione.
Il fatto che non esista una procedura di import/export delle VM non è poi un grandissimo problema visto anche come funzionano in altri ambienti di virtualizzazione.
In realtà, operando manualmente, dovrebbe essere possibile importare un'immagine in formata VMDK, quello di VMware, è convertirla nel formato nativo di qemu, che comunque dovrebbe gestire anche il VMDK, poi se il risultato è una VM funzionante è tutto da vedere, sopratutto per le VM Windows.

Conclusioni.
In generale devo dire che sono rimasto soddisfatto di ProxMox, purtroppo i miei test non sono stati molto approfonditi e non ho fatto nessun test di prestazione tra VM con e senza VirtIO per vedere gli effettivi benefici di quest'ultimo.
La macchina di prova poi non è un mostro di potenza, però se riesco a sistemare un PC più decente, almeno un i5 anche se di prima generazione, vorrei poterci dedicare più tempo per approfondire meglio il tutto.
Non ho affrontato la gestione dei "linux container" perchè non ho proprio idea di cosa siano di preciso, e mi piacerebbe approfondire l'argomento in futuro.
Certo è che in raffronto a XenServer, secondo me, ProxMox vince alla grande, probabilmente VMWare ESX resta inarrivabile oggi come oggi, comunque mi riprometto di riaffrontare la tematica e l'uso di ProxMox in maniera più prolungata e approfondita, tempo e mezzi permettendo.



sabato 4 aprile 2015

Virtualizzare con XenServer

In passato avevo già provato XenServer e non ne ero rimasto particolarmente soddisfatto, almeno confrontandolo con VMWare ESXi, adesso torno alla carica con l'ultima versione.
L'installazione è molto semplice e lineare, una volta riavviato ci si trova davanti ad una videata di configurazione con un numero di possibilità ed opzioni decisamente superiore a quanto offerto da ESXi, però poi la vera gestione del server si fa da Windows, tanto per cambiare, usando il client dedicato XenCenter.

Importazione da altre soluzioni di virtualizzazione.
La prima cosa che faccio dopo essermi loggato al server è tentare di importare una VM creata in VirtualBox dopo averla esportata in formato OVA, e manco a dirlo il file viene sempre indicato come corrotto, quindi questo formato OVA/OVF che dovrebbe rappresentare una sorta di standard non funziona quasi mai, anche se con VMWare Workstation, nonostante un warning l'importazione sia possibile.
A questo punto invece che usare il file OVA generato da VirtualBox ho eseguito l'export in OVF da VMWare Workstation e in questo caso XenServer sembra abbia gradito ed è partita l'importazione .... che non è mai terminata, infatti nonostante il file OVA fosse di solo un centinaio di mega la barra di progressione dell'importazione del disco è rimasta ferma per buoni 30 minuti, fino a quando ho deciso di fermare tutto.
Bell'inizio non c'è che dire, se la prima impressione è quella che conta siamo messi proprio bene, ma forse il problema è nella VM che volevo importare, uno SCO OpenServer, notoriamente ostico alla virtualizzazione e di certo non supportato da XenServer.
Il secondo tentativo lo ho fatto esportando una VM Windows 2003, sempre da VMWare Workstation, ma il risultato è stato lo stesso, a questo punto mi è sorto il sospetto che non ho capito come funzioni l'importazione, infatti se nel menù view abilito hidden objects appaiono delle strane VM tra cui anche quella che tento di importare che risulta non avere un disco fisso agganciato e un'altra in esecuzione con nome "Transfer VM for VDI" che non capisco cosa faccia, immagino che si occupi dell'importazione ma come operi e se stia effettivamente facendo qualcosa non lo capisco.

Creazione di una nuova VM.
OK lasciamo perdere l'importazione che nonostante dovrebbe essere operazione alla portata di tutti a me risulta impossibile da comprendere, creiamo una nuova macchina virtuale allora, e anche qui i problemi non mancano.
Per prima cosa sul server XenServer non ho il lettore DVD, perchè al posto del lettore c'è proprio il disco su cui è installato XenServer, poco male uso una ISO per l'installazione, già ma l'unica possibilità offerta da XenServer è quella di creare una "ISO library" puntando su un'altra macchina utilizzando per esempio una share CIFS/SAMBA.
Ora, colpa di Windows 8.1 di sicuro, ma nonostante nelle risorse di rete vedessi il NAS ho dovuto usare come path alla share l'indirizzo IP dello stesso e non il nome come appare nelle risorse di rete, mistero sul quale non penso valga la pena di indagare.
In ogni caso, avendo già buttato su qualche ISO queste sono apparse nella libreria e quindi posso provare l'installazione di qualche OS, tra l'altro aggiungendo nuove ISO via FTP sul NAS queste vengono viste in automatico nella libreria, certo ci mancherebbe pure che non fosse cosi.
Come primo test ho pensato di installare Windows 2003 che è tra i sistemi guest supportati da XenServer per cui non dovrei avere problemi di sorta.
Il wizard per creare una VM, come detto, prevede già Windows 2003 quindi mi sono limitato solo alla personalizzazione di alcuni parametri, tipo 1 giga di RAM e 40 giga di disco, poi ho avviato l'installazione usando la ISO dalla libreria e dopo aver selezionato il tab "console" ho proceduto come di consueto con l'installazione come se si trattasse di una macchina reale.
L'installazione mi è sembrata un pò lenta e al termine ho deciso di installare subito gli "XenServer Tools" che dovrebbero migliorare le prestazioni e l'usabilità della VM, e cominciano i problemi, per prima cosa bisogna installare il NET Framework 4 che per fortuna è sulla ISO dei Tools, però questo non si installa perchè manca il componente WIC di Windows che non è presente nella ISO e va scaricato a parte.
Lavorare nella console è di una lentezza allucinante, considerando che la versione di IE che c'è in Windows 2003 è cosi vecchia da non essere utilizzabile ho dovuto scaricare il file dal PC client, caricarlo sul mio server FTP e poi dalla VM usare il client a caratteri FTP per scaricare e installare il file. Per qualche motivo se provavo a usare Explorer per scaricare il file dal mio server FTP mi diceva che non lo potevo salvare.
Alla fine dopo aver installato WIC, NET Framework ho potuto installare i Tools e dopo un riavvio devo dire che non mi pare di notare grandi miglioramenti a livello di prestazioni.
Ho provato anche l'installazione di Debian Wheezy e pure qui la lentezza della console è stata allucinante, innanzitutto l'interfaccia a carattere classica dell'installazione è andata su per il camino, infatti l'interfaccia utilizzata era quella da console seriale, solo molto piu' lenta.
Per fortuna ho fatto un'installazione minimale per ridurre i tempi che comunque mi sono sembrati superiori a quelli di una installazione reale o anche in VirtualBox.
Ho provato a installare OpenBSD 5.6 ma sebbene l'installazione sia andata a buon fine non è stato possibile configurare l'interfaccia di rete, al primo riavvio però sembrava funzionare, o quasi, in quanto l'interfaccia re0 ha ottenuto un indirizzo IP ma continuava ad apparire il seguente messaggio :
re0 : watchdog timeout
e provando a pingare altri PC sulla rete non si otteneva risposta.
Il problema della rete sembra legato al fatto che viene emulata una "Realtek r8139", sicuramente non supportata "out of the box" da SCO, anche se OpenBSD non dovrebbe avere problemi, purtroppo non c'è, o non ho trovato, il modo per cambiare il tipo di scheda da emulare, una classica PC-Net dovrebbe risolvere il problema.
A dire il vero qui viene indicato un "hack" per usare una scheda e1000, io ho provato a fare la stessa cosa, usando una pcnet, scheda vecchia ma supporata da qualsiasi OS di questo mondo, SCO Unix compreso, ed infatti il riavvio di OpenBSD, e le opportune modifiche, hanno permesso a questo OS di vedere la rete senza problemi.
Purtroppo con l'installazione di SCO le cose sono andate piuttosto male, l'installazione è stata perfetta, e con la modifica della scheda di rete questa è stata rilevata senza problemi però al primo riavvio la VM si blocca con questo messaggio :
not a directory
boot not found
cannot open
stage 1 boot failure: error loading hd (40)/boot
che a spanne vuol dire che il disco della VM risulta corrotto. Ho rifatto l'installazione da zero ma il problema si è presentato ugualmente, immagino che il supporto non sia proprio completo da parte di qemu, almeno in XenServer.

Creazione di una VM con XenConvert.
XenConvert è un'applicazione Windows che va installata su un PC che si vuole importare in XenServer, quindi trasforma una macchina fisica in una virtuale.
Come test ho però usato una VM Windows XP in VirtualBox, una volta installato il programma basta lanciarlo e seguire le semplici schermate proposte, l'unica cosa da notare è che nella videata in cui si impostano i parametri di accesso a XenServer, indirizzo IP, utente e pssword, bisogna indicare anche un workspace, che altro non e' che un'area di storage temporaneo.
Ecco, questa è una cosa che non mi aspettavo ad essere sincero, in pratica serve un disco dove far transitare i dati prima di mandarli sul server, almeno così immagino, ora nel mio caso usando una VM non ho fatto altro che abilitare da VirtualBox una cartella condivisa con una cartella del PC host e poi la ho mappata come unità di rete e data come area di workspace e così ho potuto procedere con il passo successivo che altro non è che la richiesta di un nome per la nuova VM e l'area di storage sul server dove salvarla.
A questo punto inizia la procedura vera e propria di importazione, vedo che viene creata una nuova unità, E: nel mio caso, che sembra una copia esatta dell'unità C:, immagino sia una sorta di immagine con i dati congelati al momento in cui inizia l'importazione in modo che se continuo ad usare il PC non si creino problemi di sincronia, ma è solo una supposizione.
Sull'unità di workspace intanto si sono creati 3 file, un OVF e un PVP di qualche kb che immagino contengano informazioni relative al ben più grande file VHD, non resta che attendere.
Sono passate 5 ore e la barra di progressione non è nemmeno ad un terzo, ovviamente non c'è la visualizzazione del tempo trascorso e soprattutto di quanto manca alla fine, ma il file VHD non è nemmeno di 8 giga e in 5 ore non ha completato che un terzo dell'operazione.
Se è così che funziona l'import di una macchina fisica in virtuale direi che è meglio prendersi per tempo, nell'ordine di qualche giorno o settimana se si dovesse trattare di virtualizzare un server con qualche 10 di gigabyte di dati.

OpenXenManager
Questo dovrebbe essere un client per gestire XenServer utilizzabile anche in ambiente linux, il file da scaricare riporta la data di dicembre 2010 quindi non sembra un progetto molto attivo.
Dopo aver scaricato e scompattato il file, installato le dipendenze python necessarie eseguo il programma, mi collego al server e ...... resto qui a guardare una finestra vuota e tristemente bloccata.
Raggiunto il forum di supporto scopro che il problema è già stato segnalato e che, purtroppo, questo progetto non è più portato avanti in maniera continuativa.
Comunque ho provato a scricare i sorgenti con git :
git clone https://github.com/OpenXenManager/openxenmanager.git
poi su Debian ho dovuto aggiungere alcuni pacchetti, oltre a quelli già indicati nel link di cui sopra : 
sudo apt-get install python-glade2 python-configobj
A questo punto ho eseguito il programma di nuovo e questa volta la connessione a XenServer è avvenuta.
Ho subito provato ad avviare la VM con Windows 2003 e la prima cosa che ho notato è come una volta attivato il TAB della console si spostasse il focus sul TAB performance per conto proprio, un pò una seccatura
Altro problema è che non rileva l'installazione degli XenTools sulle VM, infatti in quella con Windows 2003 sono regolarmente installati ma OpenXenManager indica che non è così.
Comunque ho provato ad usarlo per installare Debian Jessie, in questo caso non partendo da un template, non ce ne è uno per Jessie, non è stato usato il parametro quiet console=hvc0 per l'avvio del kernel e infatti l'installer era quello classico di Debian a differenza di quanto avvenuto con l'installazione di Wheezy.
Altra cosa che ho notato, ma forse mi sbaglio, è che in questo caso sembra venga usato qemu per la virtualizzazione e non xen, almeno ho avuto questa impressione nel momento in cui è stato chiesto di partizionare il disco che risultava essere un ata-qemu mentre nella VM Wheezy era un xvd o qualcosa del genere, immagino che dipenda dal fatto che Wheezy è previsto nei template e quindi gestito con xen.
Purtroppo nell'installazione ho avuto problemi con la rete e da OpenXenManager non sono riuscito a configurare l'interfaccia di rete per la VM, infatti nel momento in cui confermavo l'operazione di "add" non appariva nessuna rete, usando XenCenter da Windows ho poi visto che a forza di prove di interfacce ne avevo aggiunte parecchie.
Ma il problema maggiore è che l'interfaccia di rete non otteneva un indirizzo dal DHCP del router, in pratica non era in bridge, e quindi non potevo andare in internet e quindi scaricare i pacchetti per continuare l'installazione di Debian.
Dopo aver cancellato la VM ho rifatto l'installazione questa volta con XenCenter e problemi con la rete non ce ne sono stati, può anche essere che abbia sbagliato io qualche settaggio nel primo tentativo con OpenXenManager.

Conclusioni
Insomma XenServer non mi aveva entusiasmato in passato e anche ora non mi pare di potermi dire particolarmente soddisfatto, non ho trovato nessuna funzionalità particolare e anzi mi pare siano più le mancanze ed i limiti che i pregi.
Voglio sottolineare che non sono un esperto in materia di virtualizzazione per cui valuto il prodotto in base a quelle che sono le mie semplici esigenze, più che altro finalizzate ad avere VM di test, ammetto che l'hardware a disposizione non è il più indicato, CPU Intel T7500, 8 giga di RAM e disco SATA da 320 giga a 7200 giri, ma nonostante questo l'impossibilità di importare da altre soluzioni di virtualizzazione, la lentezza assurda di XenConvert e il limitato numero di OS supportati, il problema con la scheda di rete emulata, non me lo fanno piacere in particolar modo.

Finisce qui questa mia breve e ben poco accurata disamina su XenServer.