Linux update-rc.d 在 FreeBSD 中的等价物是什么?

Linux update-rc.d 在 FreeBSD 中的等价物是什么?

在 Linux 中,我可以使用命令轻松添加服务或从启动时禁用它update-rc.d

我正在尝试创建一个可切换的服务,但我不想进入 sed 手动编辑文件/etc/rc.conf并添加/编辑一行service_enable=YES/NO

答案1

有一个很好的工具可以完成这项工作,名为系统资源库这样你就可以避免手动编辑/etc/rc.conf

例子:

sysrc nginx_enable=YES
sysrc sendmail=NONE

此外,您还有服务控制您的服务的命令:

service nginx start
service nginx reload

答案2

不存在精确的等价,有两个原因。 update-rc.d纳入了 Mewburn 系统中没有的“政策”机制rc;并且update-rc.d有各种机制,诚然,自 2013 年以来就已经不存在了,它们处理 FreeBSD 和整个 BSD 世界一样没有概念的运行级别。

关于已经不存在的事物的主题:现在在 Linux 系统上您可能会使用systemctl而不是update-rc.d.

用于启用或禁用服务的内容取决于您所使用的服务管理系统。

  • 莫伯恩rcrc对于普通 FreeBSD 附带的Mewburn系统,确实有sysrcM. Andersen 在另一个答案中提到的。

    sysrc -v 监狱启用
    sysrc sshd_enable=YES
    
  • 打开RC:对于 FreeBSD 衍生产品之一 TrueOS 附带的 OpenRC 系统,可以使用以下命令来启用和禁用服务rc-update

    rc-update 添加 nginx
    rc-更新删除 ipfw
  • 诺什服务管理:为了小吃服务管理除了_enable从各种rc.conf文件获取设置并进行转换的外部配置导入机制之外,您还可以选择本机启用和禁用服务:
    • 有本机system-control命令:

      系统控制预设 gopher4d
      系统控制启用 sshd
      系统控制禁用 ntpd
    • 有一个兼容性systemctl命令:

      systemctl 预设 gopher4d
      systemctl 启用 sshd
      systemctl 禁用 ntpd
    • 有一个兼容性update-rc.d命令:

      update-rc.d sshd 默认值
      update-rc.d ntpd 删除

      defaults子命令相当于system-control preset,这意味着它考虑了预设的文件信息,因此该命令更接近该rc名称的 van Smoorenburg 实用程序。

    • 有一个兼容性rcctl命令:

      rctl 启用 sshd
      rctl 禁用 ntpd

      rcctl是 OpenBSD 用于编辑/etc/rc.conf.local.

所有这些都启用和禁用各自系统的本机服务。

相关内容