SCCM 2007客户端安装和修复脚本
2012-08-28 15:34
281 查看
这是一套脚本一个vbs一个cmd两个脚本要一并使用
作用:
1、通过组策略的开机脚本去安装SCCM 2007客户端
2、判断是否有用户登录(本地登录),如果有用户登录则等待10分钟后开始检测SCCM 2007服务,目的是为了避免影响到用户登陆的时间。
3、如果SCCM 2007服务不存在启动CMD脚本强制安装SCCM 2007客户端。
4、如果服务存在检测服务是否运行,如果运行则直接将运行状态写到"c:\ccm_install.log"的日志中。
5、如果服务不运行强制将服务器启动,启动后再检测服务启动状态写到"c:\ccm_install.log"的日志中。
VBS脚本内容,需要保存为 ccm2007_install.vbs
'扫描是否有用户登录,如果没有10秒后重新扫描,直至有用户登录为止
strComputer = "."
dim loginusername,loginnum
Do Until loginusername = "\"
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colComputer = objWMIService.ExecQuery _
("Select * from Win32_ComputerSystem")
For Each objComputer in colComputer
loginnum = InStr(objComputer.UserName,"\")
If loginnum > 0 Then
loginusername = "\"
End If
Next
WScript.Sleep 10000
Loop
'检查SCCM2007 Agent服务(ccmexec)是否存在
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colRunningServices = objWMIService.ExecQuery("Select * from Win32_Service where Name = 'ccmexec'")
If colRunningServices.Count = 0 Then
'如果服务不存在执行ccm_install.bat批处理安装SCCM2007 Agent程序
'msgbox "服务不存在"
Set run = CreateObject("Wscript.Shell")
run.run "ccm_install.bat" , 0
Else
'如果服务存在,继续向下检查服务是否是运行
'msgbox "服务存在"
For Each objService in colRunningServices
'Wscript.Echo objService.DisplayName & VbTab & objService.State & objService.StartMode
'如果服务停止,强制将服务启动状态改为"自动",并强制启动服务
If objService.State = "Stopped" Then
errReturnCode = objService.Change( , , , , "Automatic")
objService.StartService
End If
Next
End If
'重新检查ccmexec服务状态,并将状态记录到"C:\ccm_install.log"日志中
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.CreateTextFile("C:\ccm_install.log")
For Each objService in colRunningServices
objFile.WriteLine("CCM_Service: " & objService.State)
Next
objFile.Close
CMD脚本内容,需要保存为 ccm_install.bat
net use o: "\\file\Software\办公软件\安装杀毒\SCCM_Client"
IF EXIST %windir%\ccm_client (
echo aaaaaa
) ELSE (
xcopy o:\. %windir%\ccm_client\ /s /a /d /y
)
net use o: /delete /y
%windir%\ccm_client\ccmsetup.exe
作用:
1、通过组策略的开机脚本去安装SCCM 2007客户端
2、判断是否有用户登录(本地登录),如果有用户登录则等待10分钟后开始检测SCCM 2007服务,目的是为了避免影响到用户登陆的时间。
3、如果SCCM 2007服务不存在启动CMD脚本强制安装SCCM 2007客户端。
4、如果服务存在检测服务是否运行,如果运行则直接将运行状态写到"c:\ccm_install.log"的日志中。
5、如果服务不运行强制将服务器启动,启动后再检测服务启动状态写到"c:\ccm_install.log"的日志中。
VBS脚本内容,需要保存为 ccm2007_install.vbs
'扫描是否有用户登录,如果没有10秒后重新扫描,直至有用户登录为止
strComputer = "."
dim loginusername,loginnum
Do Until loginusername = "\"
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colComputer = objWMIService.ExecQuery _
("Select * from Win32_ComputerSystem")
For Each objComputer in colComputer
loginnum = InStr(objComputer.UserName,"\")
If loginnum > 0 Then
loginusername = "\"
End If
Next
WScript.Sleep 10000
Loop
'检查SCCM2007 Agent服务(ccmexec)是否存在
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colRunningServices = objWMIService.ExecQuery("Select * from Win32_Service where Name = 'ccmexec'")
If colRunningServices.Count = 0 Then
'如果服务不存在执行ccm_install.bat批处理安装SCCM2007 Agent程序
'msgbox "服务不存在"
Set run = CreateObject("Wscript.Shell")
run.run "ccm_install.bat" , 0
Else
'如果服务存在,继续向下检查服务是否是运行
'msgbox "服务存在"
For Each objService in colRunningServices
'Wscript.Echo objService.DisplayName & VbTab & objService.State & objService.StartMode
'如果服务停止,强制将服务启动状态改为"自动",并强制启动服务
If objService.State = "Stopped" Then
errReturnCode = objService.Change( , , , , "Automatic")
objService.StartService
End If
Next
End If
'重新检查ccmexec服务状态,并将状态记录到"C:\ccm_install.log"日志中
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.CreateTextFile("C:\ccm_install.log")
For Each objService in colRunningServices
objFile.WriteLine("CCM_Service: " & objService.State)
Next
objFile.Close
CMD脚本内容,需要保存为 ccm_install.bat
net use o: "\\file\Software\办公软件\安装杀毒\SCCM_Client"
IF EXIST %windir%\ccm_client (
echo aaaaaa
) ELSE (
xcopy o:\. %windir%\ccm_client\ /s /a /d /y
)
net use o: /delete /y
%windir%\ccm_client\ccmsetup.exe
相关文章推荐
- SCCM 2007 R2 setp by setp(十)-SCCM客户端部署之客户端推送安装
- SCCM 2007 R2 客户端推送安装故障排除 二(转)
- SCCM 2007之五安装客户端程序
- SCCM 2007系列教程之二客户端安装之客户端请求安装
- SCCM_2007无法安装客户端故障排错
- SCCM 2007系列教程之二客户端安装之客户端请求安装
- 解决SCCM 2016客户端安装报错一例
- DSM SCCM 2012 部署 规划 配置 (三) 修复安装前 SQL错误信息
- Microsoft Office Communications Server 2007部署以及客户端安装(详细)【一】
- SCCM 2007 SP2 安装步骤摘要
- 部署SCCM 2012R2之七:安装客户端代理&创建集合篇
- SCCM2012客户端请求安装
- Cacti安装脚本Server端+客户端
- SCCM2012之客户端发现与安装
- 使用shell脚本自动化安装zabbix客户端
- SCCM2012 SP1客户端请求方式安装64Bit windows7失败 推荐
- 一个客户端一键安装环境和服务的shell脚本
- SCCM 2007 客户端疑难解析(一)
- SCCM 2012 R2 实战系列(八)—安装SCCM客户端
- SCCM 2007系列教程之四在工作组环境内实现SCCM客户端