Old:Installazione Qemu con supporto accelerazione Kqemu: differenze tra le versioni

m
Nota su GCC, errori di compilazione
m (Nota su GCC, errori di compilazione)
Riga 1: Riga 1:
== INSTALLAZIONE QEMU / KQEMU PER DEBIAN / UBUNTU ==
ho inserito alcun regole: derivano da quanto stabilito dalla Registration Authority italiana, dal regolamento di chat e dal comune buon senso.


* i punti sono per lo pi in ordine sparso e dovrebbero essere ordinati
* mancano sicuramente alcuni punti
* deve essere scritta una spiegazione introduttiva
* deve essere stabilito come sanzionare/moderare i comportamenti scorretti


1. Scaricare da:
[[Utente:Keltik|keltik]] 12:53, Ott 2, 2005 (EDT)
[http://fabrice.bellard.free.fr/qemu/download.html http://fabrice.bellard.free.fr/qemu/download.html]
----
i codici sorgenti di QEMU e di KQEMU, scompattarli in modo che
la directory src di kqemu sia estratta all'interno della directory
di quemu e settare i diritti con chmod 775 a tutto l'albero quemu/kquemu.


<pre>
2.rob@klingon:/home/rob# tar zxvf qemu-0.7.1.tar.gz
3.rob@klingon:/home/rob# chmod -R 775 /path/to/qemu-0.7.1
4.rob@klingon:/home/rob# cd qemu-0.7.1
5.rob@klingon:/home/rob/qemu-0.7.1# tar zxvf /home/rob/kqemu-0.6.2-1.tar.gz </pre>


Ora va trovata la path del kernel-headers (linux-headers su
Dunque,
ubuntu) per inserirla nel file "configure" della directory
secondo me la regola di cercare prima di postare va messa per prima.
sorgente di qemu.


<pre>
Poi la prima parte mi sembra un po' pesante... chiarisco: non che non si capisca, ma imho si corre il rischio che chi legge la trovi pesante e la salti, mentre invece sarebbe la parte pi� importante: uno che ha capito bene quella dovrebbe sapere come comportarsi anche senza il  bisogno di leggere le regole dopo (imho!)
6.rob@klingon:/home/rob/qemu-7.0.1#uname -r (legge la versione kernel)
7.rob@klingon:/home/rob/qemu-7.0.1#gedit configure
</pre>


cambiare la riga: kernel_path=""
Io metterei qualcosa del tipo:
in kernel_path="/usr/src/kernel-headers-2.6.10-k7" per debian
o in kernel_path="/usr/src/linux-headers-2.6.10-k7" per ubuntu,
ricordandosi di inserire la propria versione del kernel
ricavabile con "uname -r"


Ora vanno installate le librerie necessarie (qualora non fossero presenti)
Debian nasce come una comunit� di persone che condividono le proprie esperienze e conoscienze personali nell'usare un sistema GNU/Linux. Questo fa di Debian una distribuzione molto diversa dalle altre, soprattutto per l'idea che sta dietro tutto il progetto: la condivisione.
In Debian il gruppo di sviluppatori si confonde con quello degli utenti finali, anche perch� un sistema GNU/Linux � talmente vasto e mutevole che � praticamente impossibile essere esperti di tutto quanto compreso in esso.
Il progetto Debianizzati.org nasce proprio da questo: un gruppo di persone che hanno scelto Debian (di Debianizzati, appunto) hanno impiegato le loro conoscienze e le loro risorse personali per creare un luogo dove chi � pi� esperto in qualcosa possa aiutare altri meno esperti, nella speranza che chi ha ricevuto un aiuto oggi, domani senta, come noi, la necessit� di aiutare altri.


<pre>
non so se � abbastanza scorrevole, per� l'idea � che chiarendo la filosofia di base il resto poi viene da s�.
8.rob@klingon:/home/rob/qemu-7.0.1#apt-get install libsdl1.2-dev
9.rob@klingon:/home/rob/qemu-7.0.1#apt-get install zlib1g-dev
</pre>


Verifichiamo che sia tutto ok e che il supporto kqemu sia attivo, in modo che venga compilato
a voi
il modulo corretto per il nostro kernel. Poi compiliamo ed installiamo.


<pre>
[[Utente:tindal|tindal]] mer 2 nov 17:42:29 CET 2005
10.rob@klingon:/home/rob/qemu-7.0.1#./configure (verifichiamo che sia tutto ok e che kqemu sia attivo)
11.rob@klingon:/home/rob/qemu-7.0.1#make (compilazione)
12.rob@klingon:/home/rob/qemu-7.0.1#make install (installazione)
</pre>
 
Ora va installato il modulo del kernel
 
<pre>
13.rob@klingon:/home/rob/qemu-7.0.1#modprobe kqemu (fa partire la base kernel dell'acceleratore di qemu "kqemu")
</pre>
 
Se si vuole che il modulo kernel kquemu parta all'avvio (consigliato) seguire la segg. procedura:
 
<pre>
14.rob@klingon:/#gedit /etc/init.d/bootmisc.sh
</pre>
 
ed inserire le seguenti righe nel file bootmisc.sh subito prima di "exit;"
 
<pre>
# Start Qemu with KQemu accelerator
/sbin/modprobe kqemu
mknod /dev/kqemu c 250 0 # Create the KQEMU device
chmod 666 /dev/kqemu # Make it accessible to all users
</pre>
 
 
Creazione di un disco immagine (facoltativo)
 
<pre>
15. rob@klingon:/home/rob#qemu-img create hd.img 3500M
</pre>
 
Riga di comando per partenza qemu con acceleratore kqemu
(cambiare il boot per fare l'installazione da cd etc..)
 
<pre>
rob@klingon#qemu -boot c -cdrom /dev/cdrom -hda /home/rob/hd.img -user-net -pci -m 256 -k it -localtime
</pre>
 
Opzioni:
 
* -m --> memoria per l'emulatore = 256MB
* -k it --> tastiera italiana
* -localtime --> usa ora locale (default UTC)
* -pci --> emula scheda di rete rtl8029 PCI
* -boot c --> boot da dico rigido
* -user-net --> Il sistema GUEST deve essere configurato in DHCP.
Qemu assegna un indirizzo dinamico "10.0.2.15" al SO guest,
il quale sarà in grado di pingare solo il suo GW che è
"10.0.2.2" Per testare la rete quindi avviare le applicazioni
di rete, visto che il ping <host> non funziona.
 
=== Qemu Networking ===
 
Con la soluzione indicata qui sopra, il sistema Guest riesce a navigare in Internet, ma non riesce ad accedere alle risorse del proprio host. La maniera più facile per configurare qemu in modo che possa fare entrambe le cose, è quella di installare vde e usare tun/tap con un bridge.
 
Prima di iniziare, dovete verificare che il vostro kernel supporti i seguenti moduli:
  tun: "Network device support" -> "Universal TUN/TAP device driver support"
  IP masquerade: "Networking options" -> "IP: Netfilter Configuration"
  bridging: "Networking options" -> "802.1d Ethernet Bridging"
 
e dovete installare il pacchetto bridge-utils:
<pre>
apt-get install bridge-utils
</pre>
 
[http://vde.sourceforge.net Vde] sta per Virtual Distributed Ethernet ed è un programma open source che vi permette di creare un network virtuale. Noi lo utilizzeremo per far fare in modo che il sistema Guest veda se stesso come un'unità distinta dal sistema host e possa colloquiare con questi.
 
Per quel che ne so io, non esiste (ancora) un pacchetto deb già pronto per l'uso, ma per installare vde sono sufficenti poche righe:
<pre>
wget http://puzzle.dl.sourceforge.net/sourceforge/vde/vde-1.5.9.tar.gz
tar -xvzf vde-1.5.9.tar.gz
cd vde-1.5.9
./configure
make
make install
</pre>
 
Una volta fatto questo, siete pronti per configurare tun e il bridge:
 
<pre>
vde_switch -tap tun0 -daemon
chmod 777 /tmp/vde.ctl
 
ifconfig eth0 down
brctl addbr br0
ifconfig eth0 0.0.0.0 promisc up
ifconfig tun0 0.0.0.0 promisc up
#l'IP qui sotto è quello del computer host; modificatelo per adeguarlo alle vs esigenze
ifconfig br0 192.168.0.200 netmask 255.255.255.0 broadcast 192.168.0.255 up
 
brctl stp br0 off
brctl setfd br0 1
brctl sethello br0 1
brctl addif br0 eth0
brctl addif br0 tun0
#questo invece è l'indirizzo IP del gateway
route add default gw 192.168.0.1
</pre>
 
NB: Una volta verificato che tutto funziona, queste istruzioni vanno inserite in uno script in modo da essere eseguite automaticamente all'accensione del computer
qui ne trovate uno piuttosto grezzo: [http://www.itaca.coopsoc.it/download/sources/vde_qemu vde_qemu], che va salvato in /etc/init.d. Dopodiché: <pre>chmod u+x /etc/init.d/vde_qemu
update-rc.d -n vde_qemu defaults 90</pre>
 
 
Ora tutto è pronto per lanciare qemu, con l'ultima avvertenza che dovete usare l'apposito wrapper vdeqemu:
<pre>
vdeqemu -hda disk.img -localtime
</pre>
 
Potete utilizzare tutte le opzioni di qemu, fuorché -user-net, che disattiverebbe tun.
 
Ora il sistema guest dovrebbe accedere a tutte le porte del sistema host, in maniera totalmente trasparente: da risorse di rete dovreste vedere il vostro server samba con le sue partizioni; dal browser dovreste accedere alle pagine del vostro server web, etc. etc.
 
=== PATCH PER WINDOWS ===
 
Per quanto riguarda l'utilizzo della CPU, a quanto pare
Windows 9x non fa un uso corretto della istruzione CPU HLT e
quindi spara la cpu a 100% quando è in idle (non fa nulla) e
invece la usa regolarmente quando è sotto "sforzo", paradossalmente
infatti, se viene utilizzata la cpu di qemu l'utilizzo di
cpu si abbassa su linux in proporzione.
 
la patch puo' essere scaricata qui, va installata sul Win9x GUEST.
 
[http://klingon.homelinux.net/files/amnhltm.zip http://klingon.homelinux.net/files/amnhltm.zip]
 
 
Link utili (in inglese):
 
*[http://ubuntuforums.org/showthread.php?t=39513 http://ubuntuforums.org/showthread.php?t=39513]
*[http://fabrice.bellard.free.fr/qemu/index.html http://fabrice.bellard.free.fr/qemu/index.html]
*[http://fabrice.bellard.free.fr/qemu/qemu-doc.html http://fabrice.bellard.free.fr/qemu/qemu-doc.html]
*[http://www.debian-administration.org/?article=40 http://www.debian-administration.org/?article=40]
*[http://oui.com.br/n/content.php?article.21 http://oui.com.br/n/content.php?article.21]
*[http://www.carlsonhome.net/computer_help_log.php http://www.carlsonhome.net/computer_help_log.php]
 
--
[[Utente:Themonkey|Themonkey]] 20:31, Ago 19, 2005 (EDT)
The_monk_ey ( skype: the_monk_ey )
2

contributi