Windows-Server-2003
操作方法:將 IIS6 預設站點目錄 (inetpub) 正確遷移到另一個分區
問題幾乎說明了一切。我無法控制 Web 伺服器的安裝和配置。Inetpub 被部署到機器上的 C: 驅動器…我需要它住在 D: 上。
Sharepoint 將在這台機器上執行……所以當我完成時,IIS 需要是 koser。否則,Sharepoint 將不知道在哪裡部署 Central Admin 或任何新的網站集。
幫助!我只是一個低級的開發人員……我屈膝來到你們的伺服器之神。
不幸的是,我在這裡沒有得到任何可靠的答案。
幸運的是,我確實找到了一位 MS MVP,他們發布了一個 VBScript 來為我做這件事。我正在重新發布該腳本,因為我只能在 Google 的檔案中找到它(即便如此,該頁面也需要永遠重新載入):
' ----------------------------------------------------------------------------- ' RENAME THIS FILE TO MOVEIIS.VBS BEFORE USING!!! ' ----------------------------------------------------------------------------- ' Modify IIS Metabase Properties for new data location ' Change the params and params2 value depending on which components are ' installed ' set params to 10 if NNTP and FTP are installed and running otherwise ' set params to 9 and comment out msftpsvc line if FTP is not installed ' set params2 to 4 if FTP and NNTP are installed and runnning otherwise ' set params2 to 1 and comment out cisvc, msftpsvc and nntpsvc line if the ' Indexing service, FTP service, and Network News Transport Service are ' not installed ' References to the Indexing service have been commented out, check comments ' on line 75 to change Indexing Service settings 'Stop IIS services before continuing Set WSHShell = Wscript.CreateObject("Wscript.Shell") WSHShell.PopUp "Stopping all Internet Services..." ret = WshShell.Run ("net stop iisadmin /y", 1, TRUE) If ret = 0 then WSHShell.PopUp "IISADMIN service was stopped successfully, continuing" 'restart() else WSHShell.PopUp "IISADMIN failed to stop successfully. The error code is " & ret Wscript.Quit 1 end if Dim params(6) Dim x, ret Dim params2(2) Params(0) = "w3svc/1/root/path d:\inetpub\wwwroot" Params(1) = "w3svc/1/root/scripts/path d:\inetpub\scripts " Params(2) = "w3svc/1/root/iissamples/path d:\inetpub\iissamples" Params(3) = "smtpsvc/1/BadMailDirectory d:\inetpub\mailroot\BadMail" Params(4) = "smtpsvc/1/PickupDirectory d:\inetpub\mailroot\Pickup" Params(5) = "smtpsvc/1/QueueDirectory d:\inetpub\mailroot\Queue" Params(6) = "smtpsvc/1/DropDirectory d:\inetpub\mailroot\Drop" 'Params(7) = "nntpsvc/1/NewsPickupDirectory d:\inetpub\nntpfile\pickup" 'Params(8) = "nntpsvc/1/NewsFailedPickupDirectory d:\inetpub\nntpfile\failedpickup" 'Params(9) = "nntpsvc/1/NewsDropDirectory d:\inetpub\nntpfile\drop" 'Params(10) = "msftpsvc/1/root/path d:\inetpub\ftproot" Set WshSysEnv = WshShell.Environment("PROCESS") For Each x In Params ret = WSHShell.Run ("cscript.exe " & "c:\inetpub\adminscripts\adsutil.vbs SET " & x, 1, TRUE) Next ' Verify Settings were successfully applied If ret = 0 then WSHShell.PopUp "The new metabase settings have been successfully updated. The new Web Data path is d:\inetpub" else WSHShell.PopUp "The Configuration changes failed. The error code is " & ret Wscript.Quit 1 end if wscript.Sleep 5000 ' Move Data to new location (D:\Inetpub) using xcopy.exe (this can be changed ' from xcopy to move so the data is actually moved from current locale) ret = WSHShell.Run ("xcopy c:\inetpub D:\Inetpub\ /s /e /q /i /h /r /k /o /x" , 1, TRUE) If ret = 0 then WSHShell.PopUp "The data has been successfully moved to D:\Inetpub" else WSHShell.PopUp "The data move failed. The error code is " & ret Wscript.Quit 1 end if ' INDEX SERVICE CONFIGURATION ' Remove comments from the next 29 lines to configure cisvc through this script ' '' Update Web Catalog to be for D:\Inetpub ' ''Stop Content Index Service ' 'Set WSHShell = Wscript.CreateObject("Wscript.Shell") ' WSHShell.PopUp "Stopping Index Service..." ' 'ret = WshShell.Run ("net stop cisvc", 1, TRUE) 'If ret = 0 then ' chgeCat() 'else ' WSHShell.PopUp "Content Index service failed to stop successfully. The error code is " & ret ' Wscript.Quit 1 'end if ' 'Function chgeCat() 'Set WshShell = WScript.CreateObject("WScript.Shell") ' ''Delete Catalogs 'WshShell.RegDelete "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ContentIndex\Catalogs\Web\" ' Delete Web Catalog. 'WshShell.RegDelete "HKLM\SYSTEM\CurrentControlSet\Control\ContentIndex\Catalogs\System\" ' Delete System Catalog. ' ''Modify existing Web catalog entry 'WshShell.RegWrite "HKLM\SYSTEM\CurrentControlSet\Control\ContentIndex\Catalogs\Web\Location", "D:\Inetpub" 'WshShell.RegWrite "HKLM\SYSTEM\CurrentControlSet\Control\ContentIndex\Catalogs\Web\IsIndexingW3Svc", 1, "REG_DWORD" ' 'end function 'Start Services (WWW, SMTP, CISVC, NNTP, MSFTPSVC) Set WSHShell = Wscript.CreateObject("Wscript.Shell") WSHShell.PopUp "Attempting to restart stopped Services..." Params2(0) = "w3svc" Params2(1) = "smtpsvc" 'Params2(2) = "cisvc" 'Params2(3) = "nntpsvc" 'Params2(4) = "msftpsvc" For Each x In Params2 ret = WshShell.Run ("net start " & x, 1, TRUE) wscript.Sleep 5000 Next If ret = 0 then WSHShell.PopUp "Services were started successfully, modifications complete" else WSHShell.PopUp "One or more services fail to start successfully. The error code is " & ret Wscript.Quit 1 end if