Os arquivos da área de trabalhoO Windows não inicializa!

Wes Miller

Conteúdo

Então, o que pode acontecer?
Ferramentas do negócio
O sistema operacional está ausente
O carregador de inicialização está ausente
O sistema é inicializado – em seguida, pára
Modo seguro do Windows e pontos de restauração
O sistema falha antes de o Windows concluir o carregamento
Última configuração boa conhecida
O sistema falha após a inicialização do Windows

Se você trabalha com o Windows há bastante tempo, é provável que já tenha visto ele falhar uma vez ou outra. Embora o Windows possa estar cada vez mais confiável em cada versão, há coisas que o Windows nem você podem controlar: falha de drivers, os sistemas são atingidos por faltas de energia elétrica, os arquivos são corrompidos e os discos travam. E quando isso ocorre, você se preocupa com o fato de precisar procurar uma máquina nova. Nesta coluna, analisarei coisas que podem dar errado em um sistema Windows e como você pode solucionar esses problemas para que sua máquina volte a funcionar.

Então, o que pode acontecer?

Depois de praticamente 20 anos de trabalho com o Windows, já vi minha cota razoável de sistemas que não inicializam. O culpado em geral pode ser localizado bem rapidamente – dependendo exatamente do que o sistema está fazendo. Vamos categorizar os sintomas que os sistemas do Windows mostrarão e acumular alguns casos para abordar a solução de problemas.

  • O sistema não executa um BIOS POST (teste automático ao ligar; ele não emitirá um alarme sonoro quando você ligar a energia).
  • O sistema realiza o teste, mas declara que o sistema operacional está ausente ou não foi localizado.
  • O sistema realiza o teste, mas falha com NTLDR ou BOOTMGR não localizado.
  • O sistema começa a iniciar, mas pára durante a inicialização.
  • O sistema começa a inicializar mas trava antes de a área de trabalho do Windows ser exibida (e fica preso em um loop).
  • O sistema acessa a área de trabalho do Windows, mas trava enquanto o Windows está em execução (e fica preso em um loop).

Esses cenários podem soar diferentes em termos gerais, mas, na verdade, há apenas alguns problemas comuns que causam a maioria deles e com certa solução de problemas, você pode detectar o que houve de errado e o que você precisa fazer para corrigir. Uma das situações mais difíceis é quando um sistema não realiza mais POST de forma alguma.

Infelizmente, isso é quase sempre um problema de hardware. Ele pode exigir algo secundário, como substituição de bateria CMOS ou mais complicado, como nova placa-mãe ou fonte de alimentação. Mas se o sistema não realizar o POST, você provavelmente deve ligar para o número de suporte do OEM do sistema, pois é provável que você não resolva o problema por conta própria.

Ferramentas do negócio

Desde que o seu sistema esteja realizando o POST, você tem uma boa chance de recuperação, pois o problema não é apenas o hardware com defeito (embora, é claro, o problema possa envolver hardware e software). Dependendo de o quanto o sistema avançou no processo de inicialização, você deve ser capaz de remover gradualmente vários “suspeitos” da sua lista e fazer com que o sistema funcione novamente.

Antes de iniciar, aqui estão algumas ferramentas que você considerará úteis:

  • Idealmente, você deve ter acesso a outro computador executando o Windows para uso de análise de trava, que deve incluir as Ferramentas de Depuração para Windows.
  • Você deve ter uma cópia do Microsoft Diagnostics and Recovery Toolset (DaRT), que é parte do Microsoft Desktop Optimization Pack (MDOP). Em , você poderá encontrar uma cópia de avaliação online de 30 dias. Alternativamente, você poderia usar um CD do Windows PE (idealmente a versão 2.1, em especial se você estiver recuperando um sistema Windows Vista ou Windows Server 2008).
  • Você deve ter uma unidade flash USB grande o suficiente para armazenar qualquer despejo de pane do seu sistema problemático.
  • Você deve ter as ferramentas necessárias para remover o hardware do seu sistema problemático.

O sistema operacional está ausente

Se você receber um erro em relação a um sistema operacional ausente ou não encontrado (o texto pode variar dependendo da BIOS usada no seu PC0), o problema é que, efetivamente, o sistema está sem o setor de inicialização – a seção no disco que declara onde localizar o carregador de inicialização. Eu tive apenas uma vez esse problema inesperadamente – a máquina de um executivo foi atingida durante uma queda de energia – e, surpreendentemente, esse foi o único problema que foi aparente de imediato.

Infelizmente, mediante mais investigação, detectamos que o sistema parecia ter perdido por completo todas suas partições. Ironicamente, isso ocorreu em Winternals, e então criamos uma ferramenta denominada Disk Commander (veja a Figura 1) que agora é parte do Diagnostics and Recovery Toolset.

