Como mover o Inetpub de drive no IIS 7.0 ?

Tendo seu conteudo em uma partição diferente que seu sistema operacional, é uma boa pratica de segurança. Nas versões antigas do IIS era possivel fazer isto durante o tempo de setup no arquivo de instalação unattend. Devido as mudanças no Vista e Windows 2008 isto se tornou impossivel de se fazer no tempo de setup. Após o setup do IIS 7 o diretorio inetpub ficara sempre na mesma partição do Windows, então caso queira, você pode mover o diretorio após o setup acabar. Abaixo uma tabela dos diretorios padrões que ficam dentro do diretorio Inetpub. Também um link com um arquivo bat para mover o inetpub para outra unidade/drive que desejar: MOVEIISROOT.zip .

 

Diretorio Onde esta a configuração ? Exemplo de como mover para outra unidade
LOGS\FREBLOGS Failed Request Event Buffering (FREB) é um novo recurso do IIS7.0 . O caminho padrão que o IIS7.0 usa para gravar os logs do FREB é %systemdrive%\inetpub\logs\FailedReqLogfiles %windir%\system32\inetsrv\appcmd set config -section:system.applicationHost/sites -sit eDefaults.traceFailedRequestsLogging.directory:" F:\inetpub\logs\FailedReqLogFiles"
LOGS\LOGFILES O caminho padrão para os arquivos de log de acesso é %systemdrive%\inetpub\logs\logfiles. %windir%\system32\inetsrv\appcmd set config -section:system.applicationHost/sites -siteDefaults.logfile.directory:"F:\inetpub\logs\logfiles" %windir%\system32\inetsrv\appcmd set config -section:system.applicationHost/log -centralBinaryLogFile.directory:"F:\inetpub\logs\logfiles" %windir%\system32\inetsrv\appcmd set config -section:system.applicationHost/log -centralW3CLogFile.directory:"F:\inetpub\logs\logfiles"
TEMP\APPPOOLS Isolação de ApplicationPool é um novo recurso do IIS 7.0. O caminho padrão dos arquivos de configuração fica em: %systemdrive%\inetpub\temp\appPools reg add HKLM\System\CurrentControlSet\Services\WAS\Parameters /v ConfigIsolationPath /t REG_SZ /d f:\inetpub\temp\appPools
HISTORY Historico de configurações/modificações O caminho padrão para a pasta de Historico é : %systemdrive%\inetpub\history %windir%\system32\inetsrv\appcmd set config -section:system.applicationhost/configHistory -path:f:\inetpub\history
TEMP\ASP COMPILED TEMPLATES O IIS7 compila as paginas ASP em memoria, se mais de 250 templates estiver em memoria o IIS7 passa a armazenar os templates compilados em : "%systemdrive%\inetpub\temp\ASP Compiled Templates" %windir%\system32\inetsrv\appcmd set config -section:system.webServer/asp -cache.disktemplateCacheDirectory:"f:\inetpub\temp\ASP Compiled Templates"
TEMP\IIS TEMPORARY COMPRESSED FILES O IIS7 irá comprimir as respostas do cache em disco se necessario. O caminho padrão onde ele irá usar é : "%systemdrive%\inetpub\temp\IIS Temporary Compressed Files" %windir%\system32\inetsrv\appcmd set config -section:system.webServer/httpCompression -directory:"f:\inetpub\temp\IIS Temporary Compressed Files"
WWWROOT IIS7 vem com o Default Web Site apontando para %systemdrive%\inetpub\wwwroot. %windir%\system32\inetsrv\appcmd set vdir "Default Web Site/" -physicalPath:f:\inetpub\wwwroot
CUSTERR IIS7 armazena as paginas de erros customizadas em %systemdrive%\inetpub\custerr %windir%\system32\inetsrv\appcmd set config -section:httpErrors /[statusCode='401'].prefixLanguageFilePath:f:\inetpub\custerr %windir%\system32\inetsrv\appcmd set config -section:httpErrors /[statusCode='403'].prefixLanguageFilePath:f:\inetpub\custerr %windir%\system32\inetsrv\appcmd set config -section:httpErrors /[statusCode='404'].prefixLanguageFilePath:f:\inetpub\custerr %windir%\system32\inetsrv\appcmd set config -section:httpErrors /[statusCode='405'].prefixLanguageFilePath:f:\inetpub\custerr %windir%\system32\inetsrv\appcmd set config -section:httpErrors /[statusCode='406'].prefixLanguageFilePath:f:\inetpub\custerr %windir%\system32\inetsrv\appcmd set config -section:httpErrors /[statusCode='412'].prefixLanguageFilePath:f:\inetpub\custerr %windir%\system32\inetsrv\appcmd set config -section:httpErrors /[statusCode='500'].prefixLanguageFilePath:f:\inetpub\custerr %windir%\system32\inetsrv\appcmd set config -section:httpErrors /[statusCode='501'].prefixLanguageFilePath:f:\inetpub\custerr %windir%\system32\inetsrv\appcmd set config -section:httpErrors /[statusCode='502'].prefixLanguageFilePath:f:\inetpub\custerr

 

Após realizar o alteração usando o comando APPCMD, faça a copia do conteudo incluindo ACL e diretorios sem conteudo, por exemplo usando o comando abaixo:

   xcopy C:\inetpub E:\inetpub /E /O /I
 

/E Copia diretorio atual e sub-diretorios, mesmo que sem conteudo
/O copia permissões dos diretorios (ACL's)
/I Assume que destino é um diretorio