Linux 系统守护进程管理 --(start-stop-daemon)

本文详细介绍Linux系统中使用start-stop-daemon命令启动、停止守护进程的方法。包括如何通过各种选项精确控制进程,如按用户、PID文件或进程名匹配,以及如何设定进程的优先级和后台运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、功能

启动或停止系统守护进程。

二、格式

start-stop-daemon [–启动|–停止] [选项] [–参数…]
其中(–启动|–停止)一项必须给出)
-S,–start 开始
-K,–stop 停止
[–参数…] 为向应用传入的参数(argv[1] argv[2] argv[3] …)

2.1 搜索匹配的过程

如果给定–stop,则(通过发送信号)停止所有匹配进程。
如果给定–start,除非找到匹配的进程,否则启动一个新进程。
选项控制过程匹配(如果指定了多个条件,所有条件必须匹配):

2.2选项

2.2.1匹配选项

-u,--user USERNAME|UID		只匹配该用户的进程
	USERNAME|UID		用户名称或UID
-p,--pidfile PID_FIL		匹配文件中带有PID的进程
	PID_FIL	PID文件
-n,--name PROCESS_NAME		通过在进程名称匹配查找进程
	PROCESS_NAME		进程名称可是绝对路径也可是相对路径

2.2.2只对–start有效的选项

-x,--exec EXECUTABLE		执行可执行程序(execvp的第一个参数)。强制性的。
	[EXECUTABLE]执行的应用(最好绝对路径)
-a,--startas NAME		argv[0](默认为可执行文件),与-x类似
-b,--background			把进程放到后台运行
-N,--nicelevel N		设置进程的优先级(NI)为N
-c,--chuid USER[:[GRP]]		改为指定用户[和组]
-m,--make-pidfile		将PID写入PID文件(pidfile)(必须同时使用-m和-p)

2.2.3只对–停止有效的选项

-s,--signal SIG		发送信号(默认:TERM)
-t,--test 		如果发现进程,则退出,状态为0

2.2.4其他选项

-o,--oknodo		如果未执行任何操作,则退出,状态为0
-q,--quiet		安静(静默输出)
-v,--verbose		冗长

三、应用

3.1 启动进程

3.1.1 强制启动

start-stop-daemon --start --background --exec [进程启动方法]
例:
start-stop-daemon --start --background --exec ./test
start-stop-daemon --start --background --exec /roottest

3.1.2 默认启动

start-stop-daemon --start --background --startas [进程启动方法]
例:
start-stop-daemon --start --background --startas ./test
start-stop-daemon --start --background --startas /root/test

3.1.3 启动进程,并生成进程的PID文件

start-stop-daemon --start —make --pidfile [进程PID文件] --exec [进程启动方法]
例:
start-stop-daemon --start —make --pidfile /root/test.pid --/root/test
start-stop-daemon --start —make --pidfile /root/test.pid --./test

3.2停止进程

3.2.1 使用进程名称停止进程

start-stop-daemon --stop --name [进程名称]
例:
start-stop-daemon --stop --name test

3.2.2 使用PID文件停止进程

start-stop-daemon --stop --pidfile [进程PID文件]
例:
start-stop-daemon --stop --pidfile /root/test.pid

linux系统命令start-stop-daemon的源码及二进制,其中也提供了一个服务启动脚本模板。 此程序能帮助你实现将命令行程序变成服务运行,比如将"java -jar xxx.jar" 放在后台执行。 ./start-stop-daemon --help start-stop-daemon 1.9.18 for Debian - small and fast C version written by Marek Michalkiewicz , public domain. Usage: start-stop-daemon -S|--start options ... -- arguments ... start-stop-daemon -K|--stop options ... start-stop-daemon -H|--help start-stop-daemon -V|--version Options (at least one of --exec|--pidfile|--user is required): -x|--exec program to start/check if it is running -p|--pidfile pid file to check -c|--chuid change to this user/group before starting process -w|--chdir change the work directory to 'dir' -u|--user | stop processes owned by this user -n|--name stop processes with this name -s|--signal signal to send (default TERM) -a|--startas program to start (default is ) -N|--nicelevel add incr to the process's nice level -b|--background force the process to detach -m|--make-pidfile create the pidfile before starting -R|--retry check whether processes die, and retry -t|--test test mode, don't do anything -o|--oknodo exit status 0 (not 1) if nothing done -q|--quiet be more quiet -v|--verbose be more verbose Retry is |//... where is one of -|[-] send that signal wait that many seconds forever repeat remainder forever or may be just , meaning //KILL/ Exit status: 0 = done 1 = nothing done (=> 0 if --oknodo) 3 = trouble 2 = with --retry, processes wouldn't die
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值