$cat /etc/apt/sources.list
deb http://ftp.u-picardie.fr/mirror/debian/ etch main deb-src http://ftp.u-picardie.fr/mirror/debian/ etch main deb-src http://ftp.u-picardie.fr/mirror/debian/ testing main deb-src http://ftp.u-picardie.fr/mirror/debian/ sid main deb http://security.debian.org/ etch/updates main deb-src http://security.debian.org/ etch/updates main # flash 64 deb http://www.dipconsultants.com/debian etch main # SID deb http://ftp.u-picardie.fr/mirror/debian/ sid main
$ cat /etc/apt/preferences
Package: * Pin: release a=stable Pin-priority: 900 Package: * Pin: release a=etch-backports Pin-priority: 700 Package: * Pin: release a=testing Pin-priority: 300 Package: * Pin: release a=unstable Pin-priority: 50
$ apt-get update
⇒ si pb « ran out of room »
$ touch 99local APT::Cache-Limit 100000000; $ mv 99local /etc/apt/apt.conf.d/
$ ls /var/lib/apt/lists/
ftp.u-picardie.fr_mirror_debian_dists_etch_main_binary-amd64_Packages ftp.u-picardie.fr_mirror_debian_dists_etch_main_source_Sources ftp.u-picardie.fr_mirror_debian_dists_etch_Release ftp.u-picardie.fr_mirror_debian_dists_etch_Release.gpg ftp.u-picardie.fr_mirror_debian_dists_sid_main_binary-amd64_Packages ftp.u-picardie.fr_mirror_debian_dists_sid_main_source_Sources ftp.u-picardie.fr_mirror_debian_dists_sid_Release ftp.u-picardie.fr_mirror_debian_dists_sid_Release.gpg ftp.u-picardie.fr_mirror_debian_dists_testing_main_source_Sources ftp.u-picardie.fr_mirror_debian_dists_testing_Release ftp.u-picardie.fr_mirror_debian_dists_testing_Release.gpg lock partial security.debian.org_dists_etch_updates_main_binary-amd64_Packages security.debian.org_dists_etch_updates_main_source_Sources security.debian.org_dists_etch_updates_Release security.debian.org_dists_etch_updates_Release.gpg www.dipconsultants.com_debian_dists_etch_main_binary-amd64_Packages www.dipconsultants.com_debian_dists_etch_Release www.dipconsultants.com_debian_dists_etch_Release.gpg
$ COLUMNS=200 dpkg -l 'kvm'
⇒ astuce pour largeur colonnes
$ cd ~ && apt-get source kvm-source
$ apt-get install make bzip2 module-assistant kvm-source build-essential linux-headers-2.6.18-6
$ apt-get install -t unstable …
⇒ pour installer un paquet présent dans toutes les versions (stable, testing, unstable…)
$ m-a prepare && m-a a-i kvm
$ cd ~ && apt-get source kvm
$ cat kvm_66+dfsg-1.dsc
Build-Depends: debhelper (>= 5), pkg-config, quilt (>= 0.40), autotools-dev, bzip2, uuid-dev, zlib1g-dev, libsdl1.2-dev, libasound2-dev, libgnutls-dev, libncurses5-dev, nasm, texi2html, bcc, iasl, device-tree-compiler, etherboot [i386]
Astuce: « ctrl + flèche droite » pour passer d'un séparateur au suivant (ce déplacer plus vite dans la ligne de commande
$ apt-get install debhelper pkg-config quilt autotools-dev bzip2 uuid-dev zlib1g-dev libsdl1.2-dev libasound2-dev libgnutls-dev libncurses5-dev nasm texi2html bcc iasl device-tree-compiler etherboot
etherboot ⇒ non présent, device-tree-compiler ⇒ ppc, on va essayer sans
$ apt-get install debhelper pkg-config quilt autotools-dev bzip2 uuid-dev zlib1g-dev libsdl1.2-dev libasound2-dev libgnutls-dev libncurses5-dev nasm texi2html bcc iasl
$ cd kvm-66+dfsg/ && vi debian/control
⇒ on enlève les dépendances à problème Build-Depends: debhelper (>= 5), pkg-config, quilt (>= 0.40), autotools-dev, bzip2, uuid-dev, zlib1g-dev, libsdl1.2-dev, libasound2-dev, libgnutls-dev, libncurses5-dev, nasm, texi2html, bcc, iasl
Toujours dans le même répertoire
$ apt-get install devscripts && dch -n
⇒ changelog (dites ce que vous allez modifier ).
⇒ kvm (66+dfsg-1.1) (nom du paquet, par convention une modification ajout de .1)
$ make -f debian/rules binary
dtc -O dtb -I dts -o bamboo.dtb bamboo.dts make[1]: dtc : commande introuvable make[1]: *** [bamboo.dtb] Erreur 127 make[1]: quittant le répertoire « /home/marcolvm/KVMworkspace/kvm-66+dfsg/qemu/pc-bios » make: *** [build-arch-stamp] Erreur 2
dtc: dans ton c…? (bonne blague de Sylvain) :-p
$ apt-get source device-tree-compiler
$ apt-get build-dep device-tree-compiler
$ cd device-tree-compiler-1.1.0.dfsg/
$ dch -n
⇒ Changelog pour que tout soit fait proprement
$ make -f debian/rules binary
$ less debian/rules
⇒ pour culture perso
$ cd .. && dpkg -i device-tree-compiler_1.1.0.dfsg-1.1_amd64.deb
$ cd kvm-66+dfsg
$ make -f debian/rules binary && make -f debian/rules binary-indep
⇒ indep: création de tous les paquets qui ne dépendent pas de l'architecture sur laquelle on est
$ cd .. && dpkg -i kvm-data_66+dfsg-1.1_all.deb && dpkg -i kvm-source_66+dfsg-1.1_all.deb && dpkg -i kvm_66+dfsg-1.1_amd64.deb
⇒ on installe le tout
$ adduser $USER kvm
⇒ ajout de notre utilisateur dans le groupe kvm pour pouvoir lancer des machines virtuelles
⇒ faire un petit reboot si groupe root sur /dev/kvm
$ modprobe kvm-$ARCHITECTURE
⇒ on charge le module (kvm-intel pour nous)
$ man kvm
⇒ pour culture perso
$ id
⇒ connaître ses groupes (pour culture perso)
$ kvm -cdrom chemin.iso -m 764
⇒ ctrl + alt + f pour plein écran
kvm-img create hardy.img 8G
kvm -hda hardy.img -cdrom ubuntu-8.04-alternate-amd64.iso -boot d
kvm hardy.img