SSH关闭Liunx系统正常运行

一、需求

Linux系统中,在执行一些运行时间比较长的任务时,必须等待执行完毕才能断开SSH连接或关闭客户端软件,否则可能会导致执行中断。本文介绍两种保障程序在您退出登录后持续运行的方法。

二、使用screen执行命令

GNU Screen可以当做窗口管理器的命令行界面版本。只要Screen本身没有被终止,在其内部运行的会话都可以恢复,特别适合执行一些运行时间长的任务。
【1】安装screen工具:Linux系统默认没有screen工具,需要执行yum install screen先进行安装。

[root@iZbp1ge4ctw809v4lhhrnaZ ~]# yum install screen
Last metadata expiration check: 0:09:31 ago on Sun 07 Jan 2024 03:32:02 PM CST.
Dependencies resolved.
=======================================================================================================================================================================================================================================================================================Package                                                            Architecture                                                       Version                                                                  Repository                                                        Size
=======================================================================================================================================================================================================================================================================================
Installing:screen                                                             x86_64                                                             4.6.2-12.el8                                                             epel                                                             581 kTransaction Summary
=======================================================================================================================================================================================================================================================================================
Install  1 PackageTotal download size: 581 k
Installed size: 955 k
Is this ok [y/N]: y
Downloading Packages:
screen-4.6.2-12.el8.x86_64.rpm                                                                                                                                                                                                                         9.0 MB/s | 581 kB     00:00    
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                                                                                                                                  8.8 MB/s | 581 kB     00:00     
Extra Packages for Enterprise Linux 8 - x86_64                                                                                                                                                                                                         1.6 MB/s | 1.6 kB     00:00    
Importing GPG key 0x2F86D6A1:Userid     : "Fedora EPEL (8) <epel@fedoraproject.org>"Fingerprint: 94E2 79EB 8D8F 25B2 1810 ADF1 21EA 45AB 2F86 D6A1From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-8
Is this ok [y/N]: y
Key imported successfully
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transactionPreparing        :                                                                                                                                                                                                                                                               1/1 Running scriptlet: screen-4.6.2-12.el8.x86_64                                                                                                                                                                                                                                    1/1 Installing       : screen-4.6.2-12.el8.x86_64                                                                                                                                                                                                                                    1/1 Running scriptlet: screen-4.6.2-12.el8.x86_64                                                                                                                                                                                                                                    1/1 Verifying        : screen-4.6.2-12.el8.x86_64                                                                                                                                                                                                                                    1/1 Installed:screen-4.6.2-12.el8.x86_64                                                                                                                                                                                                                                                           Complete!

【2】执行screen -S [$Name]命令,创建screen窗口。 如果已存在screen连接,执行Screen _R xxxname恢复

screen -S myblog

【3】当需要运行脚本、执行程序时,在命令前添加screen即可。

screen npm run docs:dev

【5】同时按Ctrl+a+d键,就可以退出SSH登录,但不会影响screen程序的运行
【6】需要继续工作时,登录实例,然后执行screen -r -d命令,恢复会话即可。

使用nohup执行命令

nohup可以使运行的命令忽略SIGHUP信号。因此,即使退出登录,程序仍旧会继续执行。通常情况下,在nohup命令尾部加上&字符,才能将命令放至后台执行。具体示例如下所示:在命令头尾分别加上nohup&,可以看到nohup输出了一行信息,再Enter键就跳回了Shell命令行,此时命令已经在后台执行了,nohup将命令的输出重定向至当前目录的nohup.out文件中。同时,nohup会将对应程序的PID输出,PID可用于需要中断进程时结束进程。

[root@iZbp1ge4ctw809v4lhhrnaZ project]# nohub npm run docs:dev &
[1]  35432

执行tail -f nohup.out命令,可以持续的查看nohup.out的输出,达到监控程序的效果。 执行kill -TRM [$PID]命令,结束进程,[$PID]为之前nohup命令输出的值。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/605124.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue项目中的录屏插件recordrtc且带声音

