Comme mon travail en tant qu’administrateur système dans une société Web me fait rencontrer de nouveaux problèmes chaques jours, je me suis dit qu'il fallait que le monde profite de mes solutions :).
Catching Elephant is a theme by Andy Taylor
Bonjour à tous, petit tuto du matin qui porte sur un système d’exploitation un peu plus connu que GNU/Linux : Microsoft Windows 7.
Vous avez sans doutes eu le problème suivant un jour dans votre vie de nerd :
Vous avez acheté un nouvel ordi, ou une nouvelle carte mère pour votre ordi, dans le but de booster vos performances et pouvoirs dépasser les 15 FPS à Dalaran sur World of Warcraft. Vous l’installez, montez votre nouvelle carte, votre nouveau processeur, votre RAM, vous remontez votre disque dur, vous lancez l’ordi, et là, patatra, au lancement du système, votre Windows vous gratifie d’un merveilleux BSOD (Blue Screen Of Death), vous fais un joyeux fuck et s’éteint. Pour les systèmes plus récents, comme Vista ou Seven, qui accueillent un WinRE (partition de récupération Windows), le système va alors tenter de réparer l’erreur, et va, comme solution miraculeuse, vous demander de reformater votre partition système (si vous en avez une) ou tout votre disque (si vous n’aviez pas prévu le coup).
De rage, donc, vous projetez violemment votre nouvelle carte mère par dessus la rambarde de la fenêtre, et remontez tout votre ancien matériel afin d’effectuer une sauvegarde de vos précieux fichiers de porn personnels.
PAS DE PANIQUE!
Nakou à creusé la question, lui même confronté à ce problème hier soir. Mon dernier reformatage datant de moins de 6 mois, je n’avais aucune envie de reformater, et de perdre ainsi mon iTunes bien rempli, mes jeux et tout ce que je glandouille sur mon PC fixe, même si la perte n’aurait été que temporaire, vu que je fais des sauvegardes (Règle de l’Administrateur Système n°1 : Assurez vous toujours de la redondance de vos sauvegardes).
Avant propos et Explications
Il est important de comprendre déjà pourquoi est ce que Windows est si compliqué à ce niveau là, alors qu’un Linux peut se lancer simultanement sur plusieurs machines via un montage NFS, avec des materiels differents (carte mère, RAM, disques et carte graphiques) sans souci.
En fait tout deux sont d’une conception radicalement différente. Alors que Linux s’appuis sur son noyau modulaire, et sur sa capacité à configurer ses périphériques depuis la couche utilisateur, Windows lui inscrit lui presque tout en dur dans le système à l’installation.
Ce qui nous pose problème ici en fait, c’est l’inscription dans les clés de registres des contrôleurs, issues de la carte mère. Ces contrôleurs vont permettes à Windows d’utiliser son matériel, mais ces derniers ne correspondront plus au nouveau une fois transférer, ce qui nous pose problème ici.
Solution
La solution est donc la suivante. Nous allons utilisé un outil, inclus dans Windows 7, qui permet normalement d’initialiser un système Windows en vue de son déploiement sur un nombre important. Il était évident qu’il existait quelque chose chez Microsoft pour faire ça. Imaginez que vous ne puissiez jamais cloner un système, et qu’il vous faut le déployer sur une centaine de machine. Cela impliquerai donc de prendre le temps d’installer Windows sur toutes les machines. Impensable. En temps normal, on installe un seul et unique système, configuré et possédant les programmes nécessaires, puis on le déploie sous forme de clone dans le parc informatique.
J’ai donc trouvé cet outil. C’est l’outil “Sysprep” pour “System Preparation” qui permet, une fois une machine installée, de purger la base de registre et le magasin de Microsoft pour en extraire les valeurs correspondantes au matériel.
Ici nous allons détourner son utilisation afin de changer d’ordinateur ou de matériel sans changer de système.
Procédure
Uniquement pour Windows 7.
A ne faire qu’une fois la sauvegarde de votre système effectué correctement, sur support externe comme un disque dur externe ou une clé USB.
Donc démarrez votre Windows sur votre ancien matériel, allez dans le menu démarrer. Dans le champ recherche, tapez “cmd” et entré.
Vous voici dans l’invite de commande.
tapez :
cd c:\Windows\System32\Sysprep\
vous êtes maintenant dans le dossier du sysprep et vous devriez voir :
c:\Windows\System32\Sysprep>
maintenant vous allez taper :
> sysprep.exe -generalize -oobe
Une boite de dialogue va s’afficher pour lancer la purge de votre base de registre.
Une fois terminé, l’ordinateur va s’eteindre correctement.
Vous pouvez donc prendre votre disque dur système, et le transférer sur votre nouveau matériel.
Et maintenant priez. Priez très fort. Car il y a tout de même une chance que vous deviez réinstaller tout votre système.
Si le logo au dessus de “Démarrage de Windows” s’unifie et se forme correctement, et commence à pulser, c’est gagné, le chargement de la carte mère est en début de processus. Si ça plante après, c’est très certainement une autre partie de votre matériel qui déconne.
Au démarrage, il va démarrer comme un système tout neuf, vous demander un nom d’utilisateur et de machine :
PAS DE PANIQUE
Votre/Vos utilisateur(s) existe(nt) toujours, d’ailleurs si vous cherche à mettre un pseudonyme identique à celui que vous utilisez, il va vous envoyer péter disant qu’il est déjà pris, ce qui était pour moi, dans un moment de panique, un putin de bon signe. Une fois ce passage passé, le système va créer une nouvelle base de registre pour le matériel, et inscrire les partie effacée par le sysprep.
Il me semble qu’il y a un redémarrage et Tadaaa, votre session, vos fichiers et vos programmes sont de retours.
La suite
Sachez qu’après une telle opération, je conseille de faire quand même une défrag et un check disk, pour éviter que la vitesse de votre nouveau matériel ne pâtisse de la fragmentation désastreuse des systèmes microsoft =).
Sachez aussi que votre version de Windows ne sera plus considérée comme activée, il vous faudra donc faire clic droit sur “ordinateur” dans le menu démarré, propriété, et à descendre tout en bas de la page pour le réactiver.
https://twitter.com/#!/Nakou/media/slideshow?url=pic.twitter.com%2Fri98nH8Q
https://twitter.com/#!/Nakou/media/slideshow?url=pic.twitter.com%2FXGAeqPwU
Voila, votre système fonctionne, nous vous souhaitons, moi, Sykrim et ma grosse bestiole, bonne continuation, et à bientôt pour un nouvel article!
Je suis quelqu’un qui débat. Je débat sur tout et n’importe quoi, parce qu’il m’importe de faire passer des idées. Au delà de tout débat politique que je pourrai tenir, dans d’autres lieux que ce blog consacré à l’informatique, je veux ici aborder une idée reçue :
“Linux, ça sert a rien! Rien ne tourne dessus et c’est compliqué à utiliser!”
Cette phrase, je l’entends maintes fois prononcés par des utilisateurs déçus, des néophytes écurés par la complexité apparente des systèmes linux, souvent due à l’idée véhiculé par les médias. Elle est aussi prononcé parfois par des ignorants, mais ceux là sont pardonné par leur inculture totale du sujet. Ceux là je les ignore et les méprises, car ils n’ont pas fait l’effort, et donc méritent tout, sauf mon respect.
Dont panic! Linux is simple!*
Contrairement à l’idée que les gens s’en font, GNU/Linux, et la distribution issue de Debian, Ubuntu, sont aujourd’hui tellement simple que même votre grand mère pourrait l’utiliser.
Mais il y a un hic, et c’est là que les gens gueulent, c’est la difficulté de faire démarrer des éléments prévus pour Windows sur leur système Linux.
On pourrait se réjouir de la présence de Wine, qui permet tant bien que mal de faire démarrer quelques jeux, comme World of Warcraft, LoL et d’autres, en contrepartie de quelques efforts de configuration, qui sont, tout de même, de plus en plus assistés (notamment grâce à Winetricks). Le site de WineHQ annonce quand même plus de 5350 jeux supportés dont Skyrim en qualité “Gold et Platinium”, ce qui implique une gestion assez magistrale des jeux récents.
Au delà des jeux, c’est près de 12000 applications Microsoft que Wine peut faire tourner, avec plus ou moins de réussite, certes, mais quand même, ce n’est pas rien.
Mais maintenant, il y a quelque chose de vrai. Pour faire tourner un jeu sur Linux, il faut donc installer Linux + Wine + Dépendances + Eléments de Wine nécessaire au bon fonctionnement de jeu.
Comparativement à Windows, ou l’on insère le DVD, ou on télécharge le jeu (légalement bien sur), on prie pour que ça ne plante pas, et on joue.
Mais est-ce réellement la faute des utilisateurs?
Microsoft a gangrené le marché pendant 30 ans.
Il y a quelque chose que j’aimerai clarifier ici et briser pour certains une idée reçue : Ce n’est pas parce qu’un programme tourne sous GNU/Linux, qu’il est forcement gratuit, ou libre, ou Open source, qu’il respecte obligatoirement la License GPL. Certains programmes tournent sous copyright (même si ça déplais à Stallman) et coûtes des ronds. Ubuntu accueil d’ailleurs depuis la 11.10 des applications payantes dans sa logithèque en ligne. le business est donc possible sur Linux! Peut être même plus, compte tenu de l’économie réalisé par les consommateurs en se tournant vers un système d’exploitation entièrement gratuit.
Partant du principe qu’il existe donc un monde obéissant aux lois du capital dans l’univers du libre, que coûterait aux développeurs de jeux vidéo, pour compiler, compacter et sortir leurs jeux sur Linux?
Peut être un peu de temps, un peu d’argent, mais quand même, on ne dois pas le re-coder entièrement à ce que je sache! Rallonger d’un mois la sortie d’un jeu pour qu’ils soit portable sur tout les systèmes, c’est pourtant pas bien compliqué. Notch l’a compris en sortant un jeu multi-plateforme. De plus les langages propriétaires comme le C# seraient les seuls affectés par un manque de portabilité, mais on s’en fiche, c’est du Java! Y’a qu’a le transposer et lâcher définitivement le C# qui reste quand même une erreur colossale!
En plus pour le peu de jeu qui ont fait le choix du C#, une infime partie du panel de jeux actuellement sur le marché ne serait pas affectés.
Un effort commun
Mon propos est le suivant : Microsoft Windows, avec la sortie de sa version 8, va devenir de plus en plus privative : Contrôle totale sur la machine, désinstallation à distances des outils piratés, la menace d’un contrôle total sera peut être permanente sur ces systèmes, et les gens vont peut-être, je l’espère, avoir l’intelligence de chercher une alternative. Cette volonté qui viendra, j’en suis sur, de la part d’utilisateur aguerris mais pas forcement forcenés (je pense à ceux qui sont capables en temps normal de pirater un Photoshop CS5 en appliquant des patchs sur leur fichiers hosts) qui chercherons des solutions d’échapper aux contrôles, que ce soit par liberté de piratage, ou par envie d’être libre, tout simplement.
Il est pour moi donc important que la communauté des développeurs de jeux vidéos se mettent en ordre de marche pour assurer la portabilité des produits sur les plateformes GNU/Linux.
Valve Corporation, par le biais de Steam, avait suscité l’espoir en annonçant la sortie hypothétique d’un client Steam Linux, ouvrant ainsi la voie aux studios de pouvoir faire profiter aux utilisateurs de ce système, une partie de la bibliothèque dans laquelle ont retrouve une grande quantité des jeux PC actuel.
Il faut à tout pris soutenir et encouragé des projets de ce type, par le biais de sondages, et de réclamation pour montrer que le marché est là, et qu’il attend. il faut pousser aussi les autres, comme Origin pour EAGames, et des studios comme Ubisoft ,à lancer eux aussi la même initiative, et les pousser à sortir leurs jeux sous Linux.
Oui, ce billet est plus ou moins un appel, un appel d’un développeur et d’un joueur, tournant sous GNU/Linux depuis maintenant 5 ans, et qui aimerai beaucoup se débarrasser de Windows 7 sur son PC fixe, qu’il est obligé de lancer tout les jours pour jouer sur Steam :p.

*Pas de panique, Linux, c’est Simple!