FileMon for Windows v7.04

Por Mark Russinovich e Bryce Cogswell

Publicado em: 11 de janeiro de 2006

Introdução

Observação: o Filemon e o Regmon foram substituídos pelo Process Monitor em versões do Windows a partir do Windows 2000 SP4, do Windows XP SP2, do Windows Server 2003 SP1 e do Windows Vista. O Filemon e o Regmon permanecem para suporte do sistema operacional legado, incluindo o Windows 9x.

O FileMon monitora e exibe a atividade do sistema de arquivos em um sistema em tempo real. Os recursos avançados de que ele dispõe são uma ferramenta eficaz para explorar o modo como o Windows funciona, observando de que maneira os aplicativos utilizam os arquivos e as DLLs, ou rastreando problemas nas configurações do arquivo do sistema ou do aplicativo. O recurso de carimbo de data/hora do Filemon mostrará com precisão sempre que ocorrer uma ação de abertura, leitura, gravação ou exclusão, e a coluna de status informará o resultado. O FileMon é tão fácil de usar que você se tornará um especialista em minutos. Ele começa o monitoramento quando você o inicia, e sua janela de saída pode ser salva em um arquivo para exibição offline. O FileMon possui total capacidade de pesquisa e, caso ocorra sobrecarga de informações, basta configurar um ou mais filtros.

O FileMon funciona no NT 4.0, Windows 2000, Windows XP, Windows XP e Windows Server 2003 64-bit Edition, Windows 2003 Server, Windows 95, Windows 98 e Windows ME.

Captura de tela do Filemon
Início da páginaInício da página

Instalação e uso

Se você tiver dúvidas ou problemas, visite a página do Sysinternals Filemon Forum.

Basta executar o FileMon (filemon.exe). Você precisa ter privilégio de administrador para executar o FileMon. Quando o FileMon é iniciado pela primeira vez, ele monitora todos os discos rígidos locais. Menus, teclas de acesso ou botões da barra de ferramentas podem ser usados para limpar a janela, marcar e desmarcar volumes monitorados, incluindo volumes de rede (Windows NT/2K/XP), salvar os dados monitorados em um arquivo, além de filtrar e pesquisar os resultados.

Se você tiver especificado filtros, o FileMon solicitará que você confirme os filtros usados na última sessão a cada vez que você o iniciar. Para iniciar o FileMon sem que ele lhe solicite, especifique a opção /q na linha de comando. Quando o FileMon é iniciado, ele captura a atividade do sistema de arquivos automaticamente. Para iniciá-lo com a captura desabilitada, use a opção /o na linha de comando.

À medida que os eventos forem impressos no resultado, eles serão marcados com um número de seqüência. Se ocorrer estouro de capacidade dos buffers internos do Filemon durante uma atividade extremamente pesada, isso se refletirá com lacunas no número de seqüência.

Cada vez que você sai do FileMon, ele lembra dos filtros que você configurou, da posição da janela e das larguras nas colunas de saída.

Início da páginaInício da página

Filtragem

Use a caixa de diálogo Filter (Filtro), acessada pelo botão da barra de ferramentas, ou a seleção de menu Edit|Filter/Highlight (Editar|Filtro/Realçar), para selecionar os dados que serão mostrados na exibição de lista. O caractere curinga '*' corresponde a cadeias de caracteres arbitrários e os filtros diferenciam maiúsculas de minúsculas. São exibidas apenas as correspondências mostradas no filtro de inclusão, mas não excluídas com o filtro de exclusão. Use ';' para separar várias cadeias de caracteres em um filtro (por exemplo: "filemon;temp"). Observação do Windows NT/2000: em razão da natureza assíncrona de E/S de arquivo, não é possível filtrar no campo de resultado.

Por exemplo, se o filtro de inclusão for "c:\temp" e o filtro de exclusão for "c:\temp\subdir", todas as referências a arquivos e diretórios em c:\temp, com exceção das referências em c:\temp\subdir, serão monitoradas.

Os caracteres curinga permitem correspondência de padrões complexos, possibilitando a correspondência de acessos de arquivo específicos por aplicações específicas, por exemplo. O filtro de inclusão "Winword*Windows" faria com que o FileMon só mostrasse acessos pelo Microsoft Word a arquivos e diretórios que incluíssem a palavra "Windows".

Use o filtro de realce para especificar a saída que você deseja realçada na saída de exibição da lista. Selecione as cores de realce em Edit|Highlight Colors (Editar|Cores de realce).

