当前位置: 技术问答>linux和unix
如何用c语言实现添加系统服务???(linux,unix)
来源: 互联网 发布时间:2016-01-19
本文导语: 请问各位大虾,我想做一个程序,运行后自动在unix,linux中添加系统服务,启动自身。用c作。 如果有类似的代码最好,没有请给个提示,谢谢了。 | 一般来说,这样的事情是用脚本完成的,...
请问各位大虾,我想做一个程序,运行后自动在unix,linux中添加系统服务,启动自身。用c作。
如果有类似的代码最好,没有请给个提示,谢谢了。
如果有类似的代码最好,没有请给个提示,谢谢了。
|
一般来说,这样的事情是用脚本完成的,用C的话也可以。
linux的服务其实就是放在特定目录下的脚本,所有脚本在目录/etc/init.d下,对于每一个运行级别在其下有一个子目录,比如Run level 3,目录是/etc/init.d/rc3.d,其下是一些链接到上一层目录脚本文件的符号链接,比如:
S12smb -> ../smb
K10smb -> ../smb
等等
其中第一个字母S表示启动时运行的脚本,K表示结束服务时运行的脚本,一般指向同一个脚本,并传入不同参数,由脚本根据参数做不同动作。
之后的数字代表优先顺序,系统启动相应运行级别时会根据这个数字依次启动或结束服务。
linux的服务其实就是放在特定目录下的脚本,所有脚本在目录/etc/init.d下,对于每一个运行级别在其下有一个子目录,比如Run level 3,目录是/etc/init.d/rc3.d,其下是一些链接到上一层目录脚本文件的符号链接,比如:
S12smb -> ../smb
K10smb -> ../smb
等等
其中第一个字母S表示启动时运行的脚本,K表示结束服务时运行的脚本,一般指向同一个脚本,并传入不同参数,由脚本根据参数做不同动作。
之后的数字代表优先顺序,系统启动相应运行级别时会根据这个数字依次启动或结束服务。