|
» Introduction » Matériel et logiciel nécessaire » Télécharger les utilitaires » Procédure pas à pas » Quelques problèmes rencontrés » Remerciements |
Attention, si vous avez Windows XP, utilisez PE
Builder, qui fonctionne correctement et est beaucoup plus puissant !
Il a souvent été dit que Windows devait fonctionner depuis un
média inscriptible (disque dur), car sinon il y a plusieurs messages
signalant des problèmes d'accès à la base de registre.
Mais c'est surtout cosmétique, et Windows peut démarrer et fonctionner
depuis un CD-Rom.
Cette page explique comment éliminer les messages d'erreur et optimiser
le démarrage depuis le CD-Rom, pour utiliser Windows 9x (Windows 95b
et Windows 98), éventuellement sans disque dur.
Les avantages à démarrer Windows depuis un CD-Rom :
En fait, tout le problème vient des accès en écriture
dans la base de registre. Un CD-Rom avec Windows fonctionnerait, mais en se
plaignant sans cesse de ne pas pouvoir écrire. Il faut donc placer
la base de registre sur un disque virtuel (ramdisk). La solution est donc
basée sur une installation de Windows sur un CD-Rom, dont la base de
registre est sur un disque virtuel (8 Mo suffisent pour la base de registre),
ce qui permet de l'écrire, sans accès à un disque dur.
Cette page est une traduction/amélioration de c't 11/99, page 206 - Booting Windows From CD-Rom (en anglais).
Cette procédure est non destructrice pour l'installation actuelle
de Windows, si on prend garde à bien respecter les instructions et
que l'on fait les sauvegardes.
Attention, cette page est encore en construction (amélioration),
et à considérer en version Bêta (mais devrait fonctionner),
je suis preneur de vos commentaires. Merci de me renvoyer vos retours d'expérience,
réussie ou pas, avec vos remarques, pour pouvoir améliorer cette
page.
Pour créer un CD-Rom démarrable Windows, il vous faudra aussi
une installation fonctionnelle de Windows, une connaissance des commandes
DOS, et environ 3 heures, à cause des nombreux redémarrages
nécessaires.
J'ai essayé de retravailler la procédure, pour bien faire apparaitre
à chaque étape ce qu'il faut faire exactement, dans quel ordre
et avec quel outil. J'essaie d'expliquer pourquoi chaque étape est
nécessaire. Cela peut paraitre long, mais en fait, chaque étape
est simple, et il n'y a pas à se poser de question par rapport aux
grands paragraphes descriptifs du texte d'origine.
Attention, je n'ai pas testé très fortement cette méthode,
mais j'ai vu sur des sites (en anglais) que plusieurs personnes avaient réussi
à construire un tel CD-Rom. Je vous conseille de créer d'abord
un CD-Rom simple, et ensuite d'ajouter nombre de vos programmes. Faites moi
part de vos retours d'expériences (positifs ou négatifs)...
Voici les étapes à suivre (vous devriez imprimer cette page) :
Sauf indication contraire, les opérations peuvent (doivent) êtres
effectuées directement depuis Windows.
@echo off c:\work\subst.exe R: c:\cdrom path c:\;c:\work keyb fr
devicehigh=c:\work\himem.sys devicehigh=c:\work\ifshlp.sys devicehigh=c:\work\dblbuff.sys devicehigh=c:\work\setver.exe
@echo off c:\work\subst.exe R: c:\cdrom path c:\work;r:\win;r:\win\command;r:\win\system keyb fr
Il faut maintenant paramétrer Windows à votre guise (clé
de produit...), et installer tous les pilotes nécessaires, ainsi
que les applications de votre choix.
c:\work\subst.exe Q: c:\cdrom\ramdisk
[Paths] WinDir=q:\winq WinBootDir=q:\winq HostWinBootDrv=q
DisableLog=1
Pour éviter que Windows n'utilise un fichier "system.dat"
du disque dur quand démarré depuis le CD-Rom, la base
de registre devrait être renommée. Son nom est noté
dans "c:\io.sys". Pour le modifier, il faut le rendre visible
(avec attrib -s -h -r). Ensuite, l'éditer avec un éditeur
hexadécimal (ou "edit /70 c:\io.sys" dans
une fenêtre DOS), chercher la chaîne "system.dat"
et la remplacer par "system.tat" (vous pouvez laisser le "C:\",
il n'a visiblement aucun impact). Cette opération permet que
seuls les fichiers nommés "system.tat" soient reconnus
comme base de registre, et les fichiers "system.dat" seront
ignorés.
Cette modification est suffisante pour Windows 95, mais pour Windows
98, le nom de la base de registre est enregistré dans le programme
de vérification de la base de registre, et on risque un message
d'erreur à chaque démarrage en faisant cette modification.
Il faut donc désactiver la vérification automatique de
la base de registre ("scanregw.exe") au démarrage,
avec "msconfig.exe" par exemple.
Copiez le répertoire du menu démarrer de "c:\cdrom\win"
vers "C:\cdrom\ramdisk\winq" maintenant.
c:\work\xmsdsk 8000 q: /y /t copy c:\command.com q:\ set COMSPEC=q:\command.com c:\work\xcopy c:\cdrom\ramdisk\*.* q:\ /s
Cela crééra un disque virtuel (à la place du subst)
et copiera la base de registre et l'interpréteur de commandes
sur ce disque virtuel.
Attention : un utilisateur signale un problème
avec cette méthode.
Redémarrez l'ordinateur.
Si tout va bien après le redémarrage, vous pouvez supprimer
tous les fichiers (et répertoires) dans "C:\cdrom\ramdisk\winq"
sauf "system.ini", "user.dat", "win.ini",
"control.ini" et "system.tat" ou "system.dat".
devicehigh=a:\work\himem.sys
devicehigh=a:\work\ifshlp.sys
devicehigh=a:\work\dblbuff.sys
devicehigh=a:\work\setver.exe
device=a:\work\aspi8dos.sys
device=a:\work\aspicd.sys /D:CD001
Modifiez "a:\autoexec.bat" et remplacez la commande subst par mscdex.exe, pour avoir quelque chose comme :
a:\work\mscdex.exe /D:CD001 /L:R /M:50
a:\work\xmsdsk 4000 q: /y /t
copy a:\command.com q:\
set COMSPEC=q:\command.com
a:\work\xcopy r:\ramdisk\*.* q:\ /S
path q:\;r:\win;r:\win\command;r:\win\system
r:
Soyez sur que le buffeur pour mscdex.exe n'est pas trop petit. Avec
le classique /M:12 et un disque rapide, Windows risque d'avoir des problèmes
au démarrage si les données n'arrivent pas assez vite.
Le paramètre /L:R spécifie le lecteur (R:) à utiliser
pour le CD-Rom.
Sinon, utilisez une méthode plus automatisée, basée
sur ModBoot : créez une disquette
de démarrage avec support CD-Rom, en suivant les explications.
Copiez depuis C:\ vers A:\ les fichiers modifiés "io.sys"
et "msdos.sys".
Téléchargez le module win9x.cab
(1 Ko) et copiez le dans le répertoire \level3 de votre disquette.
Déplacez le fichier cdrom.cab du répertoire \level3 vers
\level2.
Voila, votre disquette de démarrage est prête.
Voila, c'est enfin terminé...
Merci de me faire parvenir vos remarques, retours d'expérience, tout
ce qui peut m'aider à améliorer cette page pour que tout le
monde en profite !!!
Il faudra que j'affine la fin, avec la fabrication automatisée de
la disquette de démarrage, et une procédure de gravage.
Si vous voulez modifier votre installation Windows destinées à
fonctionner sur CD-Rom, vous devez remettre en place la ligne "subst
Q: c:\cdrom\ramdisk" à la place des 4 lignes mettant en
place xmsdsk, et reprendre à cet endroit une fois vos modifications
terminées.
Si vous devez basculer entre votre installation d'origine de Windows et
celle actuelle, il faut procéder au remplacement des fichiers "io.sys",
"msdos.sys", "config.sys" et "autoexec.bat"
sur C:\ avec les fichiers sauvegardés et renommer les fichiers du
répertoire windows.
Je liste ici quelques problèmes qui ont été rencontrés
par des utilisateurs, pour essayer de voir s'ils sont communs à plusieurs
personnes, et comment les corriger...
Merci de m'envoyer vos soucis (ou vos solutions) avec un maximum de détail
sur la démarche adoptée, le système d'exploitation
utilisé, tout ce qui peut aider à cerner (et surtout résoudre)
le problème.
Alors que si je boote à partir de la disquette, je vois, dans
l'explorateur, l'ensemble de mes partitions des 2 disques. C'est peut-être
une question de temps de réponse du CD-ROM...
Je ne sais pas vraiment, et je ne comprends pas pourquoi le temps de réponse
du CD empecherait de voir les partitions...
set EXPAND=YES set DIRCMD=/O:N set LglDrv=27 * 26 Z 25 Y 24 X 23 W 22 V 21 U 20 T 19 S 18 R 17 Q 16 P 15 set LglDrv=%LglDrv% O 14 N 13 M 12 L 11 K 10 J 9 I 8 H 7 G 6 F 5 E 4 D 3 C cls call a:\setramd.bat %LglDrv% a:\subst Q: %RAMD%:\ Q: mkdir winq cd winq copy R:\ramdisk\winq\*.*
Les créateurs et traducteurs de la page : c't 11/99, page 206 - Booting Windows From CD-Rom (en anglais).
|
|