As opções de filtro adicionais marcam ou desmarcam as operações de leitura, gravação ou abertura. Em vários cenários de solução de problemas, apenas as operações de abertura interessam; por exemplo:

Início da páginaInício da página

Selecionando volumes (Windows NT/2K/XP/2K3)

O menu Volumes pode ser usado para marcar e desmarcar volumes monitorados. Selecione o item de menu Network (Rede) para monitorar acessos a qualquer recurso de rede, incluindo compartilhamentos remotos e acessos de nome de caminho UNC a volumes remotos.

Início da páginaInício da página

Limitando a saída

A caixa de diálogo History Depth (Profundidade do histórico), acessada por meio do botão da barra de ferramentas ou do item de menu Edit|History (Editar|Histórico), permite especificar o número máximo de linhas que será lembrado na janela de saída. Uma profundidade de 0 é utilizada para significar que não há limite.

Início da páginaInício da página

Pesquisando a saída

Você poderá pesquisar cadeias de caracteres na janela de saída usando o item de menu Find (Localizar) ou o botão de localização da barra de ferramentas). Você pode repetir a pesquisa para a frente com a tecla F3 e, no sentido contrário, com a tecla Shift+F3. Para iniciar a pesquisa em uma linha específica na saída, selecione a linha desejada clicando na coluna mais à esquerda (o número de índice). Se nenhuma linha for selecionada, uma nova pesquisa terá início na primeira entrada, na pesquisa para baixo, e na última entrada, na pesquisa para cima.

Início da páginaInício da página

Options (Opções)

O FileMon pode colocar o carimbo de data/hora em eventos ou mostrar a duração desses eventos. O menu Options e o botão de relógio da barra de ferramentas permitem que você alterne entre os dois modos. O botão na barra de ferramentas mostra o modo atual com um relógio ou um cronômetro. Ao mostrar a duração, o campo Time (Tempo), na saída, mostra o número de segundos que o sistema de arquivos subjacente levou para atender a solicitações específicas. A entrada de menu Options|Show Milliseconds (Opções|Mostrar milissegundos) permite adicionar resolução de milissegundos a tempos apresentados, quando o FileMon mostra horas do relógio.

Você pode alternar o FileMon para permanecer sempre como uma janela superior, com o item de menu Options|Always On Top (Opções|Sempre visível). Além disso, você pode alternar o FileMon para não percorrer a exibição de lista pelo item de menu Options|Auto Scroll (Opções|AutoRolagem) nem pelo botão da barra de ferramentas correspondente.

Início da páginaInício da página

Pipes nomeados e slots de email

A partir da versão 4.1, o FileMon é capaz de monitorar o pipe nomeado e a atividade do sistema de arquivos do slot de email no Windows NT/2K. Os pipes nomeados são usados geralmente como um mecanismo de comunicação no NT/Win2K por subsistemas principais, como o LSASS (Local Security Authority Subsystem), e utilizados pelo DCOM. Eles são usados também por componentes de rede, como o serviço Pesquisador. Para ver a atividade de pipe nomeado com o FileMon, selecione Named Pipes (Pipes Nomeados) no menu Drives (Unidades) e execute uma operação em um recurso de rede compartilhada, ou abra um aplicativo como o eRegedt32, que interage com o subsistema de segurança.

Início da páginaInício da página

Como funciona o FileMon

No driver do Windows 9x, o coração do FileMon está no driver do dispositivo virtual, Filevxd.vxd. Ele é carregado dinamicamente e, na inicialização, instala um filtro do sistema de arquivos pelo serviço VxD, IFSMGR_InstallFileSystemApiHook, para se inserir no grupo de chamadas de todas as solicitações do sistema de arquivos. No Windows NT, o coração do FileMon é um driver do sistema de arquivos que cria e anexa objetos de dispositivo de filtro a objetos de dispositivo do sistema de arquivos de destino, de modo que o FileMon veja todas as solicitações IRPs e FastIO direcionadas a unidades. Quando o FileMon vê uma chamada do tipo abrir, criar ou fechar, ele atualiza uma tabela de hash que atua como o mapeamento entre identificadores de arquivo internos e nomes de caminho de arquivo. Ao ver chamadas baseadas no identificador, ele procura o identificar na tabela de hash para obter o nome completo de exibição. Se um acesso baseado no identificador fizer referência a um arquivo aberto antes de o FileMon iniciar, o FileMon falhará ao tentar localizar o mapeamento na respectiva tabela de hash e, em vez disso, simplesmente apresentará o valor do identificador.

