OVH Cloud OVH Cloud

Demasquer Windows

19 réponses
Avatar
Geo Cherchetout
Bonsoir,
Débutant sous Linux (Mandrake 9.2), je ne peux plus lancer Windows, dont
j'ai pourtant encore besoin pour certaines tâches.
Au boot, quand je sélectionne "Windows" parmi les choix proposés par
Lilo, après une fugitive apparition de la fameuse fenêtre étendard, je
me retrouve aussitôt en ligne de commande DOS, avec un prompt du genre C:>.
Un dir révèle que je ne suis pas réellement sous C: (hda1) mais sous D:
(hdb1). Dans le même ordre d'idées, A: comme B: désignent indifféremment
l'unique lecteur de disquettes et aucune lettre ne correspond plus à ma
partition système Windows C:, comme si celle-ci était "masquée". Depuis
Linux, j'y accède pourtant sans problème.
Je dois confesser que depuis ma dernière connexion réussie sous Windows,
il y a une dizaine de jours, j'ai un peu bidouillé. (Notamment plusieurs
changements de noyau (rpm) et création dans hda d'une partition de swap.)
Ah oui, il m'est aussi arrivé de tuer linuxconf qui refusait de me
rendre la main alors que j'en explorais les menus.
Voici donc ma situation actuelle :

Noyau : Linux 2.4.22-21mdk
Lilo : 22.5.7.2-6mdk
Contenu de lilo.conf :

boot=/dev/hda
map=/boot/map
vga=normal
default="linux"
keytable=/boot/fr-latin1.klt
prompt
nowarn
timeout=50
message=/boot/message
menu-scheme=wb:bw:wb:bw
image=/boot/vmlinuz
label="linux"
root=/dev/hdb5
initrd=/boot/initrd.img
append="devfs=mount hdc=ide-scsi acpi=off"
read-only
image=/boot/vmlinuz
label="failsafe"
root=/dev/hdb5
initrd=/boot/initrd.img
append="failsafe devfs=nomount hdc=ide-scsi acpi=off"
read-only
other=/dev/hda1
label="windows"
table=/dev/hda
other=/dev/fd0
label="floppy"
unsafe
image=/boot/vmlinuz-2.4.22-21mdk
label=2422-21
root=/dev/hdb5
read-only
optional
vga=normal
append=" devfs=mount hdc=ide-scsi acpi=off"
initrd=/boot/initrd-2.4.22-21mdk.img

Contenu de fstab :

/dev/hdb5 / ext3 defaults 1 1
none /dev/pts devpts mode=0620 0 0
/dev/hdb7 /home ext3 defaults 1 2
none /mnt/cdrom supermount
dev=/dev/scd0,fs=auto,ro,--,iocharset=iso8859-15,codepage=850,umask=0 0 0
none /mnt/cdrom2 supermount
dev=/dev/hdd,fs=auto,ro,--,iocharset=iso8859-15,codepage=850,umask=0 0 0
none /mnt/floppy supermount
dev=/dev/fd0,fs=auto,--,iocharset=iso8859-15,sync,codepage=850,umask=0 0 0
/dev/part1 /mnt/fuji auto noauto,user,rw 0
/dev/hda1 /mnt/win_c vfat
exec,dev,suid,rw,umask=0,iocharset=iso8859-15,codepage=850 0 0
/dev/hdb1 /mnt/win_c2 vfat iocharset=iso8859-15,codepage=850,umask=0 0 0
none /proc proc defaults 0 0
/dev/hda5 /sauv ext3 defaults 1 2
/dev/hda6 swap swap defaults 0 0
/dev/hdb6 none swap exec,dev,suid,rw 0 0

J'ai bien essayé d'introduire dans lilo.conf quelques variations sous
l'entrée correspondant au label "windows", mais lilo les rejette pour
cause de syntaxe incorrecte. Man lilo.conf suggère de se reporter pour
plus de détails à une section "Partition type change rules" de
"user.tex" ou "TEX documentation", mais je ne sais où trouver cette
documentation.

