我試圖通過ARM模板和DSC在Azure中設置服務器Windows 2012 R2。 DSC腳本運行cChocoPackageInstaller來安裝dotnet4.6.1(在運行cChocoInstaller之後)。它看起來像這樣:使用DSC通過Chocolatey安裝DotNet 4.6.1 cChocoPackageInstaller
cChocoInstaller Choco
{
InstallDir = "c:\choco"
}
cChocoPackageInstaller DotNet461
{
Name = "dotnet-461"
DependsOn = "[cChocoInstaller]Choco"
}
DotNet安裝程序被下載,但它最終在運行時失敗。日誌看起來像這樣(我只摘錄了這裏的錯誤)。
2016-06-17 13:05:52,001 [DEBUG] - Running 'Start-ChocolateyProcessAsAdmin' with exeToRun:'C:\Windows\system32\config\systemprofile\AppData\Local\Temp\chocolatey\dotnet-461\4.6.01055.006\NDP461-KB3102436-x86-x64-AllOS-ENU.exe', statements: '/q /norestart /log "C:\Windows\system32\config\systemprofile\AppData\Local\Temp\chocolatey\net461.log" '
2016-06-17 13:05:52,001 [DEBUG] - Elevating Permissions and running ["C:\Windows\system32\config\systemprofile\AppData\Local\Temp\chocolatey\dotnet-461\4.6.01055.006\NDP461-KB3102436-x86-x64-AllOS-ENU.exe" /q /norestart /log "C:\Windows\system32\config\systemprofile\AppData\Local\Temp\chocolatey\net461.log" ]. This may take a while, depending on the statements.
2016-06-17 13:05:52,110 [DEBUG] - Setting RunAs for elevation
2016-06-17 13:05:53,487 [INFO ] - The application cannot find one of its required files, possibly
2016-06-17 13:05:53,487 [INFO ] -
2016-06-17 13:05:53,487 [INFO ] - because it was unable to create it in the folder. Please make
2016-06-17 13:05:53,487 [INFO ] -
2016-06-17 13:05:53,487 [INFO ] - sure that the folder in which this application was downloaded is
2016-06-17 13:05:53,487 [INFO ] -
2016-06-17 13:05:53,487 [INFO ] - accessible and not read-only.
2016-06-17 13:05:53,487 [INFO ] -
2016-06-17 13:05:53,503 [DEBUG] - Command ["C:\Windows\system32\config\systemprofile\AppData\Local\Temp\chocolatey\dotnet-461\4.6.01055.006\NDP461-KB3102436-x86-x64-AllOS-ENU.exe" /q /norestart /log "C:\Windows\system32\config\systemprofile\AppData\Local\Temp\chocolatey\net461.log" ] exited with '3'.
2016-06-17 13:05:53,518 [ERROR] - ERROR: Running ["C:\Windows\system32\config\systemprofile\AppData\Local\Temp\chocolatey\dotnet-461\4.6.01055.006\NDP461-KB3102436-x86-x64-AllOS-ENU.exe" /q /norestart /log "C:\Windows\system32\config\systemprofile\AppData\Local\Temp\chocolatey\net461.log" ] was not successful. Exit code was '3'. See log for possible error messages.
2016-06-17 13:05:53,518 [DEBUG] - Built-in PowerShell host called with ['[System.Threading.Thread]::CurrentThread.CurrentCulture = '';[System.Threading.Thread]::CurrentThread.CurrentUICulture = ''; & import-module -name 'c:\choco\helpers\chocolateyInstaller.psm1'; & 'c:\choco\helpers\chocolateyScriptRunner.ps1' -packageScript 'c:\choco\lib\dotnet-461\tools\chocolateyInstall.ps1' -installArguments '' -packageParameters '''] exited with '3'.
2016-06-17 13:05:53,534 [DEBUG] - Calling command ['"C:\Windows\System32\shutdown.exe" /a']
2016-06-17 13:05:53,549 [DEBUG] - Command ['"C:\Windows\System32\shutdown.exe" /a'] exited with '1116'
那麼一兩件事情:
- 沒有日誌文件產生的DOTNET的安裝程序...所以它看起來並不像它的成功啓動安裝程序。
- 安裝程序包肯定會下載到預期位置。不知道爲什麼它能夠將安裝程序下載到該目錄,但之後不能訪問/運行它。
- 如果我將RDP放到盒子上,並以本地管理員身份運行「choco install dotnet4.6.1」命令,則該軟件包將無錯地安裝。
- 我現在正在運行choco 0.9.10,但與0.9.9有相同的問題
- 我正在運行更新版本的dotnet4.6.1安裝程序(未經批准),它以/ q(完全)模式運行/被動的。我在被動模式下遇到了同樣的問題。
任何想法表示讚賞。謝謝!
在使用choco的時候,我不知道爲什麼會發生問題。但是,如果您對另一種方法感興趣,我已經使用自定義腳本擴展名安裝了.net,並使用了azure自動化dsc腳本。如果你願意,我可以用這兩種方法發佈答案嗎? –
嗨@EdRixon,如果您有辦法直接使用DSC來安裝4.6.1,那就太棒了。注意:我也使用GraniResource DSC模塊嘗試了cDotNetFramework。雖然這對4.6有幫助,但我無法讓它在4.6.1下工作......出於某種原因,它一直在對我進行轟炸,我無法從信息中辨別出最終問題是什麼。如果您有適合4.6.1的DSC解決方案,我很樂意看到它。 – swannee
不完全確定問題所在,但以下是我們瞭解的方式。有一個帶有調試/詳細輸出的完整日誌文件。如果你把它放在某個地方並鏈接到它,它將有助於確定可能的錯誤。當您遇到問題並希望獲得更多互動式幫助時,您也可以跳轉到https://gitter.im/chocolatey/chocolatey.org(這是https://chocolatey.org右下角的小聊天圖標)。 – ferventcoder