2016-03-31 18 views
0

Bunu çılgın gibi yaptım, bu yüzden daha önce gönderildiyse, özür dilerim.SCCM .cmd betiği düzgün çalışmaz

Genellikle SCCM aracılığıyla güncelleştirmeleri .cmd komut dosyalarıyla itmekteyim, böylece önceki sürümü kaldırabilir ve yeni sürümü yeni yükleyebilirim.

kodu: Nedense

@echo off 

REM Kill IE & Java Processes 
cls 
echo -------------------------------------------------------- 
echo  This will kill Browsers and Java Processes 
echo -------------------------------------------------------- 
taskkill /F /IM iexplorer.exe 
taskkill /F /IM iexplore.exe 
taskkill /F /IM firefox.exe 
taskkill /F /IM chrome.exe 
taskkill /F /IM jusched.exe 
taskkill /F /IM jp2launcher.exe 
taskkill /F /IM java.exe 
taskkill /F /IM javaw.exe 
taskkill /F /IM jqs.exe 

REM Uninstalling Old JRE Versions 
cls 
echo -------------------------------------------------------- 
echo.    DO NOT CLOSE THIS WINDOW 
echo. All the Java versions from your computer are being removed. 
echo -------------------------------------------------------- 
wmic product where "name like 'J2SE%%'" call uninstall 
wmic product where "name like 'Java 2%%'" call uninstall 
wmic product where "name like 'Java 3%%'" call uninstall 
wmic product where "name like 'Java 4%%'" call uninstall 
wmic product where "name like 'Java 5%%'" call uninstall 
wmic product where "name like 'Java(TM) 6%%'" call uninstall 
wmic product where "name like 'Java 7%%'" call uninstall 
wmic product where "name like 'Java 8%%'" call uninstall 

REM Installing Java 1.8u77 
cls 
echo -------------------------------------------------------- 
echo . 
echo . 
echo .  Installing Java Runtime Environment - Please Wait. 
echo .   (This window will close once installed) 
echo . 

mkdir c:\programdata\oracle\java 
mkdir "c:\windows\sun\java\deployment" 
copy java.settings.cfg c:\programdata\Oracle\Java\java.settings.cfg >>c:\programdata\oracle\java\copylog.log 

REM Installing JRE 32-bit 
"%~dp0jre-8u77-windows-i586.exe" INSTALL_SILENT=1 STATIC=0 AUTO_UPDATE=0 WEB_JAVA=1 WEB_ANALYTICS=0 EULA=0 REBOOT=0 

REM If 64-bit Windows JRE 64-bit is also required 
REM Installing JRE 64-bit 
if exist "%ProgramFiles(x86)%\" "%~dp0jre-8u77-windows-x64.exe" INSTALL_SILENT=1 STATIC=0 AUTO_UPDATE=0 WEB_JAVA=1 WEB_ANALYTICS=0 EULA=0 REBOOT=0 

REM Disable automatic updates 
reg delete "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v SunJavaUpdateSched /f 
reg add "HKEY_LOCAL_MACHINE\Software\JavaSoft\Java Update\Policy" /v EnableJavaUpdate /t REG_DWORD /d 0 /f 

copy deployment.config c:\windows\sun\java\deployment\deployment.config >>c:\programdata\oracle\java\copylog.log 
copy deployment.properties c:\windows\sun\java\deployment\deployment.properties >>c:\programdata\oracle\java\copylog.log 
copy exception.sites c:\windows\sun\java\deployment\exception.sites >>c:\programdata\oracle\java\copylog.log 

REM Return exit code to SCCM 
exit /B %EXIT_CODE% 

, sadece şimdiye kadar 64 bit sürümü, asla ikisi yükler. Bunu bir Paket ve Uygulama olarak yaptım, aynı sonuç. "Varsa"% ProgramFiles (x86)% \ "" bölümünü kaldırdım, hiçbir şey. Ayrı konuşlandırmalar oluşturdum ve önce 32 bit aradım.

Sadece 64 bit sürümünün yüklenmesinin nedenlerinden dolayı kaygılıyım.

Herhangi bir yardım için teşekkür ederiz.

Teşekkür

DÜZENLEME: Ve evet, yerel olarak test ettik SCCM

yoluyla yerleştirilen değilken, senaryo harika çalışıyor

