Ubuntu/Linux:启动脚本(sysvinit)的启动参数通常如何定义?

Ubuntu/Linux:启动脚本(sysvinit)的启动参数通常如何定义?

我很好奇告诉启动脚本使用某些参数执行的标准方法是什么。

例如对于 MySQL,有 my.cnf,据我所知,启动参数由 my.cnf 中指定的配置选项派生(即--bind-address=127.0.0.1对应于bind-addressmy.cnf 文件中的选项等)。

我一直认为每个守护进程/服务都会有一个配置文件,/etc/<some_app>并且这些启动选项由该文件确定。但是,我遇到了几个守护进程/服务,我找不到它在哪里/如何确定使用哪些参数启动。 /etc/init.d/<some_script>通常有几个条件和通常的默认值,但我不确定这些启动选项实际上是在哪里确定的。几个例子是pure-ftpdmediatomb;无法从 init.d 脚本中判断参数是如何定义的:前者有一个conf/子目录,其中的文件代表启动选项(这些似乎是 Debian/Ubuntu 特定的配置方法,因为软件包apt安装了pure-ftpd-wrapper引用这些配置文件的)。使用 mediatomb,只有一个 config.xml 文件。

我想这个问题可以表述为:“如果您想要更改类似 Debian 的系统上典型包安装守护程序/服务应用程序的启动选项,您应该在哪里查看?”

答案1

对于许多服务,您需要查看/etc/default/{service}脚本片段,该脚本片段允许您插入/修改无法通过修改配置文件来配置的服务的命令行选项。

但并不是每个服务都遵循这种模式。有时你必须/etc/init.d/{service}直接编辑文件。

grep source一个快速的方法就是为您感兴趣的内容做一个/etc/init.d/{service}。大多数启动脚本都使用 dash 或 bash。启动脚本经常/etc/default/{service}使用命令(如source /etc/default/{service}启动脚本顶部的命令)从或其他地方加载配置。

答案2

在 Google 上搜索 pure-ftp 的第三个链接:

http://www.ubuntu-howto.info/howto/how-to-install-and-configure-pure-ftpd

Mediatomb 文档:

http://mediatomb.cc/pages/documentation#id2856319

您还应该查阅每个包的相应手册页。

相关内容