Transférer les données d’un utilisateur d’un PC à un autre par le réseau par script Robocopy

Transférer les données d’un utilisateur d’un PC à un autre par le réseau par script Robocopy

Transférer les données d’un utilisateur d’un PC à un autre par le réseau par script Robocopy

Aucun commentaire sur Transférer les données d’un utilisateur d’un PC à un autre par le réseau par script Robocopy 127 views

Quand on est technicien , on doit souvent aller vite pour changer un PC d’un utilisateur, ce qui implique que le transfert des données doit se faire d’un PC à l’autre via le réseau et non pas backup vers un disque dur ou autre support , puis restore depuis le disque vers le nouveau PC , avec un utilitaire ou windows explorer.

Deuxio, l’outil de copie de windows explorer de windows 10 ou d’avant , est une vraie plaie , ne permet pas le resume et est très lent en plus, pas de log etc…

Tertio quoi sauvegarder ? Il faut identifier où windows planque certaines données. Depuis Windows 10 , Microsoft ne nous aide pas, ainsi Edge et d’autres logiciels proprio utilisent des bases de données non compatibles entre les version de windows, par exemple les favoris edge entre windows 1803 et 1903, un scandale !!! Ah oui, bien sûr y a leur outil de synchro, bonjour le captage d’informations pour microsoft !!!

Finalement , je vais vous proposer 2 méthodes, un script robocopy réseau à exécuter depuis le nouveau PC , et un robocopy avec barre de progression en powershell à exécuter depuis un autre PC, permettant de rendre le nouveau PC à l’utilisateur sans interrompre son travail.

Identifier ce qu’il faut copier

On va partir de cette liste que vous pouvez modifier selon vos besoins et vos applications , avec je vous ai mis le chemin windows correspondant

Les Fichiers *.PST de Outlook
c:\users\%USERNAME%\appdata\local\microsoft\outlook

Les Signatures de Outlook
c:\users\%USERNAME%\appdata\roaming\microsoft\Signatures

Copie du dossier de saisie semi-automatique des contacts Outlook


Les modèles de fichiers Word
c:\users\%USERNAME%\appdata\roaming\Microsoft\Templates

Les dossiers Mes documents, ma musique, mes vidéos, mes photos, téléchargements, contacts windows,
c:\users\%USERNAME%\desktop
c:\users\%USERNAME%\Favorites
c:\users\%USERNAME%\documents
c:\users\%USERNAME%\pictures
c:\users\%USERNAME%\videos
c:\users\%USERNAME%\downloads
c:\users\%USERNAME%\music
c:\users\%USERNAME%\Contacts

Le fond d’écran de l’ordinateur

Les favoris de Google Chrome, à noter les guillemets pour ce rep avec un espace
« c:\users\%USERNAME%\AppData\Local\Google\Chrome\User Data\Default »

Les données de Firefox
c:\users\%USERNAME%\appdata\local\mozilla\firefox
c:\users\%USERNAME%\appdata\roaming\mozilla\firefox

Les Sticky Notes ou post it, pareil en changeant de version Windows
c:\users\%USERNAME%\AppData\Local\Packages\Microsoft.MicrosoftStickyNotes_8wekyb3d8bbwe\LocalState

les quicks Links windows explorer, la copie ne donne pas toujours succés , il faut redémarre l’explorer après
c:\users\%USERNAME%\appdata\Roaming\Microsoft\Windows\Recent\automaticdestinations

les favoris EDGE uniquement si transfert vers même version de windows
c:\users\%USERNAME%\AppData\local\Packages\Microsoft.MicrosoftEdge_8wekyb3d8bbwe\AC\MicrosoftEdge\User\Default\DataStore

Les données locales Onedrive, facultatif
c:\users\%USERNAME%\OneDrive

Il faudra exporter les certificats d’encryption dans certmgr.msc, rep personnel, les imprimantes à refaire, les mappages drives. NTUSER.dat à la racine contient la base de registres HKEY_current_user, mais pour ne pas corrompre le nouveau pc, ne pas la copier.

