Disque saturé à cause du répertoire de temporaires Windows

Si comme moi vous avez un système Windows dont le disque dur principal se remplit à vue d’œil alors qu’il n’est pas censé le faire, sachez qu’il est potentiellement possible de remédier à ce problème.

Il est possible dans un premier temps de vérifier via un utilitaire comme TreeFileSize comment sont répartis les fichiers sur le disque dur. Dans mon cas, sur un disque dur de 80 Go, le répertoire « Temp » présent dans « C:\Windows » occupait 65Go ! Dedans, plein de fichiers CAB de 150 Mo environ …

Visiblement, d’après quelques recherches Internet, la raison provient du fichier « C:\Windows\logs\cbs\cbs.log » qui a atteint 2 Go ou plus. Lors de l’utilisation de la commande makecab, celle-ci plante à chaque fois, créant une archive incomplète ajouté à « C:\Windows\temp »

Pour supprimer ces fichiers indésirables, il faut :

  • Aller dans le répertoire « C:\Windows\logs\ »
  • Supprimer tous les fichiers se terminant par l’extension *.log
  • Aller dans le répertoire « C:\Windows\temp\ »
  • Supprimer tous les fichiers

Sources :
https://support.solarwindsmsp.com/kb/solarwinds_rmm/C-Windows-Temp-is-full-of-cab-files

Désinstaller des logiciels en mode sans échec

En mode sans échec, sans le service Windows Installer lancé, il est difficile de désinstaller des programmes.

Pour le mettre en route, il faut :

  1. Ajouter une clé dans le registre Windows
    reg add "HKLM\SYSTEM\CurrentControlSet\Control\SafeBoot\Network\MSIServer" /ve /t REG_SZ /f /d "Service"
  2. Démarrer l’ordinateur en mode sans échec (appuyer sur la touche F8 de votre clavier au moment du démarrage de l’ordinateur)
  3. Démarrer le service MSIServer si ce n’est pas déjà le cas
    net start msiserver

A présent, les programmes devraient être supprimables via « Ajout/Suppression de programmes » ou bien directement via les exécutables de désinstallation. Une fois terminé, on peut supprimer ces modifications pour revenir à l’état par défaut en :

  1. Arrêtant le service MSIServer
    net stop msiserver
  2. Supprimant la clé du registre Windows
    reg delete "HKLM\SYSTEM\CurrentControlSet\Control\SafeBoot\Network\MSIServer" /f
  3. En redémarrant normalement l’ordinateur

Sauvegarder l’activation d’Office

Si l’envie de sauvegarder l’activation d’Office 2010/2013 se fait sentir, il faut savoir que c’est facilement réalisable :
– via des logiciels dédiés comme OPA-Backup,
– via un simple copier/coller que la procédure ci-dessous explique.

Cela peut être utile si vous perdez votre clé de licence ou si vous souhaitez réactiver votre Office en mode hors ligne. Attention toutefois ! La restauration ne fonctionnera que sur l’ordinateur ayant activé officiellement Office – n’espérez pas l’activer une première fois et dupliquer la licence sur d’autres ordinateurs ensuite.

Pré-requis

Pour commencer, nous allons activer l’affichage des fichiers cachés dans l’explorateur de Windows. Pour cela, il faut :

  • Aller dans Organiser
  • Puis cliquer sur Option des dossiers et de recherche
  • Onglet Affichage
  • Sélectionner Afficher les fichiers, dossiers et lecteurs cachés
  • Cliquer sur Appliquer, puis OK

Afficher les options de l'explorateur Windows

Procédure de …

… Sauvegarde

En fonction du système d’exploitation de votre ordinateur, le lieu de stockage des fichiers d’activation Office change :

  • pour Windows 7, c’est tout le contenu du dossier « OfficeSoftwareProtectionPlatform » qu’il faut récupérer,
    C:\ProgramData\Microsoft\OfficeSoftwareProtectionPlatform
  • alors que pour Windows 8, il faut mettre de côté les deux fichiers suivants.
    C:\Windows\system32\spp\store\data.dat
    C:\Windows\system32\spp\store\tokens.dat

… Restauration