vue项目中的录屏插件recordrtc且带声音 一、效果图二、安装插件三、直接上代码 一、效果图 其中窗口录屏不带声音&#xff0c;chrome标签和整个屏幕的录屏是带声音的 二、安装插件 npm i recordrtc 三、直接上代码 <template><div class"record-page">…

react-router-domV6.21.1版本结合ant design mobile的TabBar标签栏和Popup弹出层实现移动端路由配置

react-router-demo react-router-dom在V6版本之后更换了很多的API名称&#xff0c;在ant design mobile的TabBar配置中还是之前的旧版本&#xff0c;比如使用了switch组件等。我们在这里使用新版本的react-router-dom进行react移动端的配置 首先使用npm下载最新版的react-rout…

MYSQL双主节点–更换ip

MYSQL双主节点–更换ip 一、更换双主节点ip 1.停止mysql服务 #安装了supervisor supervisorctl stop mysql #未安装 systemctl stop mysqld2.修改网卡配置信息 注&#xff1a;ens33是网卡名称&#xff0c;可能网卡不叫ens33 vi /etc/sysconfig/network-scripts/ifcfg-ens333…

c++面试基本提问

c八股文分为 1.c语言 2.数据结构和算法 3.操作系统 4.网络原理 5.网络编程 6.数据库 例如&#xff1a; new和delete是C中用于动态分配和释放内存的运算符&#xff0c;而malloc和free是C语言中用于动态分配和释放内存的函数。 new和delete是C中的运算符&#xff0c;它们…

Mybatis入门源码二:sql执行

后面开始分析sql执行的源码流程也就是这一部分 一、factory.openSession() 重点关注configuration.newExecutor这个方法&#xff0c;获取事务处理器比较简单&#xff0c;就是获取一个jdbc的事务管理器。 这个方法通过传入的执行器类型来创建不同的执行器&#xff0c;有simp…

CNN——ResNet

深度残差网络&#xff08;Deep residual network, ResNet&#xff09;的提出是CNN图像史上的一件里程碑事件&#xff0c;并且让深度学习真正可以继续做下去&#xff0c;斩获2016 CVPR Best Paper。此外ResNet的作者都是中国人&#xff0c;一作何恺明。ResNet被提出以后很多的网…

Vue3+Pinia实现持久化动态主题切换

PC端主题切换大家都用过&#xff0c;下面用Vue3Pinia实现一下这个过程; 【源码地址】 1、准备工作 npm install pinia npm install pinia-plugin-persist2、基础配置 // main.js import { createApp } from vue import App from ./App.vue import bootstrap from "../bo…

红日靶场 4

靶场配置 ​ 733 x 668899 x 819 ​ ​ 733 x 6161466 x 1232 ​ ​ 733 x 6261449 x 1237 ​ ​ 733 x 6301450 x 1247 ​ IP 地址分配&#xff1a; Win7: 192.168.183.133(内网)Ubuntu: 192.168.183.134(内网) 192.168.120.137(外网)DC: 192.168.183.130(内网)Kali…

Python综合数据分析_根据订单求RFM值

文章目录 0.导入数据1.数据可视化2.数据清洗3.特征工程4.构建User用户表5.求R值6.求F值7.求M值 0.导入数据 import pandas as pd #导入Pandas df_sales pd.read_csv(订单.csv) #载入数据 df_sales.head() #显示头几行数据 1.数据可视化 import matplotlib.pyplot as plt #导…

js逆向第13例:猿人学第6题js混淆-回溯赛

文章目录 m是加密字符串怎么来的?浏览器环境检测本地运行的js代码任务六:采集全部5页的彩票数据,计算全部中奖的总金额(包含一、二、三等奖) 此题总体难度低于第5题,老规矩还是查看控制台请求地址https://match.yuanrenxue.cn/api/match/6?m=rPRDgpbV3Wd%252FyPfURQAkxK…

SpringMVC-获取请求参数

简介 用户输入信息后&#xff0c;如果想要得到用户输入的内容 , springMVC 应该如何做呢? 本次课讲解下再springmvc中获取请求参数及中文乱码问题 通过servletAPI获取 讲HttpServletRequest作为控制器方法的形参,此时HttpServletRequest类型的参数表示封装了当前请求的请求报…