Le script robocopy

Ce script suppose que vous êtes connecté depuis le nouveau Pc avec le même nom d’utilisateur, que vous avez un compte administrateur local de l’ancien PC; il sera demandé si différent de l’utilisateur, que vous lancez ce script depuis le nouveau pc , que le répertoire du script contient l’exe de robocopy, que si vous avez des version différentes de W10 tout ne fonctionnera pas, que si les PCs sont sur un domaine on devra éxécuter ce script étant connectés sur le domaine, que vous pouvez customiser le nom de l’imprimante réseau à réinstaller sur le nouveau(on ne cherche pas à copier les imprimantes).

Ce script est plutôt dédié en entreprise mais pour votre pc perso ça marchera, attention au nom d’utilisateur identique requis.

rem script copie des donnees vers poste source V4 @jm saillio
rem V3 ajout stickynotes
REM V4 ajout copie templates

SET datetime=%time:~6,2%

set /p source="Entrez le nom PC SOURCE: "
set currentpath=%~dp0

REM passage en admin local pour taper le poste distant
net use M: \\%source%\c$

REM test si profil existant
if NOT EXIST "\\%source%\c$\users\%USERNAME%\*.*"  goto eject

if NOT EXIST "c:\temp\"  mkdir "c:\temp"



REM COPIE profil utilisateur

%currentpath%\robocopy.exe "\\%source%\c$\users\%USERNAME%\desktop" "%USERPROFILE%\desktop" /XO /FFT /S /XA:H /R:1 /W:1 /NP /LOG:"c:\temp\LoG_Bureau-%datetime%.txt"
%currentpath%\robocopy.exe "\\%source%\c$\users\%USERNAME%\Favorites" "%USERPROFILE%\Favorites" /XO /FFT /S /XA:H /R:1 /W:1 /NP /LOG:"c:\temp\LoG_Favoris-%datetime%.txt"
%currentpath%\robocopy.exe "\\%source%\c$\users\%USERNAME%\documents" "%USERPROFILE%\documents" /XO /FFT /S /XA:H /R:1 /W:1 /NP /LOG:"c:\temp\LoG_Mes_documents-%datetime%.txt"
%currentpath%\robocopy.exe "\\%source%\c$\users\%USERNAME%\pictures" "%USERPROFILE%\pictures" /XO /FFT /S /XA:H /R:1 /W:1 /NP /LOG:"c:\temp\LoG_Mes_images-%datetime%.txt"
%currentpath%\robocopy.exe "\\%source%\c$\users\%USERNAME%\videos" "%USERPROFILE%\videos" /XO /FFT /S /XA:H /R:1 /W:1 /NP /LOG:"c:\temp\LoG_Mes_videos-%datetime%.txt"
%currentpath%\robocopy.exe "\\%source%\c$\users\%USERNAME%\downloads" "%USERPROFILE%\downloads" /XO /FFT /S /XA:H /R:1 /W:1 /NP /LOG:"c:\temp\LoG_Mes_download-%datetime%.txt"
%currentpath%\robocopy.exe "\\%source%\c$\users\%USERNAME%\music" "%USERPROFILE%\music" /XO /FFT /S /XA:H /R:1 /W:1 /NP /LOG:"c:\temp\LoG_Mes_music-%datetime%.txt"

REM backup outlook
%currentpath%\robocopy.exe "\\%source%\c$\users\%USERNAME%\appdata\local\microsoft\outlook" "%USERPROFILE%\appdata\local\microsoft\outlook"  *.pst  /FFT /XA:H /R:1 /W:1 /NP /LOG:"c:\temp\LoG_appdata-outlook%datetime%.txt"
%currentpath%\robocopy.exe "\\%source%\c$\users\%USERNAME%\appdata\roaming\microsoft\Signatures" "%USERPROFILE%\appdata\roaming\microsoft\Signatures" /S /FFT /XO /XA:H /R:1 /W:1 /NP /LOG:"c:\temp\LoG_appdata-%datetime%.txt"


