linux 服务开机自启动systemd方式 (Centos7)
linux 服务开机自启动systemd方式 (Centos7)
1、编写一个 /opt/hello.sh 脚本
[root@jws-ftp prometheus]# cat /opt/hello.sh
#!/bin/bash
while true
do
echo hello world >> /tmp/hello.log
sleep 10
done
[root@jws-ftp prometheus]#
赋予执行权限
[root@jws-ftp prometheus]# chmod 0755 /opt/hello.sh
[root@jws-ftp prometheus]#
[root@jws-ftp prometheus]# ll /opt/hello.sh
-rwxr-xr-x. 1 root root 85 3月 1 14:04 /opt/hello.sh
[root@jws-ftp prometheus]#
2、在/etc/systemd/system/ 下创建Unit定义文件
[root@jws-ftp prometheus]# cat /etc/systemd/system/hello.service
[Unit]
Description = hello [Service]
ExecStart = /bin/bash /opt/hello.sh
Restart = always
Type = simple [Install]
WantedBy = multi-user.target
[root@jws-ftp prometheus]#
ExecStart中填写想要执行的脚本
Restart = always 是指进程或服务意外故障的时候可以自动重启的模式。
※Unit文件的详细写法会另外给出。
(Type = simple 指默认的选项没有必要填写,或可理解成其余选项均为系统默认)
3、把Unit添加进Service
使用systemctl list-unit-files --type=service命令查看,出现如下图所示即为正常。
[root@jws-ftp prometheus]# systemctl list-unit-files --type=service | grep hello
hello.service disabled
[root@jws-ftp prometheus]#
4、enable服务后使之start
之后系统将以一般服务的形式处理它
# 开机自启动on
[root@jws-ftp prometheus]# systemctl enable hello # 立即启动
[root@jws-ftp prometheus]# systemctl start hello
运行状态确认
[root@jws-ftp prometheus]# systemctl status hello
● hello.service - hello
Loaded: loaded (/etc/systemd/system/hello.service; enabled; vendor preset: disabled)
Active: active (running) since 一 2021-03-01 14:12:08 CST; 11min ago
Main PID: 38133 (bash)
CGroup: /system.slice/hello.service
├─38133 /bin/bash /opt/hello.sh
└─38272 sleep 10 3月 01 14:12:08 jws-ftp systemd[1]: Started hello.
3月 01 14:12:08 jws-ftp systemd[1]: Starting hello...
[root@jws-ftp prometheus]#
打开日志文件看看脚本是否正常运作
[root@jws-ftp prometheus]# tailf /tmp/hello.log
hello world
hello world
hello world
hello world
5、重启机器,查看服务是否正常自动启动
[root@jws-ftp prometheus]# reboot
重启后,如正常显示hello服务即为操作成功
Systemd的使用指南
https://www.jianshu.com/p/7fd8b6ea336e
spring-boot 项目可以配合 启动脚本进行使用
https://my.oschina.net/zhongwenhao/blog/3064313
linux 服务开机自启动systemd方式 (Centos7)的更多相关文章
- linux服务开机自启动&注册系统服务
首先先看下linux系统开机启动顺序,如下图 对,要解决Linux CentOS 和 Red Hat Linux 系统中设置服务自启动有两种方式,就是从图中圈出的两个步骤下手. 一.修改 /etc/r ...
- linux -- 服务开机自启动
好吧,最近需要用到开机启动服务,百度了一下,几乎都是一个版本,然后之间各种传递.我也抄个 ******************************************************* ...
- Linux服务开机自启动设置
Linux中也有类似于Window中的开机自启动服务,主要是通过chkconfig命令来设置.它主要用来更新(启动或停止)和查询系统服务的运行级信息.谨记chkconfig不是立即自动禁止或激活一个服 ...
- Linux服务开机自启动使用示例
本文以redis服务为例,介绍了两种服务自启动的方法service,systemctl使用示例 1.修改redis.conf,允许后台运行 daemonize no 改为 daemonize yes ...
- Linux(centos7)设置docker服务开机自启动以及容器自启动
docker服务开机自启动 systemctl enable docker 设置容器自启动 可以在运行的时候通过设置--restart 参数 docker run --restart always - ...
- Linux 服务管理两种方式service和systemctl
Linux 服务管理两种方式service和systemctl 1.service命令 service命令其实是去/etc/init.d目录下,去执行相关程序 # service命令启动redis脚本 ...
- linux 添加开机自启动脚本
原文 Linux设置服务开机自动启动的方式有好多种,这里介绍一下通过chkconfig命令添加脚本为开机自动启动的方法. 1. 编写脚本autostart.sh(这里以开机启动redis服务为例),脚 ...
- 如何把一个c语言程序做成windows服务开机自启动
原文:如何把一个c语言程序做成windows服务开机自启动 目前写的程序是一个用c语言实现socket侦听的,那么如何把这个程序做成开机自启动呢? 我们是通过vs6.0,编译后生成了.exe文件,然后 ...
- 红帽linux系统开机自启动脚本。
其实很多东西在最后完成以后会觉得也就那样,有意思的是探究的过程. 前段时间老板要求把一个程序做成linux系统开机自启动脚本的模式. 首先你需要写一个脚本. 我这边建立了一个.sh的脚本,就是用脚本启 ...
随机推荐
- 美团点评技术专家 帮你快速上手跨平台开发框架Flutter
Flutter并没有开创新的概念,它背后的框架原理和底层设计思想,与原生Android/iOS开发并没有本质区别,甚至从React.Native中吸收了不少优秀的设计理念. Flutter是Googl ...
- JavaWeb 补充(XML)
XML 1. 概念:Extensible Markup Language 可扩展标记语言 可扩展:标签都是自定义的. <user> <student> 功能: 存储数据 ...
- Java刷题-tree
一.分别按照二叉树先序,中序和后序打印所有的节点. 这道题就是书上的算法思想的实际使用,唯一需要特别注意到的是用递归的方式建树,还是比较巧妙的,因为一棵树的建立过程字符流是重复使用的,用递归的方式对根 ...
- 前端进阶(1)Web前端性能优化
前端进阶(1)Web前端性能优化 Web前端性能优化, 不仅能够改善站点的用户体验,并且能够节省相当的资源利用.下面将从1)服务器.2)html内容.3)css. 4)javascript. 5)图片 ...
- Alignment of Code UVA - 1593
You are working in a team that writes Incredibly Customizable Programming Codewriter (ICPC) which ...
- qsort 快排函数(C语言)
qsort 快排函数(C语言) 函数原型 void qsort(void *base, size_t nitems, size_t size, int (*compar)(const void *, ...
- Day06_29_Static关键字
Static 关键字 * Static 关键字的用法 - static既可以修饰变量(全局变量和局部变量),又可以修饰方法.static类型的变量称为静态变量,如果不初始化则编译器自动初始化为0 - ...
- Day05_22_实例化对象的JVM内存分析
创建对象的 JVM 内存分析 *new 运算符的作用是创建对象,在JVM堆内存中开辟新的内存空间 *方法区内存:在类加载的时候,class字节码文件被加载到该内存空间当中 *栈内存(局部变量):方法代 ...
- Pytorch系列:(二)数据加载
DataLoader DataLoader(dataset,batch_size=1,shuffle=False,sampler=None, batch_sampler=None,num_worker ...
- 浅谈在c#中使用Zlib压缩与解压的方法
作者:Compasslg 介绍 近期用c#开发一个游戏的存档编辑工具需要用 Zlib 标准的 Deflate 算法对数据进行解压. 在 StackOverflow 上逛了一圈,发现 c# 比较常用到的 ...