deb-on-air logo
Actualisé le 02/03/2007

Grub

Grub, pour "Grand Unified Boot Loader", autrement dit Grand Chargeur de Démarrage, est un outil très puissant qui va vous permettre de démarrer les systèmes d'exploitation de votre ordinateur, éventuellement en entrant des options spéciales.

Vous gagnerez à lire le Manuel en français de Grub, qui vous détaillera les nombreuses possibilités d'application du logiciel (permettre aux utilisateurs masochistes et avertis l'installation de plusieurs versions de Windows sur un même disque dur, en cachant des partitions et en trompant les systèmes en question sur leurs adresses, par exemple).

GNU/linux a besoin d'un tel programme de démarrage du fait qu'étant un système modulaire largement paramétrable, son usage permette d'opérer à la volée des changements tels que la mise-à-jour du noyau Linux et le lancement immédiat du système à partir du nouveau noyau, et plein d'autres réglages impossibles à réaliser avec d'autres systèmes. Son installation permet aussi de pouvoir aisément démarrer au choix Windows ou GNU/linux sur machine embarquant ces deux systèmes.

Grub se décompose en deux parties logicielles :

Configuration de Grub

Grub, contrairement à GNU/linux, ne tient pas compte du standard de vos disques durs et les numérote tous 'hd' les uns après les autres dans l'ordre de préférences de démarrage assigné par les BIOS modernes.

Contrairement à Linux, Grub numérote les partitions de disque en commençant par 0. Ainsi (hd0,0) dans Grub signifie-il la même chose que hda1 (si l'on est en ATA) ou sda1 (si l'on est en SATA ou SCSI) dans linux. C'est tout simplement la première partition du premier disque démarrable de la machine.

Grub numérote tout à partir du Zéro. Nous le verrons.

Grub distingue les partitions primaires des partitions logiques. Suivant son principe de numérotation à partir du Zéro, il numérotera les partitions primaires de 0 à 3, et les partitions logiques à partir de 4. Ainsi par exemple sda5 pour Linux, pourra être (hd0,4) pour Grub.

Le fichier principal auquel vous aurez le plus affaire pour configurer Grub est /boot/grub/menu.lst

Ce fichier est un simple fichier de texte, éditable dans n'importe quel éditeur de texte (nano, kate, gvim, etc.) par l'administrateur de la machine (root).

Vous pouvez lire ce fichier en tant qu'utilisateur. Par exemple en mode console, en lançant la commande:

$ cat /boot/grub/menu.lst

Les lignes qui le composent commençant par # sont des lignes de commentaires. Ce signe # dit au système de ne pas interprêter leur contenu comme des commandes.
Cette règle de syntaxe distingant le commentaires prévaut pour tous les fichiers de configuration sous GNU/Linux. Les lignes "actives" de configuration sont donc celles n'étant pas commentées.
Rappel
Pour obtenir le signe # entrez au clavier :
Touche Alt Gr + Touche 3 dièse

Nous nous intéresserons surtout à deux fonctionnalités d'un intérêt immédiat pour vous : choisir quel système vous préférez voir démarrer par défaut et régler le délai de chargement automatique du système à démarrer par défaut (en bref, régler le délai de compte-à-rebours).

Les entrées

La ligne:

default 0

définit l'entrée par défaut qui sera activée. Bien sûr dans grub, 0 signifie que la première entrée sera activée par défaut.

