[点晴永久免费OA]在服务器上装软件,多一步就能避免所有用户使用同一个软件时的冲突
|
admin
2026年7月18日 0:25
本文热度 25
|
前六篇文章,我们完成了两件事:学会了服务器的日常巡检,建立了一人一账号的用户体系。每一台服务器对应的五个用户现在各有各的账户,各自能在自己的隔间里互不干扰地工作。手术计划软件厂商发来了新版本安装包,或者科室新采购了一个三维重建插件,需要部署到服务器上。你双击安装包,一路下一步,装完测试,一切正常。五位医生异口同声:桌面和开始菜单里找不到新装的软件。你明明装在了所有用户都能访问的路径。为什么他们看不到?它只涉及一条命令,但这条命令,是多用户服务器运维中最重要的安装铁律。要理解这个问题,我们需要先回忆上一篇建立的一个核心认知:每位医生登录后,系统都为他创建一个完全隔离的会话隔间。这个隔间不仅隔离了运行中的程序,也隔离了一部分系统配置。当你在管理员会话里双击安装程序时,安装程序对系统做出的某些修改,尤其是开始菜单快捷方式的注册、桌面图标的放置、某些注册表项的写入,可能只被记录在了你当前的管理员会话上下文里。它忠实地执行了安装程序的指令,而某些老旧的安装程序,本身就没有为所有用户安装的意识。结果就是:软件文件确实装进了 C:\Program Files\,但快捷方式、文件关联、右键菜单,只存在于你的管理员账户里。二、change user /install:给安装加一个广播模式Windows Server 为多用户环境准备了一个专门的安装模式。
- change user /install 切换到 “安装模式”
- change user /execute 恢复为 “执行模式”
在正常执行模式下,每个医生的会话是独立的隔间,系统尽量保持互不干扰。但当你需要安装软件时,你希望这次操作的某些结果能够广播到所有隔间。install 模式就是打开广播开关,execute 模式就是关掉广播,恢复正常隔间。在 install 模式下,操作系统会监视安装程序的一举一动。它对开始菜单、桌面、注册表共享区域所做的修改,会被系统记录下来。当你执行 change user /execute 退出安装模式时,这些记录会被正确地映射到每个用户的会话环境中。下次医生登录时,他们就能看到新软件的快捷方式和文件关联了。现在,我们来执行一次完整、标准的安装流程。请把以下步骤保存在手机备忘录里,每次在服务器上装软件时逐条核对。第一,在 install 模式下做完安装,忘了切回 execute 模式。这会让服务器一直处于广播状态,可能影响后续用户会话的正常行为。所以第5步和第4步同样重要,缺一不可。第二,安装和切换都在同一个命令提示符窗口里完成。不要在一个窗口执行 install,然后关掉,过一会儿再开一个新窗口执行 execute。虽然实际影响不大,但保持同一个会话完成整个流程,是最严谨的做法。也许你现在读到这篇文章时,已经有过一次“忘了执行 install 就装完了”的经历。软件文件已经躺在 Program Files 里了,但医生们看不到入口。怎么办?方案一:最彻底。卸载刚才的软件,重启服务器(确保没有残留会话),然后严格按照上面的六步流程重装一遍。如果软件是新装的,还没有医生在上面保存过配置数据,这是最快最干净的方法。方案二:手动补发快捷方式。如果你不想重装,可以手动把软件的快捷方式复制到公共桌面或公共开始菜单目录。路径是:C:\Users\Public\Desktop\ (公共桌面)C:\ProgramData\Microsoft\Windows\Start Menu\Programs\ (公共开始菜单)把快捷方式放进这两个目录后,所有用户登录时都能看到。但注意,这只能补救入口问题。如果安装程序还做了一些注册表写入、文件关联、后台服务注册等操作,而这些操作没有被正确广播,那方案一手动重装是唯一可靠的选择。方案三:联系软件厂商,询问他们是否提供静默安装参数或多用户部署指南。一些企业级软件本身就能支持为所有用户安装,只是需要加特定的命令行参数。在这种情况下,你仍然需要在 install 模式下运行它。下面,我用一个你一定会遇到的实战场景,把今天学的命令串起来。背景:手术计划软件厂商发布了一个重要的安全补丁,要求所有用户在一周内完成更新。周六下午两点。提前三天已通知所有医生:周六14:00-16:00服务器维护,届时无法登录。你坐在办公室,用自己的笔记本电脑远程登录第一台服务器。打开任务管理器,切到“用户”标签,确认除了你自己的管理员会话之外,没有任何医生的残留会话。有一个已断开超过48小时的陈医生会话,右键把它注销掉。以管理员身份运行命令提示符,输入 change user /install。回车。提示“用户会话已准备好安装应用程序”。运行厂商给的补丁安装包。等待进度条走完。安装完成,不要立刻点“完成”按钮上的任何其他操作。切回命令提示符窗口,输入 change user /execute。回车。提示“用户会话已准备好执行应用程序”。现在,用你提前创建好的一个测试账户(比如 TestUser,属于 Remote Desktop Users 组,但没有任何管理员权限)远程登录这台服务器。确认手术计划软件能正常启动,版本号已更新为新版本,打开一个测试方案,保存,退出。一切正常。第一台服务器更新完毕。在运维日志上记录:日期、服务器名、操作内容、补丁版本号、验证结果。然后依次对第二台、第三台服务器重复完全相同的步骤。全部完成后,群发消息给五位医生:服务器维护完成,软件版本已更新,周一正常使用。这个计划,你现在就可以存下来。它就是你未来每一次软件更新的标准作业程序。今天,我们只讲了一条命令。但这条命令,是多用户服务器运维中最重要的操作规范之一。你学会了:change user /install 和 change user /execute 的作用和使用时机
现在,软件已经正确装到了服务器上,所有医生都能看到和启动。但还有一个问题我们没回答:五位医生用的是同一份安装在 C:\Program Files\ 里的软件文件。张医生在软件里把语言改成了英文,为什么李医生的界面还是中文?两人的设置互不覆盖,这背后的机制是什么?下一篇文章我们将揭开这个多用户环境中设计最精妙的机制。理解了它,你就能从容应对医生软件设置丢失、配置混乱等各种单用户故障。
阅读原文:点击这里
该文章在 2026/7/18 0:25:18 编辑过