fig01.gif

Figura 1 A ferramenta de recuperação Disk Commander

O Disk Commander também pode ser útil para recuperar diretórios excluídos inteiros. Nessa instância, foi apenas o que o médico solicitou, pois ele foi capaz de verificar o disco quanto às partições excluídas recentemente e recuperá-las por completo (veja a Figura 2).

fig02.gif

Figura 2 Recuperando uma partição de disco com Disk Commander

A recuperação de partição não é infalível, mas em partições perdidas ou excluídas recentemente – e usando uma ferramenta como o Disk Commander – ela permanece com uma chance mínima de sucesso. É claro, esse erro pode ser causado por outros problemas (geralmente hardware). O artigo da Base de Dados de Conhecimento "Mensagem de erro 'Sistema operacional não localizado' ou 'Sistema operacional ausente' quando você inicia seu computador baseado em Windows XP" discute o tópico um pouco mais. Como com um problema de BIOS, se você tiver um problema de hardware que impeça o disco de ser exibido, não há muito que você possa fazer com a DaRT ou qualquer outra ferramenta.

O carregador de inicialização está ausente

Se o seu sistema estiver executando o Windows Server 2003 ou anterior, um erro de carregador de inicialização ausente fará referência a NTLDR; se você tivesse atualizado ou fizesse inicialização dupla com o Windows Vista ou versão posterior, isso seria BOOTMGR. Basicamente, a mensagem depende de para qual carregador de inicialização o setor de inicialização está apontando.

Esse erro geralmente não ocorre, embora eu tenha ouvido falar que ele ocorre de forma muito semelhante à descrita em relação à partição perdida. O principal a ser lembrado é que tudo que você precisa fazer é inicializar o Windows PE e substituir os arquivos NTLDR e NTDetect.com de um CD ou um compartilhamento com o Windows nele. Você quer se certificar de que os arquivos de substituição são da versão do Windows, como novos ou mais recentes do que os que você está substituindo (use a cópia mais recente do último service pack disponível; esses arquivos são compatíveis com versões anteriores). No caso do Windows Vista ou Windows Server 2008, você deve copiar o arquivo BOOTMGR e verificar se o seu diretório Boot (oculto por padrão) também está lá.

O artigo "Erro NTLDR ou NTDETECT.COM não localizado" fornece mais informações. Você pode observar que muitos dos artigos da Base de Dados de Conhecimento da Microsoft sugerem o uso do Console de Recuperação do Windows e alguns, como o apresentado em "Como usar a ferramenta Bootrec.exe no Ambiente de Recuperação do Windows para solucionar e reparar problemas de inicialização no Windows Vista" podem ser úteis.

No entanto, minha recomendação é usar o Windows PE neste cenário. Embora haja alguns detalhes, o Console de Recuperação é capaz de executar ações mais facilmente do que o Windows PE; a potência e a flexibilidade globais do Windows PE geralmente o tornam mais fácil para colocar as coisas em funcionamento.

Recomendo que você execute o chkdsk após concluir a recuperação de partição ou do carregador de inicialização, para garantir que não haverá outros danos ao disco que possam surgir posteriormente.

No caso de danos ao arquivo devido à queda de energia elétrica ou outros problemas, eu também gostaria de garantir que não haja erros de monitoramento de disco S.M.A.R.T. registrados no log de eventos. Tudo que fizer com que a perda de dados suficiente elimine uma partição ou arquivos pode facilmente levar a problemas maiores posteriormente.

O sistema é inicializado – em seguida, pára

Isso é um sintoma que muitos encontram, mas raramente afeta a causal real. Muito freqüentemente, você verá o agp440.sys nomeado como o culpado da falha. Mas esse driver é uma vítima involuntária. Ele é simplesmente o último driver carregado, como você pode ver na Figura 3, que mostra um sistema inicializando no modo seguro do Windows logo antes de o Windows inicializar.

fig03.gif

Figura 3 Drivers sendo carregados no modo seguro do Windows

Alguns artigos que eu li – incluindo alguns artigos da Base de Dados de Conhecimento – sugerem que desabilitar o driver é a melhor forma para que um sistema volte a funcionar. Não é bem assim. Para que o seu sistema volte a funcionar, veja o que eu sugiro:

  • Inicie removendo qualquer novo hardware que você tenha instalado recentemente. Faça isso seletivamente, uma coisa de cada vez.
  • Tente inicializar no modo seguro do Windows para ver se isso funciona. Nesse caso, o mais provável é que um driver de terceiro esteja causando o problema (pois drivers de terceiros não são iniciados durante o modo seguro).
  • Use o Windows PE ou o ERD Commander (da DaRT) para desabilitar qualquer driver instalado recentemente. Consulte a barra lateral “Desabilitando drivers ou serviços” para obter mais informações.
  • Tente usar a última configuração boa conhecida (discutida a seguir) para descobrir se uma alteração de driver recente, não refletida na última configuração de trabalho definida, pode ser a fonte do problema.