Ces entrées sont énumérées à la fin du fichier, et c'est donc l'ordre de leur énumération (en comptant à partir du zéro pour la première d'entre elles) qui servira de repère pour choisir celle qui s'activera dans Grub à la fin du compte-à-rebours, sans intervention des utilisateurs.

Chaque entrée comporte un titre (que vous pouvez changer indifféremment pour le rendre plus explicite). Puis l'entrée est définie sur quelques lignes :
Une ligne 'root', indique à Grub dans sa syntaxe - exemple (hd0,0) - le secteur du périphérique où se trouve l'ensemble des éléments permettant de lancer un système d'exploitation.
Une ligne 'kernel', qui indique en syntaxe GNU/linux où se trouve le noyau kernel. Cette ligne permet également d'adresser des paramètres à ce noyau, notamment pour charger ou désactiver certains de ses modules.
Une ligne 'initrd', qui spécifie l'emplacement de initrd, la commande de lancement du premier 'démon' linux, processus père de tous les processus du système GNU/linux.

Ce qui donne par exemple :

titleDebian GNU/Linux, kernel 2.6.19.1-smp-2
root(hd0,5)
kernel/boot/vmlinuz-kernel 2.6.19.1-smp-2 root=/dev/hda6 ro quiet vga=791
initrd/boot/initrd.img-2.6.19.1-smp-2

Pour démarrer GNU/Linux, GRUB doit savoir où est situé le noyau à booter et l'emplacement du fichier initrd.

L'emplacement de la partition root est spécifié en syntaxe Grub.

Le chemin vers le noyau et le fichier initrd sont écrits dans la syntaxe GNU/Linux.

L'entrée pour un éventuel 'Windows' utilise une syntaxe un peu différente, qui appelle l'exécutable de démarrage spécifique à ce type de système, auquel Grub laisse la main :

titleWindows 95/98/ME (hdb1)
root(hd0,0)
makeactive
chainloader +1

Dans cette entrée, il est indispensable que la syntaxe de la ligne 'root' soit la bonne et pointe vers le bon disque dur et la bonne partition. Ici dans l'exemple, le Windows quelconque est sensé se trouver sur la première partition du premier disque dur (pour le BIOS) de l'ordinateur

Après une installation de Sidux, figurent généralement deux entrées ou trois, si vous utilisez Windows. Suivant la numérotation Grub, dans un exemple où Windows est la troisième entrée valide, il suffira de remplacer default 0 par

default 	2

pour booter par défaut sous Windows.

Compte-à-rebours

Le délai du compte-à-rebours se fixe en secondes en haut du fichier à la ligne :

timeout		5

Il suffit d'augmenter ou de diminuer la valeur en secondes pour changer à votre convenance, le délai d'activation de l'entrée par défaut. Si vous entrez 0, le compte-à-rebours sera désactivé et Grub attendra que vous validiez l'entrée voulue en appuyant sur "Entrée" démarrer un système d'exploitation.

Pour ajouter des entrées à Grub

L'aide des notes que vous aurez prises au moment de votre installation vous sera certainement très utile pour vous dépatouiller avec le chargeur de vos systèmes d'exploitation ; en particulier pour bien repérer et indiquer les correspondances d'adresses des partitions appelées dans les syntaxes respectives de Grub et de GNU/linux.

Grâce à Grub, vous pourrez aisément installer plusieurs distributions de GNU/Linux et configurer le seul fichier de texte /boot/grub/menu.lst en ajoutant toutes les entrées nécessaires (copiés-collés de menu.lst des installations antérieures pour démarrer l'une ou l'autre de ces distributions.

Attention ! si vous déplacez matériellement le disque racine d'un système GNU/Linux, entrainant le changement de son adresse de périphérique /dev, celui-ci, même en changeant les entrées de Grub, ne pourra plus démarrer !

C'est très pratique pour, par exemple, garder un système robuste tout en se donnant la possibilité d'en tester d'autres plus innovants, ou des versions orientées vers certaines applications multimédias (mao notamment), qui ne peuvent pas toujours être adaptées à des travaux de production bureautique ou autre, à rester polyvalentes, ou qui demeureraient encore trop instables tout en valant la peine d'être essayées.

Séparez bien vos entrées comme le sont celles d'origine de vos fichiers. Sauvegardez éventuellement quelque part, le menu.lst originel, afin de pouvoir en le restaurant, remédier instantannément à des erreurs.

Voici un exemple de double-entrée valide :

titleAncien Systeme, kernel x.x.x.machin-bidule
root(hd0,5)
kernel/boot/vmlinuz-x.x.x.machin-bidule root=/dev/hda6 ro quiet vga=791
initrd/boot/initrd.x.x.x.machin-bidule
titleNouveau Systeme, kernel x.x.x.machin-chose
root(hd1,0)
kernel/boot/vmlinuz-x.x.x.machin-chose root=/dev/hdc1 ro quiet vga=791
initrd/boot/initrd.x.x.x.machin-chose

Comme on peut le constater :

Difficultés

Le MBR

Il est important de savoir que tout disque dur est susceptible d'héberger le MBR. Par Master Boot Record, il est entendu le premier secteur du premier disque appelé par le BIOS. Les ennuis commencent lorsque par erreur, après avoir installé un nouveau disque ou modifié la configuration du BIOS, le MBR appelé n'est pas celui sur lequel l'amorçage de grub a été installé ou que l'amorçage par le MBR n'interroge pas le bon disque pour trouver /boot/grub et retourne une erreur. Cela a beau être complètement logique, cela reste très décourageant pour qui débute. Pourtant, avec un peu d'attention cela se résoud facilement.

Le plus important dans un multi-démarrage avec Windows reste que le disque sur lequel se trouve ce système soit réellement celui paramétré en priorité pour démarrer dans le BIOS.

Si Grub ne parvient même pas à afficher son écran de choix, et renvoit une erreur 18, c'est que le stage 1 n'a pas réussi à trouver le stage 2 pour le charger. C'est le cas le moins ennuyeux qui signifie qu'au moins Grub est bien installé sur le MBR du bon disque de l'ordinateur. L'erreur provient probablement de mauvaises indications dans les entrées 'root' du fichier 'menu.lst'. Dans ce cas démarrez en mode live-CD et en tant qu'administrateur, puis éditez simplement le fichier menu.lst de l'installation sur disque dur en y corrigeant vos entrées.

Si vous n'obtenez rien dutout, pas même un retour d'erreur de Grub, c'est qu'il s'est installé sur un MBR qui n'est pas celui du premier disque dur appelé par le BIOS.

Si suite à une erreur de manipulation quelconque c'est sur un autre disque maître que Grub a été installé il faudra simplement réinstaller sa partie 'amorçage' au bon endroit avec le Live CD de Sidux, en lui demandant de pointer vers le bon répertoire /boot/grub de l'installation initiale ; pour ce faire on utilise un script, grub-install.sh, qui utilise la syntaxe GNU/Linux et non celle de Grub pour désigner les disques, permettant d'être sûr du moment qu'on lui spécifie les adresses correctes, de remédier au problème.

GNU/Linux utilisant toujours une syntaxe très claire et dépourvue d'ambiguité pour identifier les partitions, pourra se trouver reconnecté facilement à son chargeur de démarrage. C'est la procédure que nous décrivons dans ce qui suit.

Même si l'on n'est pas débutant, la manipulation de Grub peut causer des soucis occasionnels. Car dans certains cas il identifie les contrôleurs disques dans un ordre différent de celui qui apparaît au démarrage de l'ordinateur. C'est le cas notamment lorsqu'on dispose d'une installation SATA-IDE avec un contrôleur IDE additionnel. Dans tous les cas, la manipulation de GRUB conduit à remédier aux problèmes rencontrés, mais il fauta parfois beaucoup de patience ! il faut alors régler le bon ordre des numéros d'entrées de partitions (systaxe GRUB) dans /boot/grub/menu.lst.
Ne réinstallez pas sous prétexte de rencontrer ce problème, car il ne serait pas réglé pour autant ! Votre système est opérationnel, et seule la bonne configuration de Grub permettra d'y remédier...

Le passage à la dénomination des partitions en utilisant un identifant permanent dans Grub, vous permet de solutionner définitivement grâce au UUID vos problèmes d'identification des partitions.

Sidux utilise par défaut l'UUID dans GRUB et fastab pour identifier vos partitions.

Réinstaller Grub

Sur le MBR

Pour réinstaller Grub sur le MBR, démarrez le CD-ROM de Sidux, puis ouvrez une console administrateur (root shell). Montez tout d'abord la partition où se trouve le répertoire /boot/grub que vous voulez reactiver (votre partition racine, si vous n'avez pas de partition /boot ; dans l'exemple d'installation des chapitre précédents ce serait /dev/hda6) :

# mount /dev/hda6 /media/hda6

Vous allez entrer :

# grub-install --root-directory=/media/hda6 /dev/xda

où l'adresse de votre répertoire racine est à adapter à partir de l'exemple donné
où l'expression /dev/xda est elle aussi à adapter pour désigner le périphérique sur le MBR duquel vous souhaitez installer grub (sda ou hda suivant le cas). Dans ce dernier argument, on ne précise évidemment pas de nombre : nous pointons vers l'ensemble du périphérique et non vers une partition.

Cette procédure reste valide pour réinstaller Grub à tout moment, soit suite à une réinstallation de Windows qui l'aurait forcément effacé du MBR, soit pour des besoins liés à vos choix de configuration.

Rappel : Pour ce qui concerne ensuite le réglage de l'erreur décrite en fin de section précédente, vous chercherez en priorité les incohérences d'adresses que Grub peut garder dans les lignes root des entrées Linux. Il suffit souvent dans ce cas, Grub ne distinguant pas IDE de SATA ou SCSI, de remplacer dans les entrées de /boot/grub/menu.lst une adresse root (hd0,x) par (hd1,x) ou l'inverse, pour que tout rentre dans l'ordre. Réflechissez à ce que vous avez changé pour corriger l'erreur de manière pertinente.
Vous comprendrez sûrement l'intérêt d'utiliser ici le script grub-install : à la différence du shell grub, ce script GNU/linux identifie en syntaxe claire le support de destination du stage 1 de Grub. Ainsi installé sur, par exemple, /dev/sda, on prévient une erreur assez fréquente liée à l'architecture de Grub.

Effacer Grub du MBR

Pour simplement effacer Grub du MBR, entrez dans une console la commande administreur :

# lilo -M /dev/Xda -s /dev/null

(où vous remplacerez "X" dans l'adresse de périphérique, par le bon code de type de contrôleur du premier disque maître de l'ordinateur.)

Créer une disquette de démarrage GRUB

Lors du processus d'installation dans l'onglet "GRUB" de l'installeur Sidux vous avez la possibilité de créer une disquette de démarrage. Nous décrivons ici comment la créer après cette installation.

Voici la procédure étape par étape :

  1. Formatez une disquette :

    # fdformat /dev/fd0
  2. Créez un système de fichier sur cette disquette (Ext2 ou vfat) :

    # mkfs -t ext2 -c /dev/fd0u1440
    ou
    # mkfs.vfat /dev/fd0u1440
  3. Montez la disquette :

    # mount /dev/fd0 /floppy
  4. Créez l'arborescence de répertoires appropriée sur la disquette :

    # mkdir -p /floppy/boot/grub
  5. Copiez les fichiers nécessaires sur la disquette :

    # cp /boot/grub/stage1 /floppy/boot/grub
    # cp /boot/grub/stage2 /floppy/boot/grub
  6. Pour être en mesure de démarrer les bons systèmes depuis les bonnes partitions, vous devez ensuite copier votre menu.list sur la disquette :

    # cp /boot/grub/menu.lst /floppy/boot/grub/menu.lst
  7. Démontez ensuite la disquette :

    # umount /dev/fd0
  8. Et pour finir lancez le shell GRUB pour achever la réinstallation de GRUB sur la disquette :

    # grub
     grub> root (fd0)
     grub> setup (fd0)
     grub> quit

Vous venez de créer une disquette de démarrage GRUB qui permettra de lancer votre ordinateur.

Depuis le Live-CD la procédure est un peu différente. Il faut bien entendu en préalable à l'étape 7, monter la partition racine sur laquelle est située GRUB (dans cet exemple /dev/sda6) :

# mount /dev/sda6 /media/sda6

depuis laquelle nous copions notre fichier /boot/grub/menu.lst vers la disquette :

# cp /mnt/sda6/boot/grub/menu.lst /floppy/boot/grub/menu.lst

Démontez ensuite votre partition racine :

# umount /dev/sda6

Puis effectuez sur la disquette les étapes 7 et 8 du descriptif précédent.

Installer plusieurs versions de GNU/Linux.

Si vous avez beaucoup d'espace disque et l'esprit curieux, tenter d'installer plusieurs versions de GNU/Linux pourrait vous séduire.

Au moyen des explications précédentes, vous devriez être en mesure d'adapter GRUB afin qu'il permette d'activer toutes les entrées valides vers les systèmes présents dans votre machine :
on combine les entrées de différents fichiers "menu.lst" en un seul et on fait pointer la partie MBR de GRUB vers le répertoire /boot/grub où la menu.lst composée est située. Mais...

Il est très important de ne pas chercher à partager le même répertoire /home entre différentes distributions de GNU/Linux. Si vous tentez cela avec Sidux par exemple, vous avez toutes les chances de ravager toutes les préférences de vos logiciels ainsi que, c'est le moindre mal, de provoquer un échec du démarrage de KDE ou d'autres environnements fenêtrés, qui stockent dans des sous-répertoires cachés des répertoires utilisateurs des paramètres spécifiques pour leur configuration.
Par contre, plusieurs installations de GNU/linux peuvent très bien partager le même répertoire /tmp.

Installer Sidux sur un disque dur USB.

Des étapes particulières sont à ajoûter à la procédure normale d'installation, si vous souhaitez réaliser celle-ci sur un disque dur USB.

On démarre l'installation normalement en choisssant la (ou les) partition(s) du Disque Dur USB où nous voulons installer. (Dans cet exemple, nous parlerons de "sda1" mais la procédure est valable pour toute adresse de partition pertinente du disque USB)

Les changements suivants doivent ensuite être opérés dans une console administrateur (root) :

# mount /dev/sda1 /media/sda1
# mount --bind /proc /media/sda1/proc
# chroot /media/sda1
# echo ehci-hcd >> /etc/mkinitrd/modules
# echo usb-storage >> /etc/mkinitrd/modules

Dans le fichier /etc/mkinitrd/mkinitrd.conf la variable DELAY doit être fixée à 10 par la commande :

# perl -pi -e 's/^(DELAY)=.*/\1=10/' /etc/mkinitrd/mkinitrd.conf>
# perl -pi -e 's/mkext2fs/mkcramfs/' /etc/mkinitrd/mkinitrd.conf

Nous créons alors une nouvelle image initrd :

# mkinitrd -o /boot/initrd.img-$(uname -r)

(Les erreurs concernant les modules manquants peuvent être ignorées)

Il faut ensuite adapter le fichier /boot/grub/menu.lst. Pour ce faire nous examinons le fichier /boot/grub/device.map :

# cat /boot/grub/device.map
 (hd0) /dev/hda
 (hd1) /dev/sda

et en fonction des indications fournies nous adaptons le fichier /boot/grub/menu.lst pour y ajoûter le bon disque dur :

# perl -pi -e 's/hd1/hdX/' /boot/grub/menu.lst
# perl -pi -e 's/hd0/hd1/' /boot/grub/menu.lst
# perl -pi -e 's/hdX/hd0/' /boot/grub/menu.lst

Nous voilà en mesure de démarrer notre installation sur disque USB.

Installation avec Qemu fonctions expertes

  1. Créez une image-disque pour qemu
  2. Démarrez sur l'image iso avec qemu
  3. Installez sur l'image-disque.

Pour faire tourner Qemu vous aurez sûrement besoin d'une image-disque. une image-disque est un fichier qui permet de sauvegarder les données d'un disque dur émulé.

pour ce faire, utilisez la commande :

qemu-img create -f qcow sidux.qcow 3G

Afin de créer le fichier-image appelé "sidux.qcow", le paramètre "3G" spécifie l'espace d'occupation du disque ; dans le cas présent 3 Gigaoctets. Vous pouvez aussi utiliser le suffixe M pour le spécifier en Mégaoctets (par exemple "256M"). Vous n'avez pas à trop vous soucier de l'occupation de cet espace, car le format qcow implique la compression de l'image de manière à ce que l'espace non-occupé n'accroisse pas le volume réel du fichier.

Installer le nouveau système d'exploitation

C'est le première fois que vous utiliserez l'émulateur Qemu. Vous devez garder en tête que lorsque vous cliquez sans le fenêtre de Qemu, le pointeur de votre souris est capturé. Pour le libérer de cette fenêtre, entrez au clavier :

touche Control + touche Alt

Si vous avez besoin d'utiliser une disquette de démarrage, lancez Qemu par :

qemu -floppy sidux.iso -net nic -net user -m 512 -boot d sidux.qcow

Si votre CD-ROM est démarrable, lancez Qemu par :

qemu -cdrom sidux.iso -net nic -net user -m 512 -boot d sidux.qcow

À présent installez Sidux de la même manière que si vous le faisiez sur un vrai disque dur.

Utiliser le système

Pour utiliser le système, lancez simplement :

qemu [image_disque]

Une bonne idée est d'utiliser des images overlay. de cette façon vous pouvez une seule fois créer une image-disque, puis demander à Qemu de stocker les changements dans un fichier qui y soit externe. Ceci vous permet de prévenir d'aventuelles instabilités puisque cela facilite le retour à la situation initiale.

Pour créer une image overlay, entrez :

qemu-img create -b [[base''image]] -f qcow [[overlay''image]]

Substituez l'image-disque comme image de base (dans notre cas win.qcow) après quoi vous pouvez lancer Qemu par :

qemu [overlay_image]

L'image originelle restera intègre. Évidemment, l'image de base ne peut être ni renommée ni déplacée, l'overlay devant utiliser son chemin absolu complet.

Utiliser une véritable partition comme partition primaire d'une image-disque

On peut parfois vouloir utiliser une de ses partitions système depuis Qemu (par exemple, pour pouvoir démarrer alternativement sur votre système réel ou qemu utilisant une partition déterminée comme racine). Vous pouvez le faire en utilisant le RAID logiciel en mode linéaire (vous aure besoin du pilote noyau linear.ko) et un périphérique loopback : l'astuce consiste à adresser dynamiquement un MBR sur la partition réelle que vous comptez intégrer à l'image-disque qemu.

Supposez que vous disposiez d'une partition non-montée /dev/hdN doté d'un sysème de fichiers que vous voudriez pouvoir faire partie d'une image-disque Qemu.

Dans un premier temps, créez un petit fichier pour héberger le MBR :

dd if=/dev/zero of=/chemin/du/mbr count=32

Ici un fichier de 16 KB (32 x 512 octets) est crée. Il est important de ne pas le faire trop petit (même si le MBR n'a besoin que d'un seul bloc de 512 octets), car plus petit il sera et plus le hachage du RAID logiciel sera étroit, ce qui peut avoir un impact sur sa performance. Après ça, configurez un périphérique loopback dans le MBR :

losetup -f /chemin/du/mbr

Supposons que le périphérique obtenu soit /dev/loop0, si nous n'avons pas auparavant utilisé d'autres loopbacks. L'étape suivante consistera à créer la "fusion" MBR + image-disque /dev/hdN en utilisant le RAID logiciel :

 modprobe linear
 mdadm --build --verbose /dev/md0 --chunk=16 --level=linear --raid-devices=2 /dev/loop0 /dev/hdaN

La résultante /dev/md0 est ce que vous utiliserez en tant qu'image-disque brute Qemu (n'oubliez pas d'assigner les permissions afin que l'émulateur puisse y accéder). Et la dernière étape (perverse d'une certaine manière) va consister à régler la configuration du disque (sa géométrie et sa table de partitions) de manière à ce que la partition primaire /dev/hdaN) commence au point exact où se termine MBR dans /dev/md0 (un offset d'exactement 16 * 512 = 16384 octets dans notre exemple).

