昨天老张火急火燎找我,说设计部炸锅了,明明买了50个网络版许可,刚上班就报错“拒绝访问”。
我一听就乐了,这种事我见了不下八百回,多半是把浮动许可当单机版养了,光借不还,池子早干了。
这就是典型的“把公车开回自己家锁车库里”,真正要用的人只能干瞪眼,其实这玩意儿底层逻辑特好理解。
浮动许可本质是个公共池子,随用随取,你要是占着茅坑不拉屎,服务器那边可没长眼。
昨天那情况,服务器日志拉出来一看,好家伙,一半以上的连接是昨天下班留下的。
这些进程还在那挂着呢,服务器傻乎乎地算它们“在线”,这就是所谓的“僵尸占用”。
要想治这病,光靠吼没用,得动刀子,今儿个我就把压箱底的底层逻辑和实操细节掏出来。
别上来就改配置,那是菜鸟才干的事,咱得先看看是哪些“老赖”在占坑。
打开cmd,切到FlexLM的安装目录,通常是 C:\Program Files (x86)\Autodesk\Network License Manager。
敲个 lmutil lmstat -a -c license.dat,这命令一跑,谁在用、用了多久全出来了。
重点关注 Start Date 这一栏,要是有人从昨天上午就挂着,今天还没动静,这就是你的靶子。
找到病根,下一步就是改配置文件,这是让服务器“长眼”的关键。
找到那个 license.dat 文件,右键用记事本打开,千万别手抖改错格式,这文件娇气得很。
在 VENDOR 那一行下面,必须得加一句 TIMEOUT ALL 1800,这行代码是救命符。
意思就是,你要是1800秒(半小时)没动静,服务器就当你挂了,直接把许可抢回来。

我第一次玩的时候,脑子进水,把这行加到了 INCREMENT 下面,结果服务直接起不来。
报个 Line too long 或者 Bad header 错误,那是系统在骂街,位置绝对不能错。
一定要加在 VENDOR 行之后,FEATURE 行之前,这位置风水极差,放错就炸。
还有个坑,别把时间设太短,我见过有人设60秒,结果人家去倒杯水回来,图没了。
尤其是跑仿真的兄弟,人家算一晚上都没动静,你给人家断了,小心人家提刀来找你。
一般设计类设1800秒(半小时),仿真类设7200秒(两小时),这数是我试错试出来的。
光改文件有时候不灵,尤其是那种电脑睡眠的,心跳包没了,服务器还在傻等。
这时候就得动用“格发许可优化器”这种神器了,当然你自己写脚本也行,就是费劲。
它的原理是在客户端装个眼线,监控CPU和鼠标,发现没动静直接软断开。
我之前手写过一个bat脚本,配合 lmremove 命令,结果把正在渲染的图给杀了,差点没被设计部打死。
所以我现在的建议是,别自己瞎折腾脚本,上专业工具,它能识别是真的挂机还是在渲染。
改完 lmgrd -c license.dat 重启一下服务,这一步谁都会,但有个细节得说道说道。
别直接在任务管理器里杀进程,那样容易把锁文件(.lock)留在硬盘里删不掉。
得用 lmutil lmdown 命令温柔地停服务,再起来,这才是老鸟的操作。
配完之后发现大家都掉了?别慌,看看防火墙,这锅我背过,排查了半天。
有些公司IT策略严,心跳包过不去,服务器以为你死了,你以为是断网了。
去防火墙把27000端口和厂商端口(比如2080)放行,入站出站规则都得加。
这整套搞下来,原本50人的许可能跑出80人的效果,老板还得给你发奖金。
技术这玩意儿,全是细节,别光看理论,得动手试,出了事别慌,多看日志。
刚才说的那些坑,都是我用无数个通宵换来的,大家且行且珍惜。