早上刚到工位,设计部小王就跑过来说,CATIA又登不上了。
我点开服务器看了一眼,32个许可,全被占着。
但其中有11个,是上周请假同事的电脑,人都不在,许可还死死挂在那儿。
别担心,这种情况我见过太多次。
不是钱的问题,是许可没转起来。
很多老板第一反应是:再买几个吧。
其实你仔细看,真正在画图的人,没那么多。
工程师合上笔记本去开会,软件没关。
许可服务器不知道人走了,还以为在干活,就一直留着。
点一下“借用7天”,许可就锁死在那台电脑上。
人回来上班,连着公司网,也不会自动还。
CATIA一打开,曲面、装配、仿真全签走了。
可这个人今天只画了个草图,其他功能躺在那儿睡大觉。

你可以把它想成公司里的共享汽车。
谁要开,谁来扫码;到了站,车给别人用。
不是每人发一辆停着。
请打开你的许可服务器,敲这一行:
lmutil lmstat -a -c 27000@你的服务器名
请注意,回车后,你会看到一大排名字。
重点看两个地方:start time:什么时候拿的 hostname:哪台电脑 许可为什么迟迟不回来?
因为服务器太客气,等很久才确认“这个人是不是走了”。
在Linux服务器上,我一般会改三个小参数:
net.ipv4.tcp_keepalive_time = 60
net.ipv4.tcp_keepalive_intvl = 10
net.ipv4.tcp_keepalive_probes = 3
很简单,意思是:
60秒探一次,连探3次没反应,就当人走了,许可收回。
以前要等半小时,现在几分钟就腾出来了。不是所有功能都要一直占着。
像曲面、仿真这种,用的人少,我就单独给它们定个时。
在license文件里加一行:
TIMEOUT GSD 600
意思是,这个曲面功能,如果600秒没动静,就尝试收回。
请注意,我只给这些“贵”的功能设。
普通建模功能,工程师一直在鼠标点点点,不会被误收。很多软件默认可以借7天。
我一般改成1天,甚至半天。
BORROW 24 GSD
出差的人,当天能还就当天还。
第二天凌晨,我再跑一个小脚本,把没还的清掉:lmutil lmremove -c 27000@服务器 -f GSD -h all
别紧张,这个操作不会删软件,只是把卡死的许可“抖一抖”,让它们回池子里。
以前许可满了,软件直接弹红字,用户以为坏了。
我后来加了一个小设置:
QUEUESIZE=5
允许最多5个人排队等。
配合客户端这边改一个环境变量:set FLEXLM_TIMEOUT=12000000
很简单,就是告诉软件:别急,多等一会儿,前面有人用完你就上。
工程师看到“前面还有2人”,心里有数,不会乱点。去年,我把许可数据拉出来看了三个月。
发现一个规律:
每天上午10点到11点最挤,下午2点以后,一大半空着。
我就跟仿真组商量,把大型计算挪到下午跑。
早上的池子,优先给结构、数模、出图的人。
只调了时间,没加一个许可,投诉少了一半。
命令行是给管理员看的。
设计师需要的是一句话:“现在能不能用?”
我在服务器侧跑了格发许可优化器,只开两个功能:
不会。
许可只是“通行证”,不是“文件锁”。
收回后,软件会提示你进入只读或脱机模式,画好的东西都在。
所以我只收紧“前处理”功能。
真正求解用的feature,我不设短超时,走单独池子,甚至走云资源。
单独一个小池子,数量卡死。
用完了排队,不会挤占正式员工。

同一家公司,同样32个CATIA许可:
| 项目 | 调之前 | 调之后 |
|---|---|---|
| 早高峰登不上次数 | 每天十几回 | 一周两三次 |
| 许可闲置占比 | 35% | 8% |
| 去年增购数量 | +8个 | 0个 |
| 省下的钱 | — | 约十四万 没换软件,没砍人,只是让许可转起来了。 |
别等年底盘点。
今晚下班前,远程到服务器,敲一遍lmstat。
把那些“拿了一整天还没动”的记下来。
明天一早,先把这些清掉。
你会发现,上午的“登不上”,少了一半。
研发工具贵,是真的。
但很多时候,我们不是买得不够,是放得不对。
许可循环使用,不是什么高深技术,就是几个小开关、一点习惯。
调顺了,每个人都能用上,老板不用拍脑袋加钱,你也少接几个电话。