Pour procéder à la restauration, il est conseillé de passer en Mode sans échec (avec ou sans prise en charge du réseau). Une fois le système démarré, il suffit de restaurer les fichiers et/ou dossiers en lieu et place des actuels. Ceci fait, on peut redémarrer l’ordinateur et tenter de lancer un logiciel de la suite Office pour vérifier que l’activation est à nouveau effective.

Ajouter l’option 60 dans le DHCP d’un Windows Server pour faire du PXE

Le PXE (Pre-boot eXecution Environment) est un service permettant de véhiculer des images systèmes via le réseau Ethernet pour permettre à un ordinateur de démarrer. Derrière ce nom se cache deux services connus de tous : DHCP et TFTP. Ce système est utilisé par le rôle WDS (Windows Deployment Services) de Microsoft pour déployer une installation de Windows par le réseau.

Le serveur DHCP d’un Windows Server ne comporte pas l’option PXE dans la liste de ses options … Pour l’ajouter, il faut passer par de la ligne de commande au moyen de la commande « netsh ». Cela débloquera ensuite la fonction dans la console de gestion DHCP.

C:\WINDOWS\system32>netsh
dhcp
server \\<nom_de_la_machine>
add optiondef 60 PXEClient String 0 comment=PXE support
set optionvalue 60 STRING PXEClient
exit

Option PXE du serveur DHCP

Désinstaller une carte réseau fantôme sous Windows

Le retrait physique d’un périphérique ne désinstalle pas tous les composants logiciels qui lui sont associés, pilotes, logiciels et enregistrements registre restent donc présents sur l’ordinateur. Cela m’a posé problème lorsque j’ai voulu renommer une carte réseau, le nom « Connexion au réseau local » était déjà utilisé, mais la carte réseau n’était plus présente dans le Panneau de configuration. J’avais besoin de ce nom pour utiliser un script faisant appel à netsh. Même problème lorsque j’ai voulu affecter une adresse IP déjà assignée à une ancienne carte pourtant inexistante physiquement …

Voici une des méthodes donnée par Microsoft pour supprimer des cartes réseaux fantômes :

  1. Cliquez sur Démarrer, sur Exécuter, tapez cmd.exe, puis appuyez sur Entrée,
  2. Tapez set devmgr_show_nonpresent_devices=1, puis appuyez sur Entrée,
  3. Tapez devmgmt.msc, puis appuyez sur Entrée,
  4. Cliquez sur Affichage, puis sur Afficher les périphériques cachés,
  5. Développez l’arborescence de Cartes réseau,
  6. Cliquez avec le bouton droit sur la carte réseau en grisé, puis cliquez sur Désinstaller.

Lien utile

KB 269155 de Microsoft

Copie de repertoires via Robocopy sous Windows

Pour déplacer ou effectuer une copie de manière quasi automatisée, il faut savoir qu’il existe un outil pour Windows (non disponible sur toutes les versions, mais récupérable gratuitement en allant ici).

En fonction de votre système d’exploitation, il faudra se déplacer dans l’arborescence pour aller chercher le fameux exécutable sur votre système. Dans mon cas, il a fallu que je me déplace dans le répertoire « C:\Program Files\Windows Resource Kits\Tools » à l’aide la commande « cd » dans une invite de commande.

robocopy "F:\Public" "G:\Public" /e /COPYALL /r:1

Ici, le contenu du répertoire « F:\Public » se verra copié dans le répertoire « G:\Public ». Voici une description des options utilisées :

  • « /e » permet de rendre récursive la commande. Tout fichier ou dossier (même vide) sera copié,
  • « /COPYALL » va ajouter les propriétés des fichiers (heure, date, propriétaire, …),
  • « /r:1 » est une option qui permet de retenter la copie une fois si celle ci échoue.

Lien utile

Documentation détaillée via Technet

Renommer un nom de domaine Active Directory

Si un jour l’envie de renommer le nom de domaine Active Directory vous viens à l’idée, sachez que c’est possible. L’opération reste tout de même périlleuse, car si elle échoue, elle peut rendre le contrôleur de domaine inopérant et impacter les services l’utilisant …
Attention néanmoins si vous avez un serveur Microsoft Exchange, il semblerait que ce ne soit pas possible avec cette technique. N’ayant pas de serveur Exchange, je n’ai pas poussé les recherches, mais beaucoup de sites et de personnes mentionnent avoir rencontrés des problèmes de migration.

Rendom