As informações nos acessos são despejadas em um buffer ASCII que é copiado periodicamente na GUI para que ela o imprima na respectiva caixa de listagem.

Início da páginaInício da página

Utilitários relacionados

Eis mais algumas ferramentas de monitoramento disponíveis da Sysinternals:

RegMon - um monitor do Registro

PortMon - um monitor de porta serial e paralela

Process Monitor - um monitor de processo e de thread

DiskMon - um monitor de disco rígido

DebugView - um monitor de saída de depuração

Início da páginaInício da página

Mais informações

Os recursos a seguir funcionam como fontes de informações adicionais sobre o sistema de arquivos do Windows 9x:

O artigo do Windows 95/98 DDK

"Examinando o sistema de arquivos em camadas do Windows 95", por Mark Russinovich e Bryce Cogswell, Dr. Dobb's Journal, dezembro de 1995

"Programação de sistemas no Windows 95", por Walter Oney, Microsoft Press, 1996 (leitura obrigatória para escritores de VxD)

"Dentro do sistema de arquivos do Windows 95", artigo de Stan Mitchell, O'Reilly and Associates, 1996

São estas as fontes de informações sobre o sistema de arquivos do Windows NT/2000 e/ou FileMon:

Dentro do Windows 2000, 3ª edição, por David Solomon e Mark Russinovich, 2000

"Examinando o sistema de arquivos do Windows NT", por Mark Russinovich e Bryce Cogswell, Dr. Dobb's Journal, fevereiro de 1997

"Dentro dos utilitários do NT", Windows NT Magazine, fevereiro de 1999.

"Informações internas do sistema de arquivos do Windows NT", por Rajeev Nagar, O'Reilly and Associates, 1997

Início da páginaInício da página

Artigos da Base de Dados de Conhecimento do Microsoft Filemon

Este artigo da base de dados de conhecimento faz referência ao Filemon para auxiliar no diagnóstico e na solução de vários problemas:

830903: Um arquivo em uma pasta da rede abre como somente leitura ou retorna uma mensagem de erro informando que o tipo de arquivo não pode ser reconhecido

319844: ACC2002: Mensagem de erro: O componente ActiveX não pode criar o objeto

830761: Práticas recomendadas para implantação de aplicativos do Visual Basic 6.0

837932: As identificações de evento 2108 e 1084 ocorrem durante a replicação de entrada do Active Directory no Windows 2000 Server e no Windows Server 2003

819612: CORREÇÃO: Diminuir o desempenho quando o avaliador de recursos do navegador for removido do cache

286198: COMO: Rastrear erros "Permissão negada" em arquivos DLL

308940: COMO: Solucionar o problema do erro 1928 "Erro ao registrar o aplicativo COM+"

814774: COMO: Solucionar problemas de implantação de site no Microsoft Content Management Server 2002

198038: INFO: Ferramentas úteis para problemas de pacote e implantação

319440: Atrasos de logon em links lentos se o Oplock não for concedido ao arquivo de diretiva

260513: PRB: Ocorre um erro quando você instala os produtos Visual Studio

306269: PRB: Erro 80004005 "O mecanismo de banco de dados Microsoft Jet não pode abrir o arquivo '(Desconhecido)'

306386: PRB: O FileMon mostra que o DAO360.dll falha ao carregar o MSJet49.dll, MSJet48.dll e demais arquivos MSJetxx.dll

243583: PRB: O Mib.bin ocasiona falha na instalação do Visual Studio

310586: A instância Exchange MSSearch não está online em um cluster e as identificações de evento 3055 e 10006 estão registradas

555069: 10 principais configurações potenciais de segurança problemáticas do Microsoft Windows XP Professional Edition e Microsoft Windows Server 2003.

196453: Solução de problemas de inicialização do NTVDM e WOW

318746: XADM: Mensagem de erro: Erro 123: A sintaxe do nome do arquivo, do nome do diretório ou do rótulo do volume está incorreta

296136: XADM: As mensagens de identificações de evento 3036 e 3026 ocorrem quando você preenche o armazenamento de caixa de correio

830075: O Winmgmt.exe usa mais recursos da CPU do que você espera

867651: Não é possível adicionar um certificado TLS a um computador com o Office Live Communications Server 2003 em execução

319844: Você obtém uma mensagem de erro "O componente ActiveX não pode criar o objeto" quando utiliza o Access

Baixar o Filemon (280 KB)


Início da páginaInício da página