Archives mensuelles : janvier 2017

Renommer un utilisateur et son dossier associé

Je suis parvenu à faire un changement d’identifiant et de dossier complet. L’idée est de voir à moyen  terme si on peut faire pointer un compte sur le dossier d’un utilisateur différent,  ou si on peut recréer un nouvel utilisateur et pointer vers un ancien dossier.

Commençons par ce simple exercice de double renommage : il y a probablement plus simple, mais voilà comment j’ai fait.

1. Point de départ :

J’utilise un compte test qui est associé au dossier /users/test. Le but est de tout transformer en « testbis« .

départ

2. Activation du compte administrateur caché (cmd en admin)

La commande est classique et connue :

net user administrateur /active:yes

départ

3. Passage au compte admin caché

Je déconnecte ma session « test » par shutdown /l et je me connecte sur l’admin caché :

départ

4.Copie du dossier de l’utilisateur.

Je duplique (via la commande robocopy lancée par une console cmd en admin) le dossier /users/test en /users/testbis

(Je choisis de faire une copie pour le cas où ça planterait). C’est en principe inutile.

L’option /mir signifie « miroir » et l’option /xj exclut les points de jonction.

départ

Longue liste de fichiers copiés :

départ

Sinon, dans la plupart des cas, un simple renommage du dossier de l’utilisateur doit suffire :

5.Modification du registre.

Je redirige le compte test vers le dossier /testbis nouvellement créé via la base de registre :

HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList

départ

6. Essai de la nouvelle redirection.

Je déconnecte l’administrateur caché, et je me connecte sur test pour voir si le dossier associé est bien /users/testbis. En effet, un fichier testbis.txt que je crée dans « mes documents » se retrouve bien dans le dossier /users/testbis.

départ

7.Renommage de test en testbis

Je renomme directement mon utilisateur test en testbis (j’aurais plutôt dû le faire depuis l’admin caché, car ça m’a planté le menu démarrer. Mais la commande shutdown /l a permis que je me déconnecte).

départ

Et, là je constate que mon compte a changé de nom :

départ

8. Résultat final.

Le compte testbis pointe bien vers le dossier /users/testbis:

départ

Le compte test pointant initialement vers /users/test s’appelle maintenant testbis, et il pointe vers /users/testbis. Il ne reste plus qu’à désactiver l’admin caché et la manipulation est terminée. Petit conseil : prévoir une console de réparation sur USB en cas de problème. J’ai eu à m’en servir durant mes essais ratés pour pouvoir contourner des blocages que j’ai provoqués.

Réparer intégralement le démarrage avancé sur Windows 7 – console Winre « réparer l’ordinateur »

Parfois, le démarrage avancé qu’on de Windows 7 peut être récalcitrant et ne pas vouloir afficher l’entrée « Réparer l’ordinateur » lorsqu’on a tapoté F8 au démarrage.  Voici un exemple :

depart

La console de réparation de W7 brille par son absence.

1. État des lieux depuis W7

Ici, en réalité, mon W7 avancé fonctionnait correctement. Un premier reagentc /info le montre.

Mais je le désactive volontairement avec la commande dans le but de le casser complètement:

 reagentc /disable

Et le résultat malheureux apparaît avec

reagentc /info

depart

Il suffit de comparer les deux reagentc /info pour voir la différence. On constate que je n’ai plus de fichier winre activé, et donc plus d’option « réparer l’ordinateur ». Il suffirait à ce stade de le réactiver, mais on va carrément supprimer le contenu complet dans Windows 7 dans le but de le refaire à neuf.

2. Suppression des dossiers de la console de réparation.

L’option « réparer l’ordinateur » est stockée dans deux endroits différents: pour bien voir les dossiers et leur contenu, il est préférable d’afficher les fichiers cachés et systèmes: chose faite ici :

fichierscachés

Dans le menu de l’explorateur de fichiers, on choisit « outils > option des dossiers » : on sélectionne et  décoche les options de masquage.

2.1 Suppression de C:/recovery

L’affichage des fichiers cachés et systèmes permet de voir le disque C ainsi :

suppressiion-recovery

Je supprime tout simplement le dossier c:/recovery avec son contenu. D’où le résultat :

suppression-recovery-faite

On constate que le dossier a bel et bien disparu de la racine de mon disque.

2.2.  Suppression du dossier c:/windows/system32/recovery

C’est le second dossier gérant le démarrage avancé. On le supprime de la même manière. On voit ici le résultat.

suppression-system32-recovery-faite

Important. On aura tout intérêt à récupérer au préalable dans ce dossier les fichiers winre.wim et reagent.xml pour réparer le démarrage avancé, car sinon, il faudra les récupérer dans le fichier install.wim du DVD d’installation (voir plus bas).

A ce stade, je n’ai absolument plus rien… On ne peut pas casser plus les choses.

3. Recréation des dossiers vierges C:/recovery et c:/windows/system32/recovery

On recrée les mêmes dossiers aux mêmes endroits pour notre future console winre.

recovery-vide

On voit ici les dossiers vides après leur création.

4. Création du fichier xml dans c:/windows/system32/recovery

On  peut facilement récupérer le fichier reagent.xml sur le DVD d’installation. Mais on peut aussi partir comme moi d’un fichier vierge qu’on complète avec le contenu suivant :

<?xml version='1.0' encoding='utf-8' standalone='yes'?>
<WindowsRE version="1.0">
    <WinreBCD id=""></WinreBCD>
    <WinreLocation path="" id="0" offset="0"></WinreLocation>
    <ImageLocation path="" id="0" offset="0"></ImageLocation>
    <OsInstallLocation path="" id="0" offset="0"></OsInstallLocation>
    <InstallState state="0"></InstallState>
    <OsInstallAvailable state="0"></OsInstallAvailable>
    <WinREStaged state="0"></WinREStaged>    
    <ScheduledOperation state="4"></ScheduledOperation>
    <OperationParam path=""></OperationParam>
    <OsBuildVersion path=""></OsBuildVersion>
    <OemTool state="0"></OemTool>
    <BootKey state="0"></BootKey>
</WindowsRE>

On crée un fichier reagent.txt qu’on pourra renommer en reagent.xml . On voit ici le processus :

reagen-txt

J’ai choisi d’en faire une copie et de garder le fichier txt pour un autre usage. Il ne reste qu’à copier le fichier winre.wim que j’avais sauvé préalablement dans un dossier c:/recup. Si on ne l’a plus, on ouvre le fichier sources/install.wim sur le DVD d’installation avec 7zip ou Winrar et on le cherche dans le dossier 1/windows/system32/recovery.  On y trouvera aussi un reagent.xml tout neuf.

La manipulation se fait comme suit :

copie-winre

5. Les commandes de réparation de winre.

On réaffecte Winre.wim au système par la commande:

reagentc /setreimage /path C:\windows\system32\recovery

On réactive reagent via la commande

reagentc /enable

On vérifie que tout s’est bien passé :

reagentc /info

Le résultat est le suivant : on constate qu’un dossier avec un nom étrange s’est créé, mais que notre console winre est bien de nouveau activée.

setreimage

6. Test du démarrage avancé.

On tapote F8 et le résultat est le suivant :

setreimage

On a bien récupéré notre entrée perdue.  Cette démo s’inspire en partie de ce document qui m’a aidé à comprendre les différences avec W8 /W10 :

https://www.winhelp.us/restore-windows-re.html