Je comprends que la modification du nom d'hôte / nom de l'ordinateur pour une machine Windows (client ou serveur) nécessite un redémarrage. Je me rends compte qu'une fois le nom d'un ordinateur modifié, un nom d'ordinateur en attente est stocké dans le registre système et appliqué au prochain démarrage. Je n'ai pas pu trouver beaucoup de documentation technique sur exactement POURQUOI cela était nécessaire.
Quelqu'un peut-il, s'il vous plaît, m'indiquer dans la bonne direction sur les défis techniques derrière pourquoi un changement de nom d'hôte n'est pas complet sans redémarrage du système?
Réponses:
Vous n'avez pas besoin de redémarrer immédiatement après avoir renommé la machine ... mais ne vous attendez pas à ce que chaque service et fonction reprenne le nouveau nom.
Des éléments tels que les variables d'environnement système sont lus une fois, au démarrage du système. Si vous modifiez ces variables, les divers composants de Windows ne les reprendront pas avant d'être redémarrés. Certains de ces composants sont si profondément intégrés au système d'exploitation que vous pourriez aussi bien redémarrer l'ensemble du système d'exploitation.
De nombreux services et applications Windows, qu'ils soient écrits par Microsoft ou par des tiers, qui utilisent le nom d'hôte du système, ne le lisent généralement qu'une seule fois au démarrage et ne le lisent plus jamais.
Je sais que si j'écrivais une application qui lisait le nom d'hôte de la machine, il serait assez idiot de ma part de l'interroger périodiquement juste au cas où cela changerait.
Dans un système d'exploitation tel que Linux, vous voyez la même chose. Vous pouvez changer le nom d'hôte sans redémarrer, mais vous devez redémarrer certains composants très basiques du système afin de les faire reprendre le nouveau nom. Linux est plus modulaire que Windows, bien que Windows ait parcouru un long chemin en termes de modularité.
Une façon de détecter si un système Windows est en attente d'une opération de changement de nom d'ordinateur est de vérifier le registre. Si le contenu de
HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName
et
HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ActiveComputerName
ne sont pas identiques, cela signifie que le système a une opération de changement de nom en attente qui se terminera au prochain redémarrage du système.
la source
Voici un script pour ignorer le redémarrage: https://gist.github.com/timnew/2373475
la source