Optimiser Windows 7 pour le VDI

Categories: Sysadmin, Windows 7
Tags: No Tags
Comments: 2 Comments
Published on: 12 octobre 2011

 

Les bureaux virtuels, quelle belle idée!  Tout centraliser dans une salle de serveurs pleine de chiens de garde et de lions affamés (qui ne doivent pas manger les chiens, mais là je m’égare) et fini les appels de service pour le support matériel des PC! Un petit client léger et magie! avec un réseau solide tout est faisable.

Bon en rétrospective, l’idée semblait superbe et d’une simplicité désarmante en 2008 quand j’ai entendu parler de ça dans une présentation de VMware, mais rien n’est si simple que ça!

Je n’ai pas eu réellement l’occasion de tester les solutions des grands développeurs comme Citrix, Microsoft ou VMware, mais je garde l’oeil ouvert et la souris svelte pour m’informer de ce qui concerne cette technologie.  J’ai donc décidé de vous présenter quelques ressources trouvées ça et là sur les Internets pour optimiser l’OS Windows 7 de Microsoft en mode bureau virtuel (ou VDI pour les intimes).

Tout d’abord, la première ressource pertinente est de Microsoft (surprise!) qui recense diverses solutions et suggestions sur le sujet:

List of Resources on Windows 7 Optimization for VDI

Ensuite, pour une solution simple et sans tracas, Quest, développeur de logiciels pour l’écosystème Microsoft, nous propose sur son forum un petit utilitaire à utiliser à ses risques et périls (gratuit = pas de support généralement!) et c’est le vWorkspace Desktop Optimizer.  Je l’ai testé sur une VM Windows 7 qui tourne sur mon serveur Hyper-V R2 chez moi et bien que je n’ai pas pu mesurer l’impact, je n’ai vu aucun impact négatif.

Comme j’aime bien VMware et que leur documentation est généralement très complète, je suis allé consulter leur suggestions (à partir du site de Microsoft) et j’y ai trouvé un script « tout simple » qui applique les recommandations de leur document de référence.  Je vous ne vous énumérerez pas tout le bataclan, mais voici les lignes de commandes suggérées:

rem  Setting Default HKCU values by loading and modifying the default user registry hive
 reg load "hku\temp" "%USERPROFILE%\..\Default User\NTUSER.DAT"
 reg ADD "hku\temp\Software\Policies\Microsoft\Windows\Control Panel\Desktop" /v SCRNSAVE.EXE /d "%windir%\system32\scrnsave.scr" /f
 reg ADD "hku\temp\Software\Policies\Microsoft\Windows\Control Panel\Desktop" /v ScreenSaveTimeOut /d "600" /f
 reg ADD "hku\temp\Software\Policies\Microsoft\Windows\Control Panel\Desktop" /v ScreenSaverIsSecure /d "1" /f
 reg ADD "hku\temp\Software\Microsoft\Windows\CurrentVersion\Policies\System" /v Wallpaper /d " " /f
 reg ADD "hku\temp\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Cache" /v Persistent /t REG_DWORD /d 0x0 /f
 reg ADD "hku\temp\Software\Microsoft\Feeds" /v SyncStatus /t REG_DWORD /d 0x0 /f
 reg ADD "hku\temp\Software\Microsoft\WIndows\CurrentVersion\Policies\Explorer" /v HideSCAHealth /t REG_DWORD /d 0x1 /f
 reg unload "hku\temp"
rem Making modifications to the HKLM hive
 reg ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Internet Explorer\Main" /v DisableFirstRunCustomize /t REG_DWORD /d 0x1 /f
 reg ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters" /v EnableSuperfetch /t REG_DWORD /d 0x0 /f
 reg ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" /v NoAutoUpdate /t REG_DWORD /d 0x1 /f
 reg ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\SystemRestore" /v DisableSR /t REG_DWORD /d 0x1 /f
 reg ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Disk" /v TimeOutValue /t REG_DWORD /d 200 /f
 reg ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Image" /v Revision /t REG_SZ /d 1.0 /f
reg ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Image" /v Virtual /t REG_SZ /d Yes /f
 reg ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\eventlog\Application" /v MaxSize /t REG_DWORD /d 0x100000 /f
 reg ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\eventlog\Application" /v Retention /t REG_DWORD /d 0x0 /f
 reg ADD "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Network\NewNetworkWindowOff" /f
 reg ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\eventlog\System" /v MaxSize /t REG_DWORD /d 0x100000 /f
 reg ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\eventlog\System" /v Retention /t REG_DWORD /d 0x0 /f
 reg ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\eventlog\Security" /v MaxSize /t REG_DWORD /d 0x100000 /f
 reg ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\eventlog\Security" /v Retention /t REG_DWORD /d 0x0 /f
 reg ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl" /v CrashDumpEnabled /t REG_DWORD /d 0x0 /f
 reg ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer" /v NoRecycleFiles /t REG_DWORD /d 0x1 /f
 reg ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0x0 /f
 reg ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v UserAuthentication /t REG_DWORD /d 0x0 /f
 reg ADD "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\policies\system" /v EnableLUA /t REG_DWORD /d 0x0 /f
 reg Add "HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Sideshow" /v Disabled /t REG_DWORD /d 0x1 /f
