Linux运行服务的几种方式
摘要
1. nohup &
2. screen
3. bg & disown
4. systemd
5. crontab @reboot
背景
最近一直在用linux
想着多总结一下.
因为服务运行的方式比较多, 想着也能够多总结一下
便于后面的问题处理
nohup 的方式
nohup 是最简单的一种启动服务的方式
nohup 的含义在于防止被终端.
& 的方式是将服务放在后台运行
所以一般的方式为:
nohup ./xxxx &
shell关了,后者是网络终端还会继续运行.
screen的方式
yum install screen -y
可以使用 screen 的命令打开服务窗口
screen -S yourname -> 新建一个叫yourname的session
screen -ls -> 列出当前所有的session
screen -r yourname -> 回到yourname这个session
screen -d yourname -> 远程detach某个session
screen -d -r yourname -> 结束当前session并回到yourname这个session
可以通过 screen -S zhaobsh 打开一个session 进行命令的输入
如果网络出问题. 这个服务还是会一直存在的. 避免网络终端导致问题.
bg & disown
有时候很多服务都是必须有交互才可以的.
此时通过nohup的方式不太合适.
如果机器又不能上网, 此时使用 screen 可能比较麻烦
所以可以使用
ctrl+z的方式暂时中断服务
然后根据反馈的任务号
通过
bg %数字
的方式进行设置服务后台运行.
然后在使用
disown -h %数字
可以讲这个服务与 当前的shell进程断掉联系.
这样服务就从一个前台服务 变成了后台服务.
systemd
可以添加一个 systemd的服务 基本上可以如图进行设置
一般位于 /etc/systemd/system/ 下面
比如可以建立一个文件为 app.service
可以使用 systemctl enable app 设置开机自动启动
然后使用systemctl start app 来启动服务
[Unit]
Description=app
[Service]
LimitMEMLOCK=infinity
LimitNOFILE=65535
WorkingDirectory=/app
Restart=always
Type=forking
ExecStart=/app/startup.sh
ExecStop=/usr/bin/kill -15 $MAINPID
[Install]
WantedBy=multi-user.target
crontab
可以设置计划任务,开机自动动服务
比较简单.
第一: systemctl status crond
需要保证计划任务是开启的.
第二: 需要编写一套启动脚本比如
cat /etc/startredis <<EOF
cd /redis && ./redis-server /redis/redis.conf
EOF
chmod 700 /etc/startredis
第三设置开机启动
crontab -e
增加一行配置
@reboot /etc/startredis
注意配置方式跟vim 是一样的
insert 进入输入模式
ESC 退出到命令模式
输入 :wq 保存并且退出.
Linux运行服务的几种方式的更多相关文章
- Linux 服务管理两种方式service和systemctl
Linux 服务管理两种方式service和systemctl 1.service命令 service命令其实是去/etc/init.d目录下,去执行相关程序 # service命令启动redis脚本 ...
- Linux 安装 Nodejs 的两种方式
Linux 安装 Nodejs 的两种方式 目录 Linux 安装 Nodejs 的两种方式 一.压缩包安装 Nodejs 二.源码编译安装 Nodejs 一.压缩包安装 Nodejs 下载 Node ...
- day2 编程语言介绍、Python运行程序的两种方式、变量
一 编程语言介绍 1. 机器语言 用计算机能理解的二进制指令直接编写程序,直接控制硬件 2. 汇编语言 用英文标签取代二进制指令编写程序,本质也是直接控制硬件 3. 高级语言 用人能理解的表达方式去编 ...
- 设置 Linux 下打印机的几种方式
设置 Linux 下打印机的几种方式 一.使用 cups 进行设置 如若遇到 cups 也没有驱动的话可以前往 openprinting.org 找寻对应驱动. 二.前往 official 下载驱动 ...
- linux创建文件的四种方式(其实是两种,强行4种)
linux创建文件的四种方式: 1.vi newfilename->i->编辑文件->ESC->:wq! 2.touch newfilename 3.cp sourcePath ...
- Linux 软件安装的三种方式
Linux 软件安装的三种方式 1.yum 语法格式: yum -y install package.name -y yes # 遇到提示自动输入yes 案例: 安装ifconfig命 ...
- Linux下chkconfig命令详解即添加服务以及两种方式启动关闭系统服务
The command chkconfig is no longer available in Ubuntu.The equivalent command to chkconfig is update ...
- Linux下定时执行任务的几种方式
如果说我说如果,你的某一个目录下会经常的生成一些垃圾文件,比如访问日志.错误日志.core文件,而你又不想过几分钟就去手动检查一下,那么可以使用定时执行任务的方式来解决.目前我所知道的可以执行定时任务 ...
- 【Java EE 学习 80 下】【调用WebService服务的四种方式】【WebService中的注解】
不考虑第三方框架,如果只使用JDK提供的API,那么可以使用三种方式调用WebService服务:另外还可以使用Ajax调用WebService服务. 预备工作:开启WebService服务,使用jd ...
- PythonDay02——编程语言、python介绍以及安装解释器、运行程序的两种方式、变量
一.编程语言 1.1 机器语言:直接用计算机能理解的二进制指令编写程序,直接控制硬件 1.2 汇编语言:用英文标签取代二进制指令去编写程序,本质也是直接控制硬件 1.3 高级语言:用人能理解的表达方式 ...
随机推荐
- 云小课 | 华为云KYON之私网NAT网关
摘要:本文介绍KYON独创的私网NAT网关服务,支持云上重叠组网,支持云上重叠组网,助您的业务敏捷上云. 本文分享自华为云社区<云小课 | 华为云KYON之私网NAT网关>,原文作者:云小 ...
- 传统到敏捷的转型中,谁更适合做Scrum Master?
摘要:本文主要讲述的是从传统到敏捷Scrum团队转型中,对Scrum Master这一角色的分析. 本文分享自华为云社区<传统到敏捷的转型中,谁更适合做Scrum Master?>,作者: ...
- Redisson:这么强大的实现分布式锁框架,你还没有?
摘要:Redisson框架十分强大,基于Redisson框架可以实现几乎你能想到的所有类型的分布式锁. 本文分享自华为云社区<[高并发]你知道吗?大家都在使用Redisson实现分布式锁了!!& ...
- 总结vue3 的一些知识点:MySQL 运算符
MySQL 运算符 本章节我们主要介绍 MySQL 的运算符及运算符的优先级. MySQL 主要有以下几种运算符: 算术运算符 比较运算符 逻辑运算符 位运算符 算术运算符 MySQL 支持的算术运算 ...
- 火山引擎 DataTester:A/B 实验如何应用在抖音的产品优化流程中?
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 日前,在 WOT 全球创新技术大会上,火山引擎 DataTester 技术负责人韩云飞做了关于字节跳动 A/B 测 ...
- BST(二叉搜索树)
BST 基础芝士 给定一棵二叉树,每个节点有权值,定义"BST 性质"为: 对于树中的任意一个节点 \(x\) 都有: \(x\) 的权值大于 \(x\) 的左子树中任意节点的权值 ...
- ChatGPT带你入门机器学习:逻辑回归模型博客和小红书风格文案一次搞定!
打脸了 顺手向大家演示一下如何用 ChatGPT 写技术博客吧,其实蛮简单的,特别需要操心的是它会一本正经的胡说八道,还信誓旦旦的.我们要审查它的回答,万不可全信. 为了便于阅读,我把prompt加粗 ...
- Prometheus--PromQL
官方文档:https://prometheus.io/docs/introduction/overview/ 中文文档:https://prometheus.fuckcloudnative.io/ ...
- PS 新建作业DUMP DBSQL_DUPLICATE_KEY_ERROR
1.CJ20N新建作业 在CJ20N中新建作业后,保存DUMP,报以下错误 2.相关NOTE 605584 - CN22: update termination when creating activ ...
- 数据探索之道:查询Web API数据中的JSON字符串列
前言 在当今数据驱动的时代,对数据进行探索和分析变得愈发关键.Web API作为广泛应用的数据源,提供了丰富的信息和资源.然而,面对包含JSON字符串列的Web API数据时,我们常常遇到一个挑战:如 ...