×

Windows域推送软件、域推送安装msi程序、域推送安装软件的方法

hqy hqy 发表于2021-05-20 22:54:29 浏览4181 评论0

抢沙发发表评论

在公司局域网中,经常需要给局域网电脑安装同样的软件(例如安装“大势至禁用U盘软件”),如果一台一台安装则费时费力,同时一些软件的安装也会被员工抵触和反感,有可能影响到员工的工作积极性。那么,有没有一种非常简单的方法可以让你一次性、批量给局域网电脑全部安装某些软件呢?答案是:有。其实也就是通过Windows域控制器的方式来给局域网用户实现域推送软件、域推送安装msi程序、域推送安装软件,从而极大地便利了局域网网络管理工作。


一、思路 

在Windows域环境下推送 exe 程序并自动安装教程 

微软可以通过组策略对域中的计算机实现对 MSI 格式的软件程序实现派发后自动运行,但对于.exe 格式的软件无法实现指派。

对于此问题,可以通过组策略设置运行脚本,受控主机1通过脚本实现下载程序包并自动运行 exe 格式的软件程序。脚本分为启动和关机脚本,分别需

要实现的功能包括:

启动脚本:

1、 判断受控主机是否运行了指定进程

2、 如果运行指定进程,则直接退出

3、 如果未运行指定进程,则从网络共享文件夹拷贝软件安装包到受控主机的本地目录

4、 在本地目录运行 exe 程序

5、 执行后退出脚本

关机脚本:

1、 判断受控主机是否存在安装时的临时文件

2、 如果不存在,则退出

3、 如果存在,则删除该临时文件夹

4、 执行删除后退出

 
1受控主机是指在域中的计算机 


二、脚本

以下是详细脚本,“#”后是注释说明

开机脚本:
 

@echo off
 

#本行包括以下各行,隐藏命令输入,只显示命令执行结果
 

tasklist /nh|find /i "EDPSvc.exe"      #检查进程中是否存在 EDPSvc.exe 进程,如果存在则 errorlevel 的

返回值为 0

if %errorlevel%==0 ( exit ) else (      #如果 errorlevel 的值为 0,则退出脚本(即本机已经安装该程序)。

否则则执行以下命令
 

md c:\lansecs_temp  
 

#在本地创建临时文件夹 

 

ping -n 2 127.1>c:\lansecs_temp\null    #间隔时间 2 秒。该命令用于设置时间间隔,无其他意义,下同

 

echo 内网安全软件更新维护中…… #显示信息,下同

echo  请勿关闭此对话框。

ping -n 2 127.1>c:\lansecs_temp\null

net use \\192.168.10.35\share password /user:192.168.10.19\administrator    # 打 开 网 络 共 享 连
 

接,其中\\192.168.10.35\share 为网络共享的文件夹,administrator 为共享用户名,password 为密码。

192.168.10.19 该地址在此脚本中无意义,用于格式要求

ping -n 4 127.1>c:\lansecs_temp\null

copy \\192.168.10.35\share\EDPInstall_jingmo c:\lansecs_temp >c:\lansecs_temp\null    # 拷 贝 静 默 安

装包到本地文件夹

ping -n 4 127.1>c:\lansecs_temp\null

echo  请耐心等待,更新时间约 2 分钟……

start c:\lansecs_temp\EDPInstall.exe    #执行 EDPInstall.exe 程序

ping -n 2 127.1>c:\lansecs_temp\null

net use \\192.168.10.35 /delete    #断开网络共享文件夹的连接。有的服务器会有连接数限制,此命

令是为了避免过多的连接导致共享目录无法访问的问题

ping -n 50 127.1>c:\lansecs_temp\null

exit    #退出

  )  #if else 语句的格式要求
 
关机脚本:

if exist C:\lansecs_temp\EDPInstall.exe ( rd /s /Q C:\lansecs_temp ) else ( goto exit )   # 判 断 是 否 存 在

C:\lansecs_temp\EDPInstall.exe , 如 果 存 在 则 执 行 删 除 C:\lansecs_temp 文 件 夹 。 如 果 不 存 在

C:\lansecs_temp\EDPInstall.exe,则退出。
 
三、域控步骤

可以针对站点或者 OU 设置组策略。因为整个站点中可能包含敏感部门,建议是按照 OU 逐个设置组策

略,以下是以单个 OU 为例。

1、点击右键,属性,找到“组策略”选项卡 ce1.png
2、点击“新建”,设置名称为“lansecs”,然后点击“编辑”,进入组策略编辑界面
ce2.png
3、逐个展开“计算机配置”>”windows 设置”>”脚本”

 ce3.png
4、双击右侧的“启动”,设置开机启动脚本
ce4.png

5、 点击“添加”,然后点击“浏览”
 ce5.png
6、 将脚本通过复制、粘贴拷贝至其中

 ce7.png

7、 选中后选择“打开”,然后点击“确定”,完成启动脚本的设置
 ce8.png 

8、 同样方法,将 lansecs-shutdown.bat 加入至关机脚本中

ce9.png

9、 完成启动和关机脚本添加后,脚本设置完成。

10、 在关闭相关的窗口后,下一步,在 CMD 中,运行 gpupdate /force 刷新组策略。默认域控的组

策略更新时间是 5 分钟。


至此,域控上的操作完成。下一步,受控终端在收到组策略后,将在系统启动和关机时候执行脚本(受

控主机组策略更新时间是 90 分钟,可以通过 gpupdate /force 立即刷新) 


四、实施、排错


1、 建立共享文件夹,并将包括.exe 程序的安装包拷贝共享文件夹中。然后测试共享文件夹通过用户名、

密码能否正常访问及拷贝数据(注意共享文件夹名称及用户名、密码要与脚本中对应)


2、 本地运行脚本,测试能否自动执行.exe 程序。如果本地存在指定进程,测试能否自动退出脚本


3、 运行关机脚本,测试能否将安装时建立的临时文件夹删除


4、 在域控中,对 OU 设置组策略,加入脚本


5、 域控上,使用 gpupdate /force 刷新组策略


6、 在受控主机上,使用 rsop.msc,查看是否接收到了“脚本(启动/关机)”


7、 重启受控主机,测试能否通过组策略自动执行.exe 程序


通过上述方法,一般情况下都可以实现局域网自动安装程序,便利了局域网网络管理。


打赏

本文链接:https://www.kinber.cn/post/1718.html 转载需授权!

分享到:


推荐本站淘宝优惠价购买喜欢的宝贝:

image.png

 您阅读本篇文章共花了: 

群贤毕至

访客