可以使用 svcadm disable 命令禁用已启用或临时禁用的服务实例。禁用的实例无法重新启动。您必须先启用该实例。
$ svcs -D FMRI
对于通过 svcs -D 命令获得每项结果,请使用 svcs -l 命令检查该相关项是否是必需的相关项。
如果此实例是其他服务必需的相关项,则不应禁用此实例。
服务的重启程序会尝试将指定的实例转换为 disabled 状态。
可以永久或临时禁用实例。永久禁用在系统重新引导后仍然有效,并且是缺省设置。临时禁用仅会持续到重新引导之前。
$ svcadm disable FMRI
使用 -t 选项指定临时禁用。
$ svcadm disable -t FMRI
如果希望现在禁用实例,但在下次重新引导时运行,请确保该实例正在运行(处于 online 或 degraded 状态),然后临时禁用该实例。要验证实例是否为临时禁用,请使用 svcs -l 命令并查看 enabled 行:
enabled false (temporary)
如果指定 -s 选项,则 svcadm 会禁用实例并等待该实例进入 disabled 状态后才返回。svcadm 命令在实例进入 disabled 状态或确定实例需要管理员干预才能进入 disabled 状态后返回。
将 -T 选项和 -s 选项一起使用,以指定完成转换或确定转换无法完成的上界(以秒为单位)。
$ svcadm disable -sT 10 FMRI
$ svcs FMRI
此示例显示 pkg/update:default 服务实例开始时处于联机状态,并且没有其他服务依赖于此实例。svcadm disable 命令成功执行,实例当前处于 disabled 状态,重新启动尝试失败。
$ svcs pkg/update STATE STIME FMRI online 7:18:17 svc:/application/pkg/update:default $ svcs -D pkg/update:default STATE STIME FMRI $ svcadm disable pkg/update $ svcs pkg/update STATE STIME FMRI disabled 22:51:12 svc:/application/pkg/update:default $ svcadm restart pkg/update:default $ svcs pkg/update STATE STIME FMRI disabled 22:51:12 svc:/application/pkg/update:default