#1 Le 19/09/2008, à 11:24
- nico.exe
fabriquer un iso bootable qui ne plante pas durant le setup.
bonjour à tous,
J'ai testé hier virtualbox... merveilleux
Dans mon boulot, je dois faire des cd "unattend" de windows avec les trucs de la boîte. Je connais bien la procédure car j'en ai fait beaucoup quand j'étais sous windows. Maintenant que je suis passé sous Ubuntu (dans une boîte pro-windows avec des collègues qui ne jurent que par C#, héhéhé ), j'éprouve quelques difficultés.
Avant j'utilisais nero pour créer une image iso bootable avec les paramètres suivants:
type d'émulation : disquette 1.44
image : (fichier boot de 2048 octet trouvé sur le net)
segment des secteurs : 07C0
nombre de secteurs chargés : 4
ensuite, je faisais un dragAndDrop avec les fichiers de mon cd, je lancais la gravure, je buvais un café et j'avais mon iso parfaitement générée.
Mais maintenant... avec ubuntu,
j'ai copier les dossiers contenant les fichiers de mes précieuses images sur mon pc en ubuntu (ext3 comme file system je crois). Pour faire les iso, j'ai compris ma misère en chipotant avec mkisofs . Mais attention j'arrive a obtenir qqe chose... voyez plutôt :
mkisofs -b boot.bin -hide boot.bin -hide boot.catalog -no-emul-boot -boot-load-size 4 -iso-level 4 -relaxed-filenames -D -V W2k3_SP2 -o ./Image/W2K3_SP2.iso ./Fichiers
voici les options utilisées (moi je ne retiens jamais trop bien ce genre de choses ) :
mkisofs [options] file...
Options:
-b FILE (-eltorito-boot FILE) = Set El Torito boot image name
-hide GLOBFILE = Hide ISO9660/RR file
-no-emul-boot = Boot image is 'no emulation' image
-boot-load-size = Set numbers of load sectors
-iso-level LEVEL = Set ISO9660 conformance level (1..3) or 4 for ISO9660 version 2
-relaxed-filenames = Allow 7 bit ASCII except lower case characters (violates ISO9660)
-D (-disable-deep-relocation) = Disable deep directory relocation (violates ISO9660)
-V ID (-volid ID) = Set Volume ID
-o FILE (-output FILE) = Set output file name
donc je lance la commande depuis l'intérieur du dossier "~/AppSetupWin32/os/Microsoft Windows 2003 R2/"
dans celui-ci j'ai 2 sous-dossiers :
- "Fichiers" : contenant les fichiers à mettre dans l'iso + boot.bin (fichier image pour le boot l'iso);
- "Image" : contenant le fichier image W2K3_SP2.iso généré avec mkisofs.
bon, j'obtiens un fichier ISO qui semble être de bonne composition...
je le check un petit coup pour voir ce qu'il contient :
~/AppSetupWin32/os/Microsoft Windows 2003 R2/Image$ isoinfo -d -i W2K3_SP2.iso
CD-ROM is in ISO 9660 format
System id: LINUX
Volume id: W2k3_SP2
Volume set id:
Publisher id:
Data preparer id:
Application id: GENISOIMAGE ISO 9660/HFS FILESYSTEM CREATOR (C) 1993 E.YOUNGDALE (C) 1997-2006 J.PEARSON/J.SCHILLING (C) 2006-2007 CDRKIT TEAM
Copyright File id:
Abstract File id:
Bibliographic File id:
Volume set size is: 1
Volume set sequence number is: 1
Logical block size is: 2048
Volume size is: 320536
El Torito VD version 1 found, boot catalog is in sector 267
CD-ROM uses ISO 9660:1999 relaxed format
NO Joliet present
NO Rock Ridge present
Eltorito validation header:
Hid 1
Arch 0 (x86)
ID ''
Key 55 AA
Eltorito defaultboot header:
Bootid 88 (bootable)
Boot media 0 (No Emulation Boot)
Load segment 0
Sys type 0
Nsect 4
Bootoff 10C 268
arrivé là,
je démarre une machine virtuelle dans virtualbox où je précise Windows 2003 server,
je précise aussi que le cd-rom est remplacé par l'iso que je viens de bricoler,
la bête démarre,
j'obtiens l'écran bleu des installations windows,
une petite barre grise en bas de l'écran,
un petit messaage dedans :
appuyez sur F6 pour...
chargement....
et là, hop !!!
Erreur :
Le fichier \I386\vga850.fon n'a pas pu être chargé.
Le code d'erreur est 4.
Le programme d'installation ne peut pas continuer !
quel salaud!!! je me suis donné tant de mal...
J'ai vérifié, le fichier vga850.fon n'existe pas.
Mais il existe vga850.fon_ (compressé)
-->je ne pense pas que ce soit ici le problème (bien que).
-->je me demande si vga850.fon n'est pas le 1er fichier a être chargé en mémoire par processus d'installation.
Celui-ci n'arrivant pas a le lire, il plante. Peut-être donc qu'il faut donner une option a mkisofs pour lui dire que le cd est du format que Microsoft utilise... mais quoi ?
-->est-ce que mon secteur boot (fabriqué par mkisofs) fait bien le mount sur le HDD... c'est important je pense, sinon peut-être que l'erreur est que l'installateur ne peut pas écrire le fichier sur le HDD.
Voilà, j'en suis là.
Je suis bien mal foutu hein ?
j'ai fais un petit check du dernier cd unattend que j'avais fait sous windows avec nero. voilà ce qu'il dit :
$ isoinfo -d -i WinXP.iso
CD-ROM is in ISO 9660 format
System id:
Volume id: WINXP_V10_9
Volume set id:
Publisher id:
Data preparer id:
Application id: NERO BURNING ROM
Copyright File id:
Abstract File id:
Bibliographic File id:
Volume set size is: 1
Volume set sequence number is: 1
Logical block size is: 2048
Volume size is: 1904576
El Torito VD version 1 found, boot catalog is in sector 20
Joliet with UCS level 3 found
NO Rock Ridge present
Eltorito validation header:
Hid 1
Arch 0 (x86)
ID 'NERO BURNING ROM'
Key 55 AA
Eltorito defaultboot header:
Bootid 88 (bootable)
Boot media 0 (No Emulation Boot)
Load segment 7C0
Sys type 6
Nsect 4
Bootoff 3DB 987
je vois ces différences qui concerne :
- Joliet with UCS level 3 found
- Load segment 7C0
j'ai chipoté avec mkisofs pour tenter d'avoir le même checkup mais bon, je comprends pas le chinois donc c'est dur dur quoi... En plus, comme je ne sais pas si ces deux options servent vraiment a quelque chose, je pensé qu'il fallait que je demande avant.
voilà, comme vous le constatez,
je suis vraiment en grande détresse,
merci d'avance pour vos conseils,
nico
ps:
voici les rares documentations que j'ai trouvées sur le sujet:
http://www.bxlug.be/articles/245
http://linuxtuneup.blogspot.com/2006/01/slipstreaming-windows-cd-under-linux.html
http://www.alleluia.ch/systeme-dexploitation/windows/integration-sp-linux
http://www.g-loaded.eu/2007/04/25/how-to-create-a-windows-bootable-cd-with-mkisofs/
N'envoyez jamais un humain faire le travail d'un programme.
Agent Smith
Hors ligne
#2 Le 16/11/2008, à 12:59
- FredG82
Re : fabriquer un iso bootable qui ne plante pas durant le setup.
Tu n'as pas installé l'extension Joliet sur ton CD, qui permet à windows de gerer les fichiers avec des noms longs
essaye de rajouter -J a la commande mkisofs, j'espere que ca marchera