使用Vite创建vue3工程

介绍 使用Vite构建工具&#xff0c;创建Vue3工程 示例 第一步&#xff1a;执行创建项目的命令&#xff0c;study-front-vue3是项目名称 npm init vite-app study-front-vue3第二步&#xff1a;进入项目文件夹&#xff0c;执行命令&#xff0c;安装模块 cd study-front-vue…

使用qtquick调用python程序,pytorch

一. 内容简介 使用qtquick调用python程序 二. 软件环境 2.1vsCode 2.2Anaconda version: conda 22.9.0 2.3pytorch 安装pytorch(http://t.csdnimg.cn/GVP23) 2.4QT 5.14.1 新版QT6.4,&#xff0c;6.5在线安装经常失败&#xff0c;而5.9版本又无法编译64位程序&#xf…

程序员为什么不能一次把功能写好,是因为他不想吗

引言 交流一下为什么他做的功能这么多Bug 大家好&#xff0c;最近看到一个有趣的问题&#xff1a; 程序员为什么要不能一次性写好&#xff0c;需要一直改Bug&#xff1f; 在我看来&#xff0c;程序员也是人&#xff0c;并非机器。 拿这个问题去质问程序员&#xff0c;答案无…

Java学习,一文掌握Java之SpringBoot框架学习文集(3)

&#x1f3c6;作者简介&#xff0c;普修罗双战士&#xff0c;一直追求不断学习和成长&#xff0c;在技术的道路上持续探索和实践。 &#x1f3c6;多年互联网行业从业经验&#xff0c;历任核心研发工程师&#xff0c;项目技术负责人。 &#x1f389;欢迎 &#x1f44d;点赞✍评论…

【网络】网络层协议ARP和IP协议转发流程

目录 一、IP概述 1.1 IP简介 1.2 IP协议 二、IP地址与硬件地址 三、地址解析协议ARP 3.1 ARP协议简介 3.2 ARP工作流程 3.3 ARP的四种典型情况 四、IP协议的转发流 一、IP概述 1.1 IP简介 IP地址&#xff08;Internet Protocol Address&#xff09;是指互联网协议地址…

[VUE]1-创建vue工程

目录 基于脚手架创建前端工程 1、环境要求 2、操作过程 3、工程结构 4、启动前端服务 &#x1f343;作者介绍&#xff1a;双非本科大三网络工程专业在读&#xff0c;阿里云专家博主&#xff0c;专注于Java领域学习&#xff0c;擅长web应用开发、数据结构和算法&#xff0c…

如何写html邮件 —— 参考主流outook、gmail、qq邮箱渲染邮件过程

文章目录 ⭐前言⭐outlook渲染邮件⭐gmail邮箱渲染邮件⭐qq邮箱渲染邮件 ⭐编写html邮件&#x1f496;table表格的属性&#x1f496;文本&#x1f496;图片&#x1f496;按钮&#x1f496;背景图片 ⭐总结⭐结束 ⭐前言 大家好&#xff0c;我是yma16&#xff0c;本文分享关于 …

云卷云舒:【实战篇】对象存储迁移

云卷云舒&#xff1a;【实战篇】MySQL迁移-CSDN博客 1. 简介 对象存储与块存储、文件存储并列为云计算三大存储模型。提供海量存储空间服务&#xff0c;具备快速的数据存取性能、高可靠和数据安全性&#xff0c;通过标准的RESTful API接口和丰富的SDK包来提供服务&#xff0c…

一篇文章带你了解Jenkins + K8s 部署的好处

在当今的软件开发和运维领域&#xff0c;Kubernetes&#xff08;K8s&#xff09;和 Jenkins 的组合已经成为了一种常见且强大的部署模式。本文将探讨 Jenkins K8s 部署的好处&#xff0c;以及它们如何协同工作以提高效率和可靠性。 一、自动化部署和持续集成/持续交付&#x…