启东建设网站,wordpress莫名文章,网站建设维护视频教程,mvc电子商务网站开发本文介绍在Linux下#xff0c;使用systemctl设置开机自动运行程序#xff0c;实现创建一个systemd服务单元文件#xff0c;并启用该服务的方法。
1、创建.service文件
在/etc/systemd/system/目录下创建一个以.service结尾的文件#xff0c;例如myapp.service#xff1a…本文介绍在Linux下使用systemctl设置开机自动运行程序实现创建一个systemd服务单元文件并启用该服务的方法。
1、创建.service文件
在/etc/systemd/system/目录下创建一个以.service结尾的文件例如myapp.service
sudo touch /etc/systemd/system/myapp.service2、编写服务
sudo vim /etc/systemd/system/myapp.service写入以下内容
[Unit]
DescriptionMy custom startup program
Afternetwork.target[Service]
Typesimple
ExecStart/path/to/your/program[Install]
WantedBymulti-user.target其中将/path/to/your/program替换为你想要运行的程序的完整路径。
3、重新加载systemd管理器配置
sudo systemctl daemon-reload4、启用服务
sudo systemctl enable myapp.service至此重启后。设置的程序就会自动运行了。
5、配置程序日志存储方式
将.service 文件的StandardOutput 和 StandardError 设置为 journal 或 inherit如果系统支持。
[Service]TypesimpleExecStart/path/to/your/programStandardOutputjournalStandardErrorjournal直接从控制台获取输出可以使用 journalctl 命令来查看服务的日志:
journalctl -u myapp.service6、关于systemctl命令
systemctl enable myapp.service #开启开机自启动
systemctl disable myapp.service #停止开机自启动
systemctl start myapp.service #启动 myapp 服务
systemctl stop myapp.service #停止 myapp服务
systemctl restart myapp.service #重启 myapp服务
systemctl status myapp.service #查看服务当前状态
systemctl list-units --typeservice #查看所有已启动的服务
systemctl list-unit-files |grep myapp #查看是否正确启动
sudo systemctl daemon-reload #刷新配置system目录7、.service文件格式简介 [Unit] Description对该服务的描述Documention说明文档Before指定本服务需要在哪些服务之前启动After指定本服务在哪些服务之后启动Wants弱依赖于某个service即使被依赖服务启动失败或停止本服务仍然运行Requires强依赖于某个service如果被依赖服务启动失败或停止本服务也会停止。 [Service] EnvironmentFile服务的参数文件形成$OPTIONSExecStart: 服务启动命令ExecReload: 服务重启命令ExecStop: 服务停止命令Type服务启动类型。默认simple表示ExecStart为主进程notify类似于simple启动结束后会发出通知信号。另外还有forking,oneshot,dbus,idle等类型KillMode服务停止类型默认control-group停止时杀死所有子进程process只杀主进程none只停止服务不杀进程Restart服务重启类型默认no不重启on-success正常退出时重启on-failure非正常退出时重启还有always,on-abnormal,on-abort等RestartSec间隔多久重启服务。 [Install] WantedBy服务所在的服务组。
8、参考
使用systemctl start xxx启动自己的程序|开机启动|守护进程。