Que faire pour retrouver l'usage normal de Windows ?
Je voudrais bien conserver lilo qui, d'habitude, suffit amplement à mes
besoins.
Merci d'avance pour vos conseils, ou réorientation si vous jugez que je
suis hors sujet ici.

9 réponses

1 2
Avatar
Geo Cherchetout
Le 25.12.2003 10:51, Roger Delvosal a écrit fort à propos :

Dans ce cas, je vous suggère de vérifier le numéro des partitions par fdisk
/dev/hdx car des logiciels comme partition magic changent les numéros.


Je n'ai jamais utilisé Partition Magic ou autre depuis le dernier
formatage de mes disques, qui remonte à plus de deux ans...
Et je ne sais pas lire les réponses de fdisk. Toutefois la ligne
concernant hda1 contient "ef" et celle concernant hdb1 contient "c".
Même un ignorant comme moi trouve ça louche.
Je me permets de recopier ci-dessous les réponses aux commandes que j'ai
osé envoyer :

Commande (m pour l'aide): p

Disque /dev/hda: 6449 Mo, 6449587200 octets
255 têtes, 63 secteurs/piste, 784 cylindres
Unités = cylindres de 16065 * 512 = 8225280 octets

Périphérique Amorce Début Fin Blocs Id Système
/dev/hda1 * 1 407 3269196 ef EFI (FAT-12/16/32)
/dev/hda2 408 784 3028252+ 5 Extended
/dev/hda5 408 751 2763148+ 83 Linux
/dev/hda6 752 784 265041 82 Linux swap

Commande (m pour l'aide): v
186 secteurs non-alloués

Commande (m pour l'aide): p

Disque /dev/hdb: 20.0 Go, 20020396032 octets
255 têtes, 63 secteurs/piste, 2434 cylindres
Unités = cylindres de 16065 * 512 = 8225280 octets

Périphérique Amorce Début Fin Blocs Id Système
/dev/hdb1 * 1 1005 8072631 c Win95 FAT32 (LBA)
/dev/hdb2 1006 2434 11478442+ 5 Extended
/dev/hdb5 1006 1706 5630751 83 Linux
/dev/hdb6 1707 1737 248976 82 Linux swap
/dev/hdb7 1738 2434 5598621 83 Linux

Commande (m pour l'aide): v
248 secteurs non-alloués

Avatar
chrisn
"Geo Cherchetout" a écrit dans le message de news:

Je n'ai jamais utilisé Partition Magic ou autre depuis le dernier
formatage de mes disques, qui remonte à plus de deux ans...
Et je ne sais pas lire les réponses de fdisk. Toutefois la ligne
concernant hda1 contient "ef" et celle concernant hdb1 contient
"c".

Même un ignorant comme moi trouve ça louche.


En fait ef signifie efi partition
http://www.intel.com/software/products/college/efishell/ch2/topic_05
.htm
Bien que ce nouveau standard soit contemporain de la création de
l'itanium, je n'en avais pas encore vu de référence sur les news.
Bon, elle est normalement compatble avec le système fat, et comme
vous le dite, c'est votre disque d:. Donc pour l'instant, ignorez ce
fait. Eventuellement, vous pourrez changer ce détail avec le fdisk
de linux, mais attention le mbr aussi est censé être différent donc
allez-y doucement. Sinon, pour un disque de 6 go, il serait noramal
que la partition soit de type B.

c signifie fat32 sur un disque de plus de 8 giga. Cà c'est tout à
fait normal

Pour plus de détail sur les partitions qu'elles quelles soient, je
vous conseille entre autres cette page :
http://www.bellamyjc.org/fr/theoriemultiboot1.html

Je me permets de recopier ci-dessous les réponses aux commandes
que j'ai

osé envoyer :
[...]
Disque /dev/hda: 6449 Mo, 6449587200 octets
[...]
Périphérique Amorce Début Fin Blocs Id Système
/dev/hda1 * 1 407 3269196 ef EFI
(FAT-12/16/32)

[...]

Disque /dev/hdb: 20.0 Go, 20020396032 octets
[...]
Périphérique Amorce Début Fin Blocs Id Système
/dev/hdb1 * 1 1005 8072631 c Win95 FAT32
(LBA)


Vos deux partitions fat sont amorçables ainsi que l'indique "*" sur

la ligne. Elles sont en début de disque (début secteur 1 et fin
secteur 407 et 1005 rspectivement) et surtout de type principal.

Tout me porte à croire que hda est historiquement, votre premier
disque dur, ce qui explique qu'il y a eu un système bootable dessus
à l'époque. Par contre, ainsi que je vous le disais dans mon
précédent mel, c'est bien sur hdb que vous devez booter. Essayez :

other=/dev/hdb1
label="windows"
table=/dev/hdb
map-drive = 0x80
to = 0x81
map-drive = 0x81
to = 0x80

Le map-drive va rétablir pour windows le fait que hdb est en fait le
premier disque. Toutefois, si vous avez windows 2000 ou windows xp,
qui sont capables d'inverser eux-même disk1 et disk2, commencez par
ne pas ajouter les lignes map-drive.


--
chrisn
mettre le bon fai, libertysurf pour me répondre

Avatar
Geo Cherchetout
Le 26.12.2003 08:12, chrisn a écrit fort à propos :

En fait ef signifie efi partition


OK. Qu'allais-je imaginer ?

http://www.intel.com/software/products/college/efishell/ch2/topic_05
..htm


Merci pour le lien et pour les instructives contributions. Pour décrire
un peu mieux le contexte, mon processeur est un brave Pentium III mais
le disque hda a probablement été le siège d'un système Windows XP avant
que j'y installe Windows 98 SE. Il fut alors mon seul disque (C:) et
WIN98SE mon seul OS. Par la suite, j'ai installé un second disque (D: hdb) pour y installer Linux et stocker des données exploitées par
Windows, mais pas le Système Windows.

Bien que ce nouveau standard soit contemporain de la création de
l'itanium, je n'en avais pas encore vu de référence sur les news.
Bon, elle est normalement compatble avec le système fat, et comme
vous le dite, c'est votre disque d:.


Moi ? J'ai dit ça ?
Pour moi il s'agit de c:, siège du système Win98SE que je ne peux plus
démarrer...

Sinon, pour un disque de 6 go, il serait noramal
que la partition soit de type B.


Je prends note pour l'avenir.

c signifie fat32 sur un disque de plus de 8 giga. Cà c'est tout à
fait normal


OK.

Pour plus de détail sur les partitions qu'elles quelles soient, je
vous conseille entre autres cette page :
http://www.bellamyjc.org/fr/theoriemultiboot1.html


J'y ai passé quelques heures ces derniers jours mais j'ai tant à
apprendre sur le sujet qu'il me faudra beaucoup plus de temps encore
pour en assimiler les bases.

Tout me porte à croire que hda est historiquement, votre premier
disque dur, ce qui explique qu'il y a eu un système bootable dessus
à l'époque.


En effet, et je voudrais bien pouvoir l'utiliser encore car je ne l'ai
jamais installé sur hdb. Tout au plus ai-je mis ces derniers jours sur
hdb (D:) un embryon de MS-DOS.

Par contre, ainsi que je vous le disais dans mon
précédent mel, c'est bien sur hdb que vous devez booter. Essayez :

other=/dev/hdb1
label="windows"


Je m'abstiens pour le moment car je sais avec certitude que Windows est
installé sur hda. Un accident est si vite arrivé...

table=/dev/hdb
map-drive = 0x80
to = 0x81
map-drive = 0x81
to = 0x80

Le map-drive va rétablir pour windows le fait que hdb est en fait le
premier disque.


Avatar
Geo Cherchetout
Le 25.12.2003 14:30, Michel Tatoute a écrit fort à propos :

utilise gpart pour être certain de tes partitions.


Voici déjà un aperçu de hda selon gpart, mais il faut vraiment que je
lise la doc.
En attendant que j'en sois capable (Ce sera très long !), l'analyse de
ce résultat par un ½il averti permettra peut-être d'avancer dans le
diagnostic. Si cela peut être utile, la partition linux /sauv (hda5) est
en EXT3...

# gpart /dev/hda

Begin scan...
Possible partition(DOS FAT), size(3192mb), offset(0mb)
Possible extended partition at offset(3192mb)
Possible partition(Linux swap), size(258mb), offset(5891mb)
End scan.

Checking partitions...
Partition(DOS or Windows 95 with 32 bit FAT, LBA): primary
Partition(Linux swap or Solaris/x86): invalid
Ok.

Guessed primary partition table:
Primary partition(1)
type: 012(0x0C)(DOS or Windows 95 with 32 bit FAT, LBA)
size: 3192mb #s(6538392) s(63-6538454)
chs: (0/1/1)-(406/254/63)d (0/1/1)-(406/254/63)r

Primary partition(2)
type: 015(0x0F)(Extended DOS, LBA)
size: 2957mb #s(6056505) s(6538455-12594959)
chs: (407/0/1)-(783/254/63)d (407/0/1)-(783/254/63)r

Primary partition(3)
type: 000(0x00)(unused)
size: 0mb #s(0) s(0-0)
chs: (0/0/0)-(0/0/0)d (0/0/0)-(0/0/0)r

Primary partition(4)
type: 000(0x00)(unused)
size: 0mb #s(0) s(0-0)
chs: (0/0/0)-(0/0/0)d (0/0/0)-(0/0/0)r

Avatar
chrisn
"Geo Cherchetout" a écrit dans le message de news:

Bon, elle est normalement compatble avec le système fat, et
comme


vous le dite, c'est votre disque d:.


Moi ? J'ai dit ça ?
Pour moi il s'agit de c:, siège du système Win98SE que je ne peux
plus

démarrer...

On va essayer de remettre en ordre toutes les info de vos différent

fils.

Linux appelle hda votre disque de 6 go et hdb votre disque de 20 go.
Sur le disque hda il y a votre système w98 ok, et, dans une
partition étendue, une ext3 /sauv et une swap
Sur le disque hdb il y a un embryon de w98, linux /, une swap et
linux /home.

Votre table lilo actuelle indique au niveau du boot windows :
other=/dev/hda1
label="windows"
table=/dev/hda

Mais lorsque vous bootez ainsi vous retrouvez en c: votre d:

je me retrouve aussitôt en ligne de commande DOS, avec un prompt
du genre C:>. Un dir révèle que je ne suis pas réellement sous
C: (hda1) mais sous D:(hdb1).




S'il vous reste des traces de xp, avec le fichier de boot XP,
débranchez votre disque de 20 Go et bootez sur une disquette pour
faire un sys c:.
Rebranchez le tout et regardez ce qu'il se passe. Si vous continuez
à ne pas booter sur votre c: correct, c'est que l'inversion a une
autre cause. D'où mes 2 conseils : remettre tout à plat en partant
de votre bios et en reconstruisant lilo colmplètement.

Plus simple : l'inversion du boot dans lilo, avec boot sur hdb et
commande map-drive. Cette manipulation est absolument sans danger et
totalement réversible. De deux choses l'une, ou elle résoud votre
problème et vous continuez avec, ou vous repassez au paragraphe
précédent : tout remettre à plat.

Bonne chance, bonne découverte, et tenez nous au courant.

--
chrisn
mettre le bon fai, libertysurf pour me répondre



Avatar
Roger Delvosal
Bonjour,

"Geo Cherchetout" a écrit dans
le message de news:bsfv2u$nut$
Le 25.12.2003 10:51, Roger Delvosal a écrit fort à propos :

Dans ce cas, je vous suggère de vérifier le numéro des partitions par
fdisk


/dev/hdx car des logiciels comme partition magic changent les numéros.


Je n'ai jamais utilisé Partition Magic ou autre depuis le dernier
formatage de mes disques, qui remonte à plus de deux ans...
Et je ne sais pas lire les réponses de fdisk. Toutefois la ligne
concernant hda1 contient "ef" et celle concernant hdb1 contient "c".



Une vérification sans risque que vous pouvez faire est d'aller dans le
répertoire /mnt/win_c et /mnt/win_c2 et de vérifier ce qu'il y a
effectivement sur vos partitions. Ceci parce que Windows 2000 dans mon cas
n'attribue pas les lettres par ordre de partition rencontrée mais par fat16,
fat32 ...
Cordialement
--
Roger Delvosal



Avatar
Geo Cherchetout
Le 26.12.2003 20:23, chrisn a écrit fort à propos :

On va essayer de remettre en ordre toutes les info de vos différent
fils.

Linux appelle hda votre disque de 6 go et hdb votre disque de 20 go.
Sur le disque hda il y a votre système w98 ok, et, dans une
partition étendue, une ext3 /sauv et une swap
Sur le disque hdb il y a un embryon de w98, linux /, une swap et
linux /home.

Votre table lilo actuelle indique au niveau du boot windows :
other=/dev/hda1
label="windows"
table=/dev/hda

Mais lorsque vous bootez ainsi vous retrouvez en c: votre d:


C'est bien ça.

S'il vous reste des traces de xp, avec le fichier de boot XP,
débranchez votre disque de 20 Go et bootez sur une disquette pour
faire un sys c:


Ma disquette est une disquette de démarrage pour Win98.
La commande sys c: donne : "Fonction non valide". Je précise que les
fichiers système du DOS sont présents sous la racine du vrai c:
L'exploration des disques montre toujours la même confusion entre a: et
b:. Je peux toujours en apparence passer sous c: mais le lecteur auquel
j'accède alors n'est toujours pas le vrai c: Il se présente ainsi : "Le
volume dans le lecteur C est MS-RAMDRIVE" et je suppose qu'il se situe
quelque part dans la mémoire de travail.
Au moins une chose est acquise : Ce n'est plus D: (Dont l'alimentation
est débranchée) !

Rebranchez le tout et regardez ce qu'il se passe. Si vous continuez
à ne pas booter sur votre c: correct,


En effet, toujours aucun moyen de démarrer windows.

c'est que l'inversion a une autre cause.
D'où mes 2 conseils : remettre tout à plat en partant
de votre bios et en reconstruisant lilo colmplètement.


Je vais probablement y venir car l'inversion dans lilo.conf proposée
plus loin n'apporte aucun changement. Comme je ne sais pas ce que
recouvre l'expression "remettre tout à plat", voici mon plan :

1. Sauvegarder toutes mes données accumulées dans c: (hda1) avec les
outils linux,
2. Débrancher d:,
3. Formater c: (hda) et le partitionner avec le fdisk de ms-dos,
4. Réinstaller Windows et mes précieuses applications,
5. Rebrancher d: (hdb),
6. Réinstaller Lilo en démarrant en mode "rescue" avec le cd n°1
d'installation de Mandrake.

Questions :
- Est-il encore possible d'éviter les étapes 3 et 4 ?
- Si oui, comment ?
- Le cd Mandrake le plus récent en ma possession est celui de la 9.0.
Est-ce qu'il fera aussi bien que celui de la 9.2 ? Le cas échéant, je
peux télécharger le disque 1 seul.
- Faut-il avoir désinstallé Lilo, ou seulement supprimé (ou renommé)
lilo.conf ?
- Faut-il toucher à fstab ?

Bonne chance, bonne découverte, et tenez nous au courant.


Merci pour tout. Je pense mettre à exécution les étapes décisives de mon
plan dès demain soir si personne ne m'en propose un plus simple entre-temps.
Et je rendrai compte de la conclusion de l'aventure... ou de ses
rebondissements.

Avatar
chrisn
"Geo Cherchetout" a écrit dans le message de news:

S'il vous reste des traces de xp, avec le fichier de boot XP,
débranchez votre disque de 20 Go et bootez sur une disquette
pour


faire un sys c:


Ma disquette est une disquette de démarrage pour Win98.
La commande sys c: donne : "Fonction non valide".

Je shunte vos problèmes sur les lettres A: B: C:, c'est normal, mais

c'est de la technique windows pure. Par contre, cette manoeuvre
montre que w98 ne sait pas attaquer une partition de type ef et donc
que c'est la mandrake qui est à l'origine de ce tour de magie. La
nuit portant conseil, il me semble effectivement me souvenir qu'il
faut au moins XP 64 bits pour lire une partitionde type ef.

Donc il aut redonner le bon type à cette partition. Pas de panique.
Vous allez simplement changer le contenu d'un octet sur tout votre
disque. De plus une précédente mandrake avait un bug équivalent qui
rendait les partitions cachées, donc j'ai déjà passé cette manip
assez facile.

Vous démarrez linux normalement et vous tapez la commande "fdisk
/dev/hda".
L'aide en ligne vous rappelle que pour changer le type d'une
partition, il suffit de taper "t", puis le numéro de partition, pour
vous "1" et enfin "0b" por revenir en fat32 (votre partition faisant
environ 3go, elle ne pouvait pas être en fat16).
Il vous faut maintenant réécrire cela sur la partition au moyen de
la lettre "w". Eteignez votre ordinateur et en bootant sur votre
disquette w98, vérifiez que c: est à nouveau c:

Retentez ensuite un passage vers linux puis à nouveau vers windows.
Si le bug se reproduit, il faut allez ajouter deux lignes dans votre
fichier lilo.conf, après la ligne menu-scheme, en fait surtout avant
la première ligne image. Ces deux lignes sont :
change-rules
reset
Bien sûr il faudra recommencer à changer le type de partition de c:

Comme je ne sais pas ce que
recouvre l'expression "remettre tout à plat", voici mon plan :

1. Sauvegarder toutes mes données accumulées dans c: (hda1) avec
les

outils linux,
Ca, c'est déjà un très bon plan à faire avant toute expérience sur

un nouveau système :-))
2. Débrancher d:,
Ce ne sera pas la peine

3. Formater c: (hda) et le partitionner avec le fdisk de ms-dos,
Vous ne pourrez pas, fdisk dos refuse d'effacer une partition non

dos. Mais bon il y a des outils pour ça, comme le fdisk linux, si
vous tenez vraiment à en venir à cette solution.

Pour moi tout remettre à plat siginifiait passer par un bon fdisk
/mbr (dos) pour enlever lilo et partir en suite sur linus rescue.
Mais la manip que vous venez de faire montre que le pb n'est pas là.

- Le cd Mandrake le plus récent en ma possession est celui de la
9.0.

Est-ce qu'il fera aussi bien que celui de la 9.2 ?


Je crois que la 9.0 n'avait pas le bug. Du moins, je ne me souviens
pas qu'il m'est géné. Mais je pense que vous réglerez votre problème
sans en venir à une situation extrème.


--
chrisn
mettre le bon fai, libertysurf pour me répondre


Avatar
Geo Cherchetout
Le 27.12.2003 09:21, chrisn a écrit fort à propos :

Pour moi tout remettre à plat siginifiait passer par un bon fdisk
/mbr (dos) pour enlever lilo et partir en suite sur linus rescue.
Mais la manip que vous venez de faire montre que le pb n'est pas là.


Je volais trop bas pour comprendre la vraie nature du problème, mais
après avoir lancé cette commande je me suis aperçu que je n'étais pas
capable de réinstaller lilo en raison d'une incompatibilité de GLIBC
(2.3 exigée).
J'ai donc mis à profit le temps mort pour réinstaller Windows dans sa
forme le plus dépouillée. Bonne occasion de me débarrasser d'un tas de
programmes désormais superflus !
Hier matin, à l'ouverture du marchand de journaux, j'ai acquis la
Mandrake 9.2 en 3 CD qui m'a permis de réinstaller lilo.
Après pas mal de tâtonnements et de va-et-vient entre fstab, mtab,
fdisk, e2fsck, mke2fs, DiskDrake, gpart, finalement tout marche comme
avant, et avec mon lilo.conf initial.
Sauf que j'ai désormais 2 partitions de swap. Vais-je supprimer celle
qui est sur le lecteur où est installé Linux ? Vous le saurez à l'issue
du nouveau fil que j'initierai très bientôt.
Merci donc à tous ceux qui m'ont accompagné dans cette douloureuse mais
instructive épreuve. Et bonne fin d'année.

1 2