Comment puis-je démarrer dans un fichier ISO dans GRUB? Le fichier ISO se trouve sur une partition reiserfs et GRUB peut y accéder (déjà testé).
Comment puis-je démarrer dans un fichier ISO dans GRUB? Le fichier ISO se trouve sur une partition reiserfs et GRUB peut y accéder (déjà testé).
Réponses:
Le plus gros problème avec le démarrage d'un fichier ISO est que les ISO conçus pour être démarrés sont presque toujours conçus pour être démarrés à partir d'un CD . Comme expliqué sur le blog de Marco à propos de Grub 2 (c'est moi qui souligne):
GRUB peut lire les images ISO9660 ("iso"). Il peut par exemple charger les premiers secteurs et le démarrer. Mais la plupart des gens ne réalisent pas que «quoi alors? Que ferait le système d'exploitation chargé? Il cherchera probablement un CD-ROM qu’il ne trouvera pas et échouera.
Ainsi, le moyen le plus simple de démarrer à partir d'un fichier ISO aléatoire consiste à le charger dans un ordinateur virtuel (VirtualBox, VMware ou Virtual PC) en tant que CD virtuel et à l'initialiser à cet emplacement. Cela devrait presque toujours fonctionner, car pour la VM, ce n'est pas un fichier ISO, c'est un vrai CD sur du matériel CD.
Démarrer à partir d'un fichier ISO sur du métal nu est beaucoup plus difficile. La procédure à suivre dépend de la version de Grub que vous utilisez et les résultats peuvent varier en fonction de l’ISO utilisé et de la configuration de celui-ci. C'est pourquoi la plupart des outils de démarrage ISO depuis USB (Unetbootin, WinToFlash, etc.) extraient généralement le contenu de l'ISO sur le lecteur, car ils permettent ainsi d'accéder directement au disque sans créer de confusion pour le système d'exploitation démarré.
... pas certain. Si possible, les entrées de menu ressembleront probablement beaucoup à Grub4DOS, bien que je pense que la commande "map - hook" est une amélioration de Grub4DOS. Du côté positif, Grub a un support de système de fichiers plus étendu que Grub4DOS.
Une note sur Grub avec reiserfs (non confirmée) indique que vous devez "monter votre partition avec notail
pour que cela fonctionne".
Memdisk est une option. voir ci-dessous.
Grub4DOS propose une "émulation de CD" expérimentale qui fonctionne avec certaines ISO. Malheureusement, Grub4DOS ne lit que les systèmes de fichiers FAT32 / NTFS. Téléchargez Grub4DOS.
Voici un exemple d'entrée ( source ):
title fdfullcd.iso (0xFF)
find --set-root /fdfullcd.iso
map /fdfullcd.iso (0xFF)
map --hook
root (0xFF)
kernel /isolinux/data/memdisk
initrd /isolinux/data/fdboot.img
Soi-disant, l'ISO Win7 peut être démarré avec cette entrée :
title Windows 7
map (hd0,0)/win7.iso (hd32)
map --hook
chainloader (hd32)
Memdisk permet d’amorcer d’autres fichiers ISO :
title Boot Hardware Detection Tool from iso image (with 'iso' parameter)
kernel /memdisk iso
initrd /hdt.iso
Vous pouvez également utiliser un configurateur de menus tel que MultiBootISOs.exe de PenDriveLinux . Placez les images ISO sur le lecteur flash et exécutez l'utilitaire pour installer le chargeur de démarrage et configurer le menu de démarrage.
Voici un épisode de Hak5 sur l'installation de Grub4DOS.
Voici quelques exemples d'entrées Grub2. chainloader ne fonctionne pas pour démarrer une image ISO à l'heure actuelle, ces entrées doivent (1) utiliser le bouclage pour "monter" l'ISO et (2) ajouter quelque chose comme iso-scan ou findiso à la ligne linux spécifiant le fichier ISO.
Malheureusement, il n'y a pas de moyen générique de le faire. Chaque entrée de démarrage différente doit être personnalisée en fonction du contenu de l'ISO cible. La plupart des LiveCD Linux utilisent ISOLINUX en tant que chargeur de démarrage; recherchez le fichier isolinux.cfg et examinez cette entrée de démarrage pour voir ce qu’elle démarre habituellement.
Exemple d'entrées ( source ):
menuentry "Ubuntu Live 9.10 32bit" {
loopback loop /boot/iso/ubuntu-9.10-desktop-i386.iso
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/boot/iso/ubuntu-9.10-desktop-i386.iso noeject noprompt --
initrd (loop)/casper/initrd.lz
}
menuentry "Grml small 2009.10" {
loopback loop /boot/iso/grml-small_2009.10.iso
linux (loop)/boot/grmlsmall/linux26 findiso=/boot/iso/grml-small_2009.10.iso apm=power-off lang=us vga=791 boot=live nomce noeject noprompt --
initrd (loop)/boot/grmlsmall/initrd.gz
}
Si vous essayez de démarrer un LiveCD non-Linux, vous n’êtes peut-être pas chanceux. Encore une fois, Memdisk peut aider :
menuentry "Boot Hardware Detection Tool from iso" {
linux16 /memdisk iso
initrd16 /hdt.iso
}
Vous pouvez utiliser dd depuis le terminal pour écrire un fichier iso sur une partition. Faites attention, si vous utilisez dd mal, vous pouvez tout effacer. Cela devrait ressembler à ceci: dd if = Desktop / LinuxCDFile.iso of = / Path / To / Partition