• [^] # Re: Mandrake 10 Community et Windows XP

    Posté par (site web personnel) . En réponse au journal Mandrake 10 Community et Windows XP. Évalué à 1.

    Bonsoir,

    J'ai installé un paquet de configurations en dual boot Linux/Windows (même souvent en triple, voir quadriple boot), et j'ai déjà vu des trucs assez bizarres de ce type là.

    Le problème vient de Windows. J'en suis sûr au moins pour 2K/XP, mais de ce que j'ai lu, 95/98 font aussi des trucs bizarres. En effet, afin de déterminer la taille des partitions, Windows NE fait pas QUE lire les informations du MBR (les 512 premiers octets du DD). Il lit aussi l'information contenue au début de la partition elle-même, dans ce que l'on appelle la FAT (pour les partitions FAT 16/32. Pourle NTFS, c'est un autre nom). Au début de celle-ci, l'information du MBR concernant la partition est récopiée. Et les problèmes commencent quand cette information et celle du MBR ne sont pas les mêmes...

    Il y a aussi un autre problème assez fun : Pour les DD de moins de 1024 cylindres (en gros les DD de moins de 8Go), l'information concernant la taille des partitions est écrite sous 2 manières différentes CHS (Cylinder, Head, sector) et LBA (Logical Bloc Adresssing). Hors, pour ces DD là, Windows lit l'informations CHS, et Linux lit l'information LBA. Si les 2 informations ne sont pas cohérentes entre elles, les ennuis commencent : Soit Linux soit Windows peut accéder sans problème à la partition. Mais l'autre OS n'y arrivera pas, voir pire, il vautrera la partition. Je l'ai vu faire avec un Windows 98, qui a écrit un répertoire "RECLYCLED" sur une partition ext2, alors qu'il devait supprimer un fichier sur une autre partition...

    Pour en revenir au problème précédent : Si effectivement des problèmes de partitions arrivent, et ce malgrès la suppression/création des partitions, il convient d'employer la méthode forte indiquée ci-dessus:
    - soit "dd if=/dev/zero of=/dev/hda bs=512 count=1000". Zu début du DD (sur le 1er 1/2 Mo), toutes les traces de TOUTES les partitions sont supprimées . on Oeut alors recommencer le partitionnement. Mais attenton, on perd tout le contenu du DD...
    - soit un "dd if=/dev/zero of=/dev/hda1 bs=512 count=1000" (notez le "hda1"). Auquel cas, toutes les traces de FAT ou de secteur de démarrage de la partition hda1 sont supprimés, et Windows peut s'installer correctement dessus. Dans ce cas là, on a massacré la partition /dev/hda1, mais on a épargné le reste du DD.

    Dernière info. Windows (NT/2K/XP) sont vraiment de petits malins. Lors de l'installation de ces OS, comme pour ce qui est indiqué précédement, il ne regardent pas qu'uniquement dans le MBR quel sont les types/tailles des partitions. Il regardent directement l'information contenu dans la FAT des dites partitions. Ainsi, si on veut cacher une partition FAT/NTFS à l'installateur de Windows NT/2K/XP, il est vain de magouiller le MBR, en déclarant pour ces partitions un type "hidden" ou un autre type (ext2, swap, ou autres formats exotiques)