Se essas quatro opções não funcionarem, você talvez precise executar uma instalação de reparo do Windows (inicializando a partir de um CD que é uma correspondência de service pack da sua instalação do Windows com problema) ou talvez precise reinstalar o Windows.

Desabilitando drivers ou serviços

O ERD Commander e o Windows PE permitem que você desabilite drivers ou serviços que estão causando falha na inicialização do Windows, apesar dos diferentes níveis de dificuldade.

Para usar o Windows PE para habilitar e desabilitar serviços problemáticos, primeiro inicialize o Windows PE (certifique-se de ter os drivers de controlador de armazenamento necessários para o sistema sendo inicializado). Inicie o Windows Registry Editor (regedit.exe) e selecione o hive HKEY_LOCAL_MACHINE.

Do menu de arquivo, selecione Carregar Hive e procure C:\Windows\System32\Config\system (ajustando para adequar ao seu próprio caminho do Windows) e especifique um nome para usar para o hive durante a edição (o nome não importa). Procure o novo \CurrentControlSet\Services\servicename e observe o valor Start, que pode ser de 0 a 4:

0 – inicialização: iniciado primeiro pelo carregador do sistema operacional.

1 – inicialização do sistema: Carregado durante a inicialização de kern após os drivers de inicialização.

2 - inicialização automática: o Service Control Manager (SCM) inicia isso em seguida.

3 – início de demanda: iniciado por demanda pelo SCM.

4 – desabilitado: não será carregado.

Defina o serviço ou driver necessário para desabilitar como 4. Faça isso com atenção – alguns drivers têm interdependências e se você desabilitá-los e não suas dependências, você poderá travar o sistema, não apenas causar falha. Quando você tiver concluído, descarregue o hive do Registro e reinicie o sistema. O driver ou serviço não deverá mais suspender o processo de inicialização.

Agora, se você tiver o MDOP, a DaRT fará isso muito facilmente. Você pode simplesmente inicializá-la, conectá-la a uma instalação do Windows e, através do aplicativo Serviços e drivers, mostrados na Figura A, você poderá habilitar ou desabilitar serviços ou drivers através de uma IU muito simples.

figsidebar.gif

Figura A Uma forma fácil de desabilitar drivers ou serviços

Modo seguro do Windows e pontos de restauração

É claro, se o seu sistema estiver falhando ou travando na inicialização, a inicialização no modo seguro pode ajudar, especialmente se você não tiver uma cópia do Windows PE prática e se o modo seguro não iniciar. Em versões cliente do Windows, você talvez consiga usar pontos de restauração para recuperar o seu sistema, supondo que você os tenha habilitado e que eles tenham protegido os arquivos necessários para restauração (eles não protegem tudo no Windows XP).

É importante observar que se você estiver usando o Windows PE para recuperar seu sistema Windows Vista, certifique-se de que você apenas o inicialize com o Windows PE 2.0 ou versão posterior. Inicializar com versões anteriores irá corromper seus pontos de restauração, tornando-os inutilizáveis. (Isso se deve à forma como os pontos de restauração do sistema no Windows Vista verificam as gravações em disco. O Windows PE 1.x não sabe como interagir com o sistema sem causar gravações que levam à corrupção dos pontos de restauração).

O sistema falha antes de o Windows concluir o carregamento

Há duas classes de problemas que freqüentemente levam a falhas do sistema antes de o Windows concluir o carregamento. A primeira é a corrupção de registro. Isso é mais comum com versões anteriores do Windows, bem como em sistemas que tiveram uma reinicialização abrupta do sistema. Geralmente, se a corrupção de registro estiver impedindo o sistema de iniciar, isso é apenas uma pequena seção do registro do problema. Com o Windows Vista, você tem duas cópias do registro localizado na pasta \windows\system32\config\regback, ambos os quais têm menos de 24 horas, na maioria dos casos. Você pode tentar substituir os arquivos de registro por esses.

Alternativamente, às vezes, usar a abordagem que descrevi anteriormente para carregar o Registro offline no Windows PE irá resolver isso. O Windows Registry Editor tem lógica embutida nele que tenta reparar a corrupção quando detectada. Esse reparo de corrupção foi bom no Windows XP e é ainda melhor no Windows Vista e no Windows Server 2008.

