SLES 12:客户端服务既非service也非target?安装RPM遇提示
搞定SLES 12下BESAgent服务的识别问题
嘿,这问题我碰到过类似的!你安装的是适配SLES 11的BESAgent包(BESAgent-9.5.8.38-sle11.x86_64.rpm),而SLES 12已经全面用systemd当初始化系统了,但它还是兼容传统的SysV init脚本——你看到的提示就是在说这事:当前输出只显示SysV服务,systemd可能已经自动把这个老脚本转成临时的.service单元了。
给你一步步来的解决办法:
先确认服务脚本的位置
先看看这个包有没有装SysV的服务脚本,跑这个命令:ls /etc/init.d/ | grep BESAgent如果能找到
BESAgent这个脚本,那它就是个传统的SysV服务没跑了。用systemd命令直接管理它
systemd会自动给SysV脚本生成对应的.service单元(一般就叫BESAgent.service),你直接用systemd的命令操作就行:- 查看服务状态:
systemctl status BESAgent.service - 设置开机自启:
systemctl enable BESAgent.service - 启动服务:
systemctl start BESAgent.service
- 查看服务状态:
如果systemd没自动生成单元,手动造一个
要是上面的命令提示找不到服务单元,那你手动创建一个systemd服务文件/etc/systemd/system/BESAgent.service,内容抄下面的(注意PID文件路径如果不对要改成实际路径):[Unit] Description=BigFix BES Agent After=network.target [Service] Type=forking ExecStart=/etc/init.d/BESAgent start ExecStop=/etc/init.d/BESAgent stop ExecReload=/etc/init.d/BESAgent restart PIDFile=/var/run/BESAgent.pid [Install] WantedBy=multi-user.target创建完跑这几个命令生效:
systemctl daemon-reload systemctl enable BESAgent.service systemctl start BESAgent.service最后提个小建议
最好还是找适配SLES 12的BESAgent包来装,这样会自带原生的systemd service单元,就不会有这种兼容麻烦了。如果找不到对应版本,联系BigFix官方要就行,或者先用上面的办法凑合用。
内容的提问来源于stack exchange,提问作者codec
相关产品推荐
相关产品推荐