Microsoft met à disposition un outil en ligne de commande pour nous faciliter la tâche dans cette migration, son nom : « rendom ». Il est déjà disponible dans les versions Windows Server 2008 et 2008 R2. Pour les autres, il faudra récupérer le fichier dans le CD d’installation de Windows Server 2003.

Fichiers Rendom

La commande qui suit a pour but de générer le fichier XML « Domainlist » suivant. Vous le trouverez dans le dossier indiqué par le prompt (dans mon cas « C:\Users\Administrateur\ »).
rendom /list

<?xml version ="1.0"?>
<Forest>
	<Domain>
		<!-- PartitionType:Application -->
		<Guid>90580e30-119d-4cc6-b7f9-1a0e2bf184dc</Guid>
		<DNSname>DomainDnsZones.entreprise.invalid</DNSname>
		<NetBiosName></NetBiosName>
		<DcName></DcName>
	</Domain>
	<Domain>
		<!-- PartitionType:Application -->
		<Guid>322ce353-89d9-41ea-ac9e-cf2abf0b1376</Guid>
		<DNSname>ForestDnsZones.entreprise.invalid</DNSname>
		<NetBiosName></NetBiosName>
		<DcName></DcName>
	</Domain>
	<Domain>
		<!-- ForestRoot -->
		<Guid>c9731862-a075-420c-8bee-f88e67474e9a</Guid>
		<DNSname>entreprise.invalid</DNSname>
		<NetBiosName>ENTREPRISE</NetBiosName>
		<DcName></DcName>
	</Domain>
</Forest>

Il faut remplacer toutes les occurrences mentionnant l’ancien nom de domaine par le nouveau (ici, j’ai remplacé « entreprise.invalid » par « entreprise.exemple »). Ceci fait, enregistrez le fichier et constater vos modifications via la commande suivante.
rendom /showforest

S’il y a bien concordance, nous allons pouvoir envoyer ce fichier au serveur.
rendom /upload

Nous préparons les contrôleurs de domaine pour le renommage. Chaque contrôleur servant le nom de domaine est contacté et mis en condition.
rendom /prepare

Lancement de la procédure de renommage.
rendom /execute

Le serveur va redémarrer automatiquement, laissez le faire.

Nous allons pouvoir terminer par réparer les liens des stratégies de groupe (GPOs) présents dans Active Directory …
gpfixup /olddns:entreprise.invalid /newdns:entreprise.exemple

… et si besoin la partie concernant NetBIOS si celui-ci change.
gpfixup /oldnb:entreprise.invalid/newnb:entreprise.exemple

Attention ! Cette ultime commande est à exécuter si et seulement si tous les postes ont pris en compte le changement ! Car elle a pour but de supprimer les redirecteurs de migration (« msDS-DnsRootAlias » et « msDS-UpdateScript ») de l’ancien domaine vers le nouveau listés dans Active Directory. Si cette commande est exécutée trop tôt, elle peut empêcher les postes d’ouvrir une session utilisateur, et il faudra refaire la jonction du poste au domaine …
rendom /clean

Vous pouvez maintenant aller dans la console de gestion DNS pour supprimer l’ancienne zone DNS devenue maintenant obsolète.

Liens utiles

Supprimer un service Windows

Tout d’abord, avant d’entrer dans le vif du sujet, commençons par une petite présentation de ce qu’est un service sous Windows (ou sous tout système d’exploitation d’ailleurs …). Un service est un programme n’ayant pas besoin d’une session utilisateur, ni même l’intervention d’un utilisateur, pour s’exécuter, il est « autonome ».

Ouvrez une « invite de commandes » en tant qu’Administrateur, elle nous servira tout au long de la procédure.

Nous allons ouvrir la console de gestions des services, en saisissant « services.msc » dans la console

La console va s’ouvrir et afficher une longue liste de services …

Nous allons nous intéresser à un service. Ici je vais prendre le service nommé « TomTomHOMEService » pour exemple.

Mémorisez bien le nom du service, car il va nous être utile dans quelques secondes. L’orthographe et la casse comptent 😉

Fermez cette fenêtre, et retournez dans la console pour y saisir la commande suivante :

[powershell]sc delete "TomTomHOMEService"[/powershell]

Le message suivant devrait attester de la réussite de l’opération. Pour être sûr, vérifiez dans la console des services et appuyant sur la touche F5 de votre clavier.