3 581
contributi
Nessun oggetto della modifica |
m (ha spostato Virtualizzazione - user mode linux a Old:Virtualizzazione - user mode linux) |
||
(14 versioni intermedie di 5 utenti non mostrate) | |||
Riga 1: | Riga 1: | ||
{{Old}} | |||
==Introduzione== | |||
[http://user-mode-linux.sourceforge.net/ User Mode Linux(UML)] è un metodo sicuro per provare nuove versioni del kernel Linux e processi. Si possono far girare programmi difettosi (buggy), fare esperimenti con kernel nuovi e distribuzioni nuove, si può mettere mano alle parti più "intime" di un sistema Linux senza intaccare il sistema che realmente sta girando sulla macchina. | |||
UML fornisce una macchina virtuale che può avere più risorse fisiche e programmi virtualizzati della macchina-sistema reale. Lo spazio disco delle macchine virtuali è contenuto in singoli file sul disco fisso. | |||
Si può assegnare alla macchina virtuale solo l'hardware di cui si ha bisogno. Con accessi limitati, niente di ciò che gira sulla macchina virtuale può cambiare o danneggiare il sistema fisico reale o il suo software. | |||
{{Box | Note |Il tutto è stato eseguito su '''testing/Etch'''. Da adesso in poi mi riferirò a ''user mode linux'' con il nome '''UML''', alla macchina fisica con il nome ''host'' e alla macchina virtuale con ''ospite''}} | |||
==Installazione== | |||
Per avere UML all'opera dobbiamo ricompilare il kernel con la '''SKAS'''(''Separate Kernel Address Space'') patch che si trova già nei [[repository]]: | |||
<pre> | |||
# apt-get install linux-patch-skas | |||
$ cd /usr/src/linux | |||
$ make-kpkg clean | |||
$ make-kpkg --added-patches skas --rootcmd fakeroot --append-to-version -skas --initrd --config menuconfig kernel_image | |||
</pre> | |||
In "''Processor type and feature''" troverete due opzioni in più: | |||
<pre> | |||
[ ] /proc/mm support | |||
[ ] Make UML childs /proc/<pid> completely browsable | |||
</pre> | |||
Settateli e compilate il kernel, alla fine della compilazione installate il pacchetto e riavviate. | |||
Una volta riavviato installiamo alcuni software: | |||
<pre> | |||
# apt-get source user-mode-linux # da utente | |||
# apt-get install user-mode-linux-doc uml-utilities | |||
</pre> | |||
Il pacchetto user-mode-linux contiene i sorgenti del kernel patchati per diventare degli eseguibili UML. | |||
User mode linux ha bisogno di un kernel modificato e patchato per essere eseguibile dall'utente (user-space). | |||
Il kernel che risiede su host sarà un vero e proprio avviabile con opzioni da riga di comando simili a quelle per bootare un kernel, per avere i moduli sulla immagine dovrete montarli con hostfs (il kernel di default è un monolite che boota dando solo qualche warning su moduli non trovati e non ha hostfs attivato). | |||
Da <code>'''/usr/share/doc/user-mode-linux/README.Debian'''</code>: | |||
Compilare un pacchetto kernel UML. | |||
Devi avere apt configurato per poter scaricare i sorgenti dei pacchetti.<br/> | |||
Ad esempio: | |||
<pre>deb-src http://it.debian.org/debian main contrib</pre> | |||
<pre> | |||
# apt-get source user-mode-linux | |||
</pre> | |||
Puoi farlo con fakeroot la doc originale è sbagliata ;D provare per credere | |||
<pre> | |||
$ cd user-mode-linux-UMLVERSION | |||
# debian/rules unpack | |||
</pre> | |||
Oppure, decomprimi un altro sorgente e aggiorna kernel_version in debian/rules | |||
<pre> | |||
# debian/rules patch | |||
</pre> | |||
Oppure, applica UML patch a mano e aggiusta patch-stamp: | |||
<pre> | |||
$ cd kernel-source-KVERSION | |||
</pre> | |||
Potete anche scegliere di fare solo moduli e vmlinux, la immagine bz non mi serve ad altro che backup, sconsiglio di usare initrd. | |||
<pre> | |||
$ make defconfig ARCH=um && make [menu,x]config ARCH=um # make all ARCH=um | |||
</pre> | |||
Tutti i comandi makefile devono includere ARCH=um | |||
<pre> | |||
$ cd .. | |||
$ dpkg-buildpackage -rfakeroot -nc -uc | |||
</pre> | |||
Bene ora siete pronti a installarlo: | |||
<pre> | |||
# dpkg -i ../user-mode-linux_2.n.nn-1um-2_i386.deb | |||
</pre> | |||
Avete la possibilità di montare lo stesso sistema con host fs. |
contributi