Faites en sorte d'utiliser fdisk sur la machine hôte et non l'émulateur : les routines d'auto-détection de qemu produisent souvent des offsets ne tombant pas au Kilobit exact (du genre 31.1 KB, comme décrit plus haut) impossibles à gérer par le code du RAID logiciel. Comme ceci, depuis l'hôte :

 fdisk /dev/md0

Créez-y une unique patition primaire correspondant à /dev/hdaN, jouez de la commande secteur du menu xpert jusqu'à ce que son premier cylindre (où commence la première partition), corresponde à la taille du MBR. Pour finir écrivez (write) le résultat dans le fichier ; et voilà. À cette étape vous disposez d'une partition que vous pourrez monter directement depuis votre hête comme depuis l'image Qemu :

qemu -hdc /dev/md0 [...]

Vous pourrez bien sûr configurer n'importe quel chargeur de démarrage sur cette image-disque en utilisant Qemu, du moment où la partition /boot/hdaN contient l'outillage nécessaire.

Utiliser le module d'accélération de Qemu

Les développeurs de Qemu ont crée un module optionnel de noyau qui accélère l'émulation jusqu'à des vitesses proches de l'utilisation standard. Ce module se charge via l'option :

major=0

Pour automatiser la création du dispositif /dev/kqemu, la commande suivante :

echo "options kqemu major=0" >> /etc/modprobe.conf

Ceci évitera à modeprobe.conf de vérifier chaque fois que l'option de module soit spécifiée à chaque lancement :

qemu [...] -kernel-kqemu

Ceci permet la virtualisation intégrale et améliore considérablement la rapidité d'exécution.

Pour activee qemu :

qemu -cdrom /tmp/pkg/sidux-debug.iso -net nic -net user -m 512