DÜZENLEME: Ben den Windows 8.1 ve 7 makinelere bu senaryoyu dağıtmak çalışılıyor bir SCCM 2012 R2 sunucusu. Daha önce bu formatta konuştum ve deneyim gerektirdikçe, bazen yeni programlar ile şeyler şekillenir.

cevap

0

Sadece bu sürümü atmayı bıraktım. Aynı betiği 1.8u73 ile kullandım ve gayet iyi çalıştı. 77.

için 32-bitlik bir çalıştırmayla ilgili yanlış bir şey olduğunu düşünüyorum ve 73 olarak gördüğüm şey Nessus taramalarımda kararlı ve pingleri görmekte, şimdilik bununla devam edeceğim.

0

Gareth,

Senaryonuzun ve diğer bir dizi baktıktan sonra ben 32 ve 64 hem biraz Java 8u77 Runtimes kuracak bir çalışma karışıklık tevhit başardı. Şu anda onun bir koleksiyona yükleneceğini biliyorum ama sadece OSD ile kurulumu test etmeye başlıyorum.

1) Hem 32 hem de 64 bit exe dosyalarını Oracle'dan yükleyin ve depoya kopyalayın.

2))

3 .exe 32 bit açın C jre1.8.0_77.msi dosyasını kopyalayın: senin deposuna Kullanıcılar \\ AppData \ Oracle \ Java \ jre1.8.0_77 klasör \.

4) depo içinde java.settings.cfg dosyası oluşturun

INSTALL_SILENT=Enable 
STATIC=Disable 
AUTO_UPDATE=Disable 
WEB_JAVA=Enable 
WEB_JAVA_SECURITY_LEVEL=H 
WEB_ANALYTICS=Disable 
EULA=Disable 
REBOOT=Disable 
NOSTARTMENU=Disable 
SPONSORS=Disable 

** Evet tüm bu işi bilmiyorum ama yine de

5) oluştur ... Neyse koydu senin install.cmd dosyası: İsteğe

@echo off 

REM *** Copy the files needed for install to the appropriate locations 
    IF NOT EXIST "%allusersprofile%\Oracle\Java" md "%allusersprofile%\Oracle\Java" 
    copy /y "%~dp0java.settings.cfg" "%allusersprofile%\Oracle\Java" 

    IF NOT EXIST "C:\Windows\System32\config\systemprofile\AppData\LocalLow\Oracle\Java\jre1.8.0_77" md "C:\Windows\System32\config\systemprofile\AppData\LocalLow\Oracle\Java\jre1.8.0_77" 
    copy /y "%~dp0jre1.8.0_77.msi" "C:\Windows\System32\config\systemprofile\AppData\LocalLow\Oracle\Java\jre1.8.0_77" 

REM *** Start our main x86 installer. Change your options here. 
    start /w "x" jre-8u77-windows-i586.exe /s SPONSORS=Disable INSTALLCFG=%~dp0java.settings.cfg REBOOT=ReallySuppress /L*V "C:\Windows\CCM\SoftwareLogs\JRE8u77Install.txt" 
REM *** Start our main x64 installer. Change your options here. 
    if exist "%ProgramFiles(x86)%\" start /w "x" jre-8u77-windows-x64.exe /s SPONSORS=Disable INSTALLCFG=%~dp0java.settings.cfg REBOOT=ReallySuppress /L*V "C:\Windows\CCM\SoftwareLogs\JRE8u77x64Install.txt" 

REM *** Exit the script back to SCCM. 
exit /B %EXIT_CODE% 

6): oluşturma bir uninstall.cmd

@Echo OFf 
REM Java Runtime 8 Uninstallers for x86 and x64 Update 77 
msiexec /x {26A24AE4-039D-4CA4-87B4-2F83218077F0} /q 
msiexec /x {26A24AE4-039D-4CA4-87B4-2F86418077F0} /q 

7) Uygulamayı SCCM'de oluşturun ve yükleme ve kaldırma komut dosyalarını kullanın. Yükleme tespiti için WMI kodlarını sadece Uninstall komut dosyasından kullandım.

Koleksiyonunuza ve işleyişinize dağıtın, hem 32 & 64 bit yükleyiciyle tam bir işlemsel JRE yüklemeniz olmalıdır.

Yükleme tamamlandıktan sonra "kopyalanan" dosyaları kaldırmamın gerekip gerekmediğinden emin değilim, ancak eminim ki başkaları da bizi arayacak ve değiştirecek kadar kolay olacak.

Bu yardımcı olur umarım. DC