REM FAVORITES DE TOUS LES BROWSER -------------------------------------------------
REM copie raccourcis rapides explorer
%currentpath%\robocopy.exe "\\%source%\c$\users\%USERNAME%\appdata\Roaming\Microsoft\Windows\Recent\automaticdestinations" "%USERPROFILE%\appdata\Roaming\Microsoft\Windows\Recent\automaticdestinations" /S /FFT /XO /XA:H /R:1 /W:1 /NP


REM backup FIREFOX
%currentpath%\robocopy.exe "\\%source%\c$\users\%USERNAME%\appdata\local\mozilla\firefox" "%USERPROFILE%\appdata\local\mozilla\firefox" /S /XD "cache2" /FFT /XO /XA:H /R:1 /W:1 /NP 
%currentpath%\robocopy.exe "\\%source%\c$\users\%USERNAME%\appdata\roaming\mozilla\firefox" "%USERPROFILE%\appdata\roaming\mozilla\firefox" /S /FFT /XO /XA:H /R:1 /W:1 /NP
REM creer un nouveau profil et choisir fichiers et prendre le profil daté le plus récent firefox -p

REM copie chrome favorites
%currentpath%\robocopy.exe "\\%source%\c$\users\%USERNAME%\AppData\Local\Google\Chrome\User Data\Default" "%USERPROFILE%\AppData\Local\Google\Chrome\User Data\Default" /XO /FFT /XA:H /R:1 /W:1 /NP

REM copie edge favorites
%currentpath%\robocopy.exe "\\%source%\c$\users\%USERNAME%\AppData\local\Packages\Microsoft.MicrosoftEdge_8wekyb3d8bbwe\AC\MicrosoftEdge\User\Default\DataStore" "%USERPROFILE%\AppData\local\Packages\Microsoft.MicrosoftEdge_8wekyb3d8bbwe\AC\MicrosoftEdge\User\Default\DataStore" /S /FFT /XO /XA:H /R:1 /W:1 /NP

REM fin Browser--------------------------------------------------------------------

REM copie sticky notes
if EXIST "\\%source%\c$\users\%USERNAME%\AppData\Local\Packages\Microsoft.MicrosoftStickyNotes_8wekyb3d8bbwe\LocalState" xcopy "\\%source%\c$\users\%USERNAME%\AppData\Local\Packages\Microsoft.MicrosoftStickyNotes_8wekyb3d8bbwe\LocalState\plum.sqlite" "%USERPROFILE%\appdata\local\Packages\Microsoft.MicrosoftStickyNotes_8wekyb3d8bbwe\LocalState\" /y

REM copie templates microsoft
%currentpath%\robocopy.exe "\\%source%\c$\users\%USERNAME%\appdata\roaming\Microsoft\Templates" "%USERPROFILE%\appdata\roaming\Microsoft\Templates" /S /FFT /XO /XA:H /R:1 /W:1 /NP

REM copie Onedrive
REM %currentpath%\robocopy.exe "\\%source%\c$\users\%USERNAME%\OneDrive - AKKA" "%USERPROFILE%\OneDrive - AKKA" /S /FFT /XO /XA:H /R:1 /W:1
 
REM fichier notes.ini
xcopy ""\\%source%\c$\Program Files (x86)\IBM\Notes\notes.ini" "C:\temp\" /y  
xcopy "\\%source%\c$\Program Files (x86)\lotus\Notes\notes.ini" "C:\temp\" /y
xcopy "\\%source%\c$\Program Files (x86)\IBM\lotus\Notes\notes.ini" "C:\temp\" /y

REM recup imprimantes
start \\mon-impreseau.example.com\IMP
RUNDLL32 PRINTUI.DLL,PrintUIEntry /y /n "\\mon-impreseau.example.com\IMP" 

net use M: /D
echo "c est fini"
pause

exit

:eject
echo "pas de profil a larrivee identique"
pause

A suivre le script powershell distant

About the author:

Ingénieur ENSEA, Manager IT Support pour des grands comptes Fondateur du site frenchytech

Laisser un commentaire

retour en haut