Por que a alteração do nome do computador requer uma reinicialização no Windows?

30

Entendo que a alteração do nome do host / nome do computador para uma máquina baseada no Windows (cliente ou servidor) requer uma reinicialização. Eu percebo que uma vez que um nome de computador é alterado, um nome de máquina pendente é armazenado no registro do sistema e é aplicado na próxima inicialização. Não consegui encontrar muita documentação técnica sobre exatamente por que isso era necessário.

Alguém por favor pode me apontar na direção certa sobre os desafios técnicos por trás de por que uma alteração de nome de host não está completa sem uma reinicialização do sistema?

    
por Ameer Deen 18.08.2013 / 15:37

2 respostas

56

Você não precisa reiniciar imediatamente após renomear a máquina ... apenas não espere que todos os serviços e funções captem o novo nome.

Coisas como variáveis de ambiente do sistema são lidas uma vez, na inicialização do sistema. Se você alterar essas variáveis, os vários componentes do Windows não serão recuperados até que sejam reiniciados. Alguns desses componentes estão tão profundamente integrados com o SO, assim você pode reiniciar todo o sistema operacional.

Muitos serviços e aplicativos do Windows, tanto aqueles escritos pela Microsoft quanto por terceiros, que usam o nome do host do sistema, normalmente só o leem uma vez na inicialização e nunca o lêem novamente.

Eu sei que se eu estivesse escrevendo um aplicativo que lesse o nome do host da máquina, seria muito bobo da minha parte fazer uma pesquisa periódica para o caso de ter mudado.

Em um sistema operacional como o Linux, você vê a mesma coisa. Você pode alterar o nome do host sem reinicializar, mas é necessário reiniciar alguns componentes básicos do sistema para fazer com que eles escolham o novo nome. O Linux é mais modular que o Windows, embora o Windows tenha percorrido um longo caminho em termos de modularidade.

Uma maneira de detectar se um sistema Windows está pendente de uma operação de renomeação de computador é verificar o registro. Se o conteúdo de

HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName

e

HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ActiveComputerName

não são os mesmos, o que significa que o sistema tem uma operação de renomeação pendente que será concluída na próxima vez em que o sistema for reinicializado.

    
por 18.08.2013 / 16:04
0

Aqui está um script para pular a reinicialização: link

    
por 26.10.2015 / 23:35