rem Using Powershell to perform Windows Services modifications
 Powershell Set-Service 'BDESVC' -startuptype "disabled"
 Powershell Set-Service 'wbengine' -startuptype "disabled"
 Powershell Set-Service 'DPS' -startuptype "disabled"
 Powershell Set-Service 'UxSms' -startuptype "disabled"
 Powershell Set-Service 'Defragsvc' -startuptype "disabled"
 Powershell Set-Service 'HomeGroupListener' -startuptype "disabled"
 Powershell Set-Service 'HomeGroupProvider' -startuptype "disabled"
 Powershell Set-Service 'iphlpsvc' -startuptype "disabled"
 Powershell Set-Service 'MSiSCSI' -startuptype "disabled"
 Powershell Set-Service 'swprv' -startuptype "disabled"
 Powershell Set-Service 'CscService' -startuptype "disabled"
 Powershell Set-Service 'SstpSvc' -startuptype "disabled"
 Powershell Set-Service 'wscsvc' -startuptype "disabled"
 Powershell Set-Service 'SSDPSRV' -startuptype "disabled"
 Powershell Set-Service 'SysMain' -startuptype "disabled"
 Powershell Set-Service 'TabletInputService' -startuptype "disabled"
 Powershell Set-Service 'Themes' -startuptype "disabled"
 Powershell Set-Service 'upnphost' -startuptype "disabled"
 Powershell Set-Service 'VSS' -startuptype "disabled"
 Powershell Set-Service 'SDRSVC' -startuptype "disabled"
 Powershell Set-Service 'WinDefend' -startuptype "disabled"
 Powershell Set-Service 'WerSvc' -startuptype "disabled"
 Powershell Set-Service 'MpsSvc' -startuptype "disabled"
 Powershell Set-Service 'ehRecvr' -startuptype "disabled"
 Powershell Set-Service 'ehSched' -startuptype "disabled"
 Powershell Set-Service 'WSearch' -startuptype "disabled"
 Powershell Set-Service 'wuauserv' -startuptype "disabled"
 Powershell Set-Service 'Wlansvc' -startuptype "disabled"
 Powershell Set-Service 'WwanSvc' -startuptype "disabled"
rem Making miscellaneous modifications
 bcdedit /set BOOTUX disabled
 vssadmin delete shadows /All /Quiet
 Powershell disable-computerrestore -drive c:\
 netsh advfirewall set allprofiles state off
 powercfg -H OFF
 net stop "sysmain"
 fsutil behavior set DisableLastAccess 1
rem Making modifications to Scheduled Tasks
 schtasks /change /TN "\Microsoft\Windows\Defrag\ScheduledDefrag" /Disable
 schtasks /change /TN "\Microsoft\Windows\SystemRestore\SR" /Disable
 schtasks /change /TN "\Microsoft\Windows\Registry\RegIdleBackup" /Disable
 schtasks /change /TN "\Microsoft\Windows Defender\MPIdleTask" /Disable
 schtasks /change /TN "\Microsoft\Windows Defender\MP Scheduled Scan" /Disable
 schtasks /change /TN "\Microsoft\Windows\Maintenance\WinSAT" /Disable

Le tout disponible dans ce document ici

Et finalement des recommandations plus difficilement « scriptable » qui me semblent pertinente:

  • Enlever périphérique virtuels à deux endroits: dans la config de la VM et ensuire dans le BIOS, onglet Advanced, I/O Device Configuration et désactiver floppy, COM et Parallel port
  • Enlever les son windows
  • UAC à « never notify »
  • Désactiver la protection système: les propriétés de Ordinateur, Paramètres systèmes avançés, onglet Protection du Système
  • Désactiver recherche de programmes de dépannage et résolutions de problème: Panneau de Configuration, Résolution des problèmes, Modifier les Paramètres, décocher les deux cases dans « Autres paramètres »
  • Option performance graphique à « best performance »: les propriétés de Ordinateur, Paramètres systèmes avançés, onglet Paramètres système avançés, bouton Paramètres
  • Désactiver « Computer Maintenance »: Panneau de Configuration, Résolution des problèmes, Modifier les Paramètres
  • Désactiver les services réseaux non-nécessaire comme TCP/IP v6
  • Mettre le fond d’écran à une couleur unique pleine
  • Désactiver le fond d’écran
  • Désinstaller le composant « Tablet PC », service XPS et visionneuse XPS: Panneau de Configuration, Programmes et fonctionnalités, Activer ou désactiver des fonctionnalités Windows
  • Mettre les Options d’alimentation à Haute Performance et ne jamais mettre en veille
  • Désactiver l’index sur C: Propriétés du disque C: et décocher la case « Autoriser l’indexation du contenu des fichiers de ce lecteur en plus des propriétés de fichier »
  • Dans msconfig.exe, onglet Démarrer, cocher « Ne pas démarrer la GUI »
  • Configurer les Mises à jour pour ne jamais rechercher

Je crois bien que ça fait le tour pour l’instant, si jamais je trouve quelque chose d’autre, je vous en informerai.  En attendant profitez de l’information et faites vos tests en laboratoire pour valider, c’est ma première règle: « Soyez sceptique et validez en laboratoire ».

No TweetBacks yet. (Be the first to Tweet this post)
2 Comments
  1. Merci mr.Papineau pour le contenu très instructif. Je vais tester les modifications recommandées.

  2. tr3000i dit :

    Great! thanks for the share!
    Arron

  1. quoted on sentence dit :

    sentence…

    Optimiser Windows 7 pour le VDI | Auxilia.info…

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*

Welcome , today is mercredi, 11 décembre 2019