企业母盘 Ghost 方案(镜像制作)指引私有化版
最近更新时间:2024年12月23日 14:18:46
Windows 企业母盘 Ghost 方案(镜像制作)指引
1. 登录 iOA 零信任管理平台控制台,在左侧导航栏,选择策略中心 > 终端管控策略 > 客户端管理。
2. 在客户端管理页面,选择客户端自保护,在编辑策略模块中,选择客户端自保护开关设置。
3. 确保后台允许客户端修改设置、关闭客户端自保护。
4. 在 iOA 客户端上,单击 ![]()
> 设置。
5. 选择常规设置 > 自保护-临时关闭自保护,应用后单击确定。
6. 在客户端上执行
superKill.bat
脚本。说明:
请您联系 iOA 技术人员获取
superKill.bat
脚本。7. 备份
C:\ProgramData\ZtsmEnt\Basic\Enterprise_GlobalMgr.db
文件到另一个位置,然后将其删除(待镜像完成后,将该文件复制回原处)。
8. 单击继续。
9. 将
serverconfig.dat
文件进行修改。文件路径:
C:\ProgramData\ZtsmEnt\Basic\Serverconfig.dat
。serverconfig.dat
里面usrlogin
节点数据需要删除。如下图灰色部分全部删除:
10. 开始制作镜像,请等待镜像制作完成。(到此镜像已经制作完成)。
11. 因前面做镜像,将母机损坏,这里为了恢复母机,因此需要把刚备份的
Enterprise_GlobalMgr.db
还原回去(如果不再需要这台母机,可以跳过此操作)。
12. 在 iOA 客户端上,单击 ![]()
> 设置。
13. 选择常规设置 > 自保护-开启自保护,应用后单击确定。
14. 至此,母机恢复完成。
macOS 企业母盘 Ghost 方案(镜像制作)指引
客户端提供清除唯一标识及相关字段的方案及步骤:
1. 正常安装 iOA,启动后确认 iOA 工作正常。
2. 关键步骤:制作母盘时,确保设备是断网状态,设备断开网络。
3. 运行母盘制作脚本。在 Mac 终端中运行脚本:
sudo /Users/aaaa/Downloads/cleaniOA
。
4. 关键步骤:确认清除唯一标识符相关字段 currentMid、lastGuid、lastMacAddress 的值,查看方式如下:
方式1:使用命令查看
4.1 在终端中用命令查看对应key的值,如:查看 currentMid,查看 lastGuid 替换对应 key 值即可。
sqlite3 /Library/Application\ Support/QQPCiOA/QQPCMgrConfig.db "select value from config where key='
currentMid
'"
4.2 如下则清除成功。
方式2:使用 DB 工具查看
4.1 查看清除内容,数据库位置如下,可使用 DB Browser 浏览数据。
4.2 关键步骤:currentMid 字段,选择浏览数据,在 key 中过滤 currentMid/lastGuid/lastMacAddress,如下即是存在,若没有显示则清除成功,其他字段按照相同方式查看即可。
5. 开始制作母盘。
注意:
制作过程中设备网络断开状态(不能联网),防止设备标识生成重复。
6. 验证效果:母盘制作完成后,找两台或多台设备安装母盘,完成启动 iOA,设备联网,查看 iOA 工作状态,同步策略。查看两台设备的 iOA 唯一标识符不同,即母盘制作成功(使用上述方式1或方式2查看即可)。
Linux iOA 制作系统镜像指引
1. 环境准备。
PC 机断网。
正常安装 iOA 软件。
2. 删除文件:
sudo rm -f /var/lib/com.tencent.ioa/hostcoreinfo.cfg
。各端避免镜像安装后 mid 一致解决方案
Windows
1. 安装 iOA。
2. 断开网络。
3. 删除文件:
C:\ProgramData\Tencent\DeskUpdate\Enterprise_GlobalMgr.db
。
4. 制作镜像。
macOS
1. 正常安装 iOA 后,同步策略成功。
2. 断开当前的网络。
3. 结束 iOA 所有主要进程,提供脚本。运行脚本方式:
sudo sh /Users/harveyxu/Downloads/restartiOA
。4. 清除 iOA 数据库中 mid 内容,数据库位置如下,可使用 DB Browser 浏览数据:
5.
mid
字段,选择浏览数据,在 key
中过滤 mid
,然后进行删除。
6. 保存修改值。
7. 重启 iOA,记录时间,观察网络服务中的网络请求没有包含
mid
值,6001 请求中的 lastmid
字段值为空,即删除 mid
成功。
8. 制作 macOS 镜像,详情请参见 macOS 企业母盘 Ghost 方案(镜像制作)指引。
9. 重启 iOA 脚本,脚本内容如下:
#! /bin/bash#set -o kill set -eecho "开始"rm -rf /tmp/sys_imagerm -rf /tmp/sys_image_installer.logecho "sys_image" >> /tmp/sys_imagelogPath=/tmp/sys_image_installer.logecho "开启重启iOA相关进程" >> $logPath# /usr/bin/killall -9 ztsmwechat# /usr/bin/killall -9 QQPCMgr# /usr/bin/killall -9 QQPCMgrDaemon# /usr/bin/killall -9 QQPCPolicyMgr# /usr/bin/killall -9 NetworkServiceMgr# /usr/bin/killall -9 runmgr# /usr/bin/killall -9 ztsmwechat# /usr/bin/killall -9 runmgr# /usr/bin/killall -9 QQPCUpdate# /usr/bin/killall -9 NetworkServiceMgr# /usr/bin/killall -9 tav# /usr/bin/killall -9 NGNMgr# /usr/bin/killall -9 QQPCUpdate# /usr/bin/killall -9 tav# /usr/bin/killall -9 iOADiagnosis# /usr/bin/killall -9 QQPCWatermark# /usr/bin/killall -9 PreLoginQQPCMgr# /usr/bin/killall -9 dns_guard# /usr/bin/killall -9 QQPCEdr# /usr/bin/killall -9 QQPCDlp# /usr/bin/killall -9 ztsmedr# /usr/bin/killall -9 ztsmdlpecho "进程结束" >> $logPathecho "清理数据库开始" >> $logPathecho "清理前DB CurrentMid:" >> $logPathmidQueryRet=$(sqlite3 /Library/Application\ Support/QQPCiOA/QQPCMgrConfig.db "select value from config where key='currentMid'" 2>>$logPath) || {echo "Error: Failed to query 'currentMid' from db" >> $logPath}echo "query 'currentMid' from db, got val = $midQueryRet" >> $logPathecho "开始清理db" >> $logPathsqlite3 /Library/Application\ Support/QQPCiOA/QQPCMgrConfig.db "delete from config where key='currentMid'"sqlite3 /Library/Application\ Support/QQPCiOA/QQPCMgrConfig.db "delete from config where key='lastGuid'"sqlite3 /Library/Application\ Support/QQPCiOA/QQPCMgrConfig.db "delete from config where key='lastMacAddress'"echo "清理结束" >> $logPathecho "清理后DB CurrentMid:" >> $logPathmidRet=$(sqlite3 /Library/Application\ Support/QQPCiOA/QQPCMgrConfig.db "select value from config where key='currentMid'" 2>>$logPath) || {echo "Error: Failed to query 'currentMid' from db" >> $logPath}echo "query 'currentMid' from db, got val = $midRet" >> $logPathecho "制作结束" >> $logPathecho "结束"
Linux
1. 安装系统。
2. 安装 iOA。
3. 断开网络。
4. 在 Linux 命令行中,执行以下命令以删除 MID 文件。
rm -f /var/lib/com.tencent.ioa/hostcoreinfo.cfg
5. 制作镜像。
已有问题的 mid 处理
1. 在
/data/services/pcmgr_enterprise/public/service/device-mgr/devices/conf/devices.conf
文件中,将EnableLastMid = 1
修改为EnableLastMid = 0
。此更改需要应用于所有总控机器。2.
delete from devices where mid
= '有问题的mid',删除异常的 mid。3.
supervisorctl restart devices conn-sc conn-lc
所有总控机器都需要执行。4. 终端保持网络在线大约1个多小时之后(或重启机器后),客户端会重新请求6002并重新注册 MID。