Se você não puder corrigir o problema através do Windows PE 1.6, tente usar o Windows PE 2.x ou copiar o registro em um sistema Windows Vista, reparando-o usando os métodos mencionados anteriormente e então copiando novamente. Infelizmente, com freqüência não há muito que você possa fazer se isso não recuperar o sistema. Você pode tentar executar uma instalação de reparo para versões anteriores do Windows, mas em geral eu recomendaria a execução de uma reinstalação. Novamente, você deve realizar um chkdsk para verificar se não há outros problemas.

Provavelmente o problema mais comum que leva a falhas do sistema (telas azuis) antes de o Windows ter iniciado são os drivers. Recomendo o preparo da DaRT CD e uso do Crash Analyzer (veja a Figura 4), um mecanismo fácil de usar para analisar despejos de falha do Windows – mesmo em um sistema não inicializável.

fig04.gif

Figura 4 Analisando um arquivo de despejo com o Crash Analyzer

Se você não tiver a DaRT ou não a tiver em mãos, você também pode usar o Windows PE e as Ferramentas de Depuração para Windows para ver onde pode estar o ponto geral de falha. Observe que um despejo de falha pode estar corrompido ou ser inconclusivo, mas freqüentemente ele o apontará para a direção correta. Estão são as etapas a serem seguidas:

  1. Copie os arquivos *.dmp mais recentes do sistema com falha através do Windows PE. Esses arquivos estão localizados em %windir%\minidump\. Se você tiver despejos completos habilitados, eles estarão no próprio diretório do Windows e serão pelo menos tão grandes quanto a memória no seu sistema (de modo que possam ser dimensionáveis).
  2. Inicie as ferramentas de depuração para Windows e através de Arquivo|Abrir Despejo de Falha, selecione o arquivo de despejo que você acabou de copiar.
  3. Defina o caminho de símbolo para fornecer informações de depuração para diagnóstico pelos binários do Windows. Digite:
.sympath= SRV*C:\SYMBOLS\*http://
msdl.microsoft.com/download/symbols
  1. e clique em Enter.
  2. Digite .reaload e clique em Enter.
  3. Digite !analyze –v e clique em Enter.
  4. O resultado mais provavelmente apontará para o driver (ou drivers) envolvido(s).

Observe que você geralmente pode obter um falso-positivo que aponta para um driver quando a causa é, na verdade, outra, de modo que você pode fazer uma pequena pesquisa na web para ver as opiniões relacionadas ao seu cenário. Freqüentemente, outros já tiveram o mesmo problema com esse driver. Você pode usar as etapas descritas anteriormente para desabilitar o driver ou a inicialização no modo seguro para ver se isso faz diferença.

Última configuração boa conhecida

A última configuração boa conhecida, mostrada na Figura 5, geralmente pode ajudar se o sistema estiver com problemas. Ela contém uma cópia do último conjunto de serviços e drivers inicializados com êxito. Mas isso não é garantido e não ajudará se houver corrupção de registro. E isso pode fazer a diferença se o Windows estiver falhando antes de o Win32 iniciar (antes de você visualizar a inicialização de área de trabalho do Windows). Caso contrário, essa inicialização será considerada “boa” e se o Windows falhar nesse ponto, ele não será recuperável dessa forma.

Figura 5 Escolher a última configuração boa conhecida pode permitir que o sistema inicie

O sistema falha após a inicialização do Windows

Se o seu sistema estiver falhando após o Windows ter iniciado, a causa pode ser um driver, mas pode ser facilmente o hardware. Para o diagnóstico, recupere o arquivo .dmp, como descrito anteriormente, e veja que tipo de dicas você encontra.

Dependendo da direção que o Windbg apontar, você poderá tentar desabilitar serviços ou drivers ou poderá desejar examinar qualquer hardware adicionado recentemente. A memória (especialmente memória adicionada recentemente) pode com freqüência causar falhas, como pode um disco não funcionando como deveria. Você pode precisar conectar-se com o seu OEM ou ISVs de software para ver se eles viram resultados semelhantes aos seus ou pesquisar na Web por situações semelhantes.

Se você suspeitar de que a memória é a origem do problema, certifique-se de tentar o Windows Memory Diagnostic (que está incluído no Windows Vista e no Windows Server 2008). A ferramenta Memory Diagnostic é um modo muito abrangente de testar a RAM do seu sistema se suspeitar de problemas que levam a falhas.

Embora seja certamente frustrante quando o Windows não inicializa corretamente, as causas geralmente podem ser categorizadas em um grupo mais estreito de problemas. Compreender onde e como verificar quando isso ocorre pode freqüentemente ajudá-lo a fazer com que o Windows funcione novamente, sem a necessidade de reverter para uma nova imagem completa.

Wes Miller é gerente sênior de produto técnico da CoreTrace (CoreTrace.com), em Austin, no Texas. Já trabalhou na Winternals Software e como gerente de programa da Microsoft. Entre em contato com ele pelo email technet@getwired.com.