首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【计算机网络】日志与守护进程

,发现bash的PID PGUD SID 都为21668 shell控制进程组的方式 查询后台任务 jobs 当再次输入sleep 5000 进行后台运行时,发现前面的编号变成2 该编号为 任务编号...进程组分为 前台任务 后台任务 在终端2创建后台任务前台任务,在终端1查询发现,后台任务的(PGID)进程 (SID)会话ID相同 ,而与后台的不同 2....如果后台任务提到前台,老的前天任务就无法运行 将任务编号为1的后台任务 使用 fg 提到前台后 ,输入 ls pwd 等 指令是没有作用的 会话 ,只能有一个前台任务在运行 所以当 使用 ctrl c...将1号任务退出后,bash把自己变成了前台任务,所以又可以运行了 为什么要有守护进程存在?...若登录就是创建一个会话,启动进程,会话内部有bash任务,在当前会话创建新的前后台任务,那如果退出呢?

15420

《Linux命令行与shell脚本编程大全》第十六章 控制脚本

按下Ctrl+C 自己运行退出都能被捕获到。 例子:   1 #!/bin/bash   2 trap " echo 'GoodBye everyone!!!'"...后台进程结束时,会在终端显示一条消息表明已经结束了。 注意:后台进程运行时,任然会使用终端显示器来显示STDOUTSTDERR消息。...在终端会话中使用后台进程要注意,ps命令的输出,每一个后台进程终端会话(pts/0)终端联系在一起。如果终端会话退出,那么后台进程也会退出。...16.4.2 重启停止的作业 可以将已停止的作业作为后台进程前台进程(会接管你当前工作的终端)重启。 用bg命令实现。 bg 加上作业号。 不加作业号可以重启默认作业。...方法:at命令cron表 16.6.1 用at命令来计划执行作业 at命令会将作业提交到队列,指定shell何时运行该作业。at的守护进程atd会以后台模式运行,检查作业队列来运行作业。

3K61
您找到你想要的搜索结果了吗?
是的
没有找到

第十七章 系统监控脚本

第十七章系统监控脚本 上一章我们介绍了shell编程的语法应用,在实际生产环境,Linux的系统运维者经常会查看系统的各项性能、参数,为了提高查看效率,我们可以编写一些监控脚本以便系统的自动化运维...的记录到日志。...,即暂停执行 done 注意:使用while+sleep的脚本,被执行时,会在前台执行,但因为代码故意设置的死循环,则脚本会持续执行,占据整个前台资源不退出,影响到我们前台的其他操作。...所以,可以把该脚本放入后台。...17.4 僵尸进程监控 案例介绍:查看系统中有无僵尸进程,若有,自动杀死,并做日志记录 脚本思路:抓取僵尸进程,把信息存入临时文档,逐行读取该文档,获取pid的值,用kill -9 杀死,并记录到日志

80650

进程组、会话、终端的概念深入理解守护进程

1、进程 进程是 Linux 进行资源分配的最小单位 前台进程,例如这样:$ ./hello 后台进程,例如这样:$ ....10179 10177 bash 10263 10263 10179 ps 10264 10263 10179 cat 下边通过简单的示例来理解进程bash进程进程组ID都是 10179,父进程其实是...sshd(10177) ps:进程进程组ID都是 10263,父进程bash(10179),因为是在 Shell 上执行的命令 cat:进程组 ID 与 ps 的进程组 ID 相同,父进程同样是...会话可以有一个进程组称为会话的「前台作业」,其它进程组为「后台作业」 一个会话可以有一个控制终端,当控制终端有输入输出时都会传递给前台进程组,比如Ctrl + Z。...常用的方法是使用 syslog 服务,将错误信息输入到/var/log/messages。 syslog 是 Linux 的系统日志管理服务,通过守护进程 syslogd 来维护。

99020

【云原生】Docker常用命令

很重要的要说明的一点: Docker容器后台运行,就必须有一个前台进程....例如service nginx start 但是,这样做,nginx为后台进程模式运行,就导致docker前台没有运行的应用, 这样的容器后台启动后,会立即自杀因为他觉得他没事可做了.所以, 最佳的解决方案是...,将你要运行的程序以前台进程的形式运行,常见就是命令行模式,表示我还有交互操作,别中断,O(∩_∩)O哈哈~ redis 前后台启动演示case  前台交互式启动 docker run -it redis...:6.0.8 后台守护式启动  docker run -d redis:6.0.8 查看容器内运行的进程  docker top 容器ID 查看容器日志 docker logs 容器ID  查看容器内部细节...docker attach 容器ID attach 直接进入容器启动命令的终端,不会启动新的进程 用exit退出,会导致容器的停止 exec 是在容器打开新的终端,并且可以启动新的进程 用exit

40820

Linux 前后台作业切换及脱机管理

1、前后台作业的定义    前后台作业实际上对应的也就是前后台进程,因此也就有对应的pid。在这里我们统称为作业。   ...无论是前台作业还是后台作业,两者都来自当前的shell,是当前shell的子程序。    下面是两者的定义。    前台作业:可以由用户参与交互及控制的作业我们称之为前台作业。   .../echo_time.sh CNMMBO >temp.log 2>&1 & #下面来查看日志日志的两次查询正好相差5分钟 robin@SZDB:~/dba_scripts/custom/bin>...TODAY ------------------- 2013-05-03 11:14:24 4、作业脱机管理 将作业(进程)切换到后台可以避免由于误操作[ctrl]+c等导致的job被异常中断的情形,...如果该方式命令之后未指定&符号,则job位于前台,指定&符号,则job位于后台

1K10

进程组、会话、控制终端概念,如何创建守护进程

前台进程进程的TPGID=PGID,后台进程组的PGID≠TPGID。若该进程任何终端无关,其值为-1。通过比较他们来判断一个进程是属于前台进程组,还是后台进程组。...进程组、对话期控制终端关系 每个会话有且只有一个前台进程组,但会有0个或者多个后台进程组。 产生在控制终端上的输入(Input)信号(Signal)将发送给会话的前台进程的所有进程。...对于输出(Output)来说,则是在前台后台共享的,即前台后台的打印输出都会显示在屏幕上。...一个会话只存在一个前台进程组,但可以存在多个后台进程组。第一次登陆后第一个创建的进程是shell,也就是会话的领头进程,该领头进程缺省处于一个前台进程并打开一个控制终端可以进行数据的读写。...法是使用syslog服务,将程序的出错信息输入到系统日志文件

1.4K20

docker 容器自动退出(退出docker容器命令)

root@VM_0_6_centos ~]# docker ps -a status列显示已退出 [root@VM_0_6_centos ~]# docker logs centos 没有任何异常日志...退出原因 1、docker容器运行必须有一个前台进程, 如果没有前台进程执行,容器认为空闲,就会自行退出 2、容器运行的命令如果不是那些一直挂起的命令( 运行top,tail、循环等),就是会自动退出...3、这个是 docker 的机制问题 解决方案 方案1: 网上有很多介绍,就是起一个死循环进程,让他不停的循环下去,前台永远有进程执行,那么容器就不会退出了,以centos为例 shell>docker...添加-it 参数交互运行 添加-d 参数后台运行 这样就能启动一个一直停留在后台运行的Centos了。...shell>docker exec -it /bin/bash //新建一个bash 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/128433

5.1K40

如何将简单的Shell转换成为完全交互式的TTY

除了没有正确处理SIGINT(信号)之外,这些“哑”shell还有其它诸多缺点: 一些命令sussh,需要一个正确的终端才能运行 通常不显示STDERR 无法正常使用vim等文本编辑器 没有完成标签... 为了便于演示,以下所有的屏幕截图命令都将在一台易受攻击的Web服务器(“VICTIM”)用于捕获shell的Kali VM(“KALI”)上完成。...一旦bash在PTY运行,我们按Ctrl-Z键将shell调至后台运行 ? 现在我们来检查当前终端STTY信息,所以我们可以强制连接到shell并匹配: ?...所需的信息是TERM类型(“xterm-256color”)当前TTY的大小(38行;116列) 接着我们将当前STTY设置为raw(请确保shell仍在后台运行),并使用以下命令回显输入字符: stty...nc命令现在是处于前台的工作状态。reset命令进入到netcat shell后,shell会正常显示。

4.8K40

Linux 信号(Signal)

SIGHUP 运行在终端,由 bash 启动的进程,都是 bash 的子进程。终端退出结束时会向 bash 的每一个子进程发送 SIGHUP 信号。...由于 SIGHUP 的缺省行为是 Term,因此,即使运行在后台进程也会终端一起结束。...当用户按下 ctrl-c 时,终端将发送 SIGINT 到前台进程。 SIGINT 的缺省行为是终止进程(Term),但它可以被捕获或忽略。...会话是用户登录系统到退出的所有活动,从登录到结束前创建的所有进程都属于这次会话。会话有一个前台进程组,还可以有一个或多个后台进程组。只有前台进程可以从终端接收输入,也只有前台进程才被允许向终端输出。...如果一个后台作业进程试图进行终端读写操作,终端会向整个作业发送 SIGTTOU 或 SIGTTIN 信号,默认的行为是暂停进程

66510

Linux基础之系统资源监控与任务管理 原

Linux能不能让某一个程序在执行的时候在后台运行呢? 1、概念 1.前台     可以控制与执行命令的bash环境称为前台进程。...可以通过Ctrl+z将前台执行的任务放置后台(放置到后台,会暂停该任务)。 2、多任务执行 在当前bash执行多个任务,任务后面添加&符号即可将任务放置后台执行。...举例来说,我们在登录bash后,想要一边复制文件、一边进行编译。那么就需要任务管理。 Ctrl+z&有什么区别: Ctrl+z 将前台程序放置后台——状态为暂停。...&,在叧有一个 bash 的环境下,如果想要同时进行多个工作,那么可以将某些工作接放到后台,用户可以继续操作前台任务。...-表示+号对应的进程被调前台后,“-”对应的进程立即变为“+”。 3.bg 让任务在后台中变成执行状态:bg。针对vim可以改变其前台调用的优先级。 bg 2执行后台进程任务号为2的进程

1.1K10

Docker的容器管理

注意:容器内的进程必须处于前台运行状态,否则容器就会直接退出,自己部署一个容器运行,命令不得后台运行,前台运行即可。如果容器内,什么事也没做,容器也会挂掉。容器内,必须有一个进程前台运行。...docker run centos:7.8.2003 ping baidu.com2、运行一个活着的容器,docker ps 可以看到的容器-d 参数,让容器在后台运行(针对宿主机而言)docer run...-d centos:7.8.2003返回容器ID3、丰富docker运行的参数4、查看容器日志docker ps docker logs -f 容器id 刷新日志docker logs 容器id...| tail -55、进入正在运行的容器空间内exec 指令用于进入容器内docker exec -it 容器id bash6、查看容器的详细信息,用于高级的调试docker container inspect...随机访问一个宿主机的空闲端口,映射到容器内打开的端口docker run -d --name test_nginx -P nginx8、容器的提交docker run -it centos:7.8.2003 bash

75420

100个Linux命令(7)-进程管理

63.fg bg fgbg命令分别是foregroundbackground的缩写,也就是放入前台放入后台,严格的说,是以运行状态放入前台后台,即使原来任务是stopped状态的。...进程结构子 shell 前台进程 一般命令( cp 命令)在执行时都会fork子进程来执行,在子进程执行过程,父进程会进入睡眠,这类是前台进程。...通过"&"放入后台的任务,在后台中仍会处于运行。当然,对于那种交互式vim类的命令,将转入暂停运行状态。...另外,在子shell后台进程在终端被关闭时也会脱离终端,因此也不受shell终端的控制。例如shell脚本后台进程,再如"(sleep 10 &)"。...它对于后台服务程序而言,传达了几个意思:(1)当前已经运行的进程不再接受新请求(2)给当前正在运行的进程足够多的时间去完成正在处理的事情(3)允许启动新进程接受新请求(4)可能还有日志文件是否应该滚动、

1.7K20

Tomcat 进程意外突崩,元凶居然是它...

进程,往终端输出日志内容。...还是比较好理解的,举例来说,我们先某个前台进程运行时间太长,可以ctrl-z中止一下,然后通过bg %n把这个进程放入后台,同样也可以把一个cmd &方式启动的后台进程,通过fg %n放回前台,然后在ctrl-c...因为默认如果采用父进程进程组ID,父进程会把收到的键盘事件比如ctrl-c之类的SIGINT传播给进程的每个成员,假设后台进程也是父进程组的成员,因为作业控制的需要不能忽略SIGINT,你在终端随意...不开启作业控制的话,脚本里的后台进程可以通过设置忽略SIGINT信号来避免父进程对组成员的传播,因为对它来说这个信号已经没有意义。...把SIGHUP传递给bash进程后,bash会把SIGHUP传递给它的子进程,并且对于其子进程test.sh,bash还会对test.sh的进程组里的成员都传播一遍SIGHUP。

92010

【LinuxUnix】Bash的“$”使用汇总

2.3 $$ Bash脚本本身运行时的进程ID号(PID)。 2.4 $! 脚本最后运行的后台Process的PID(后台运行的最后一个进程进程ID号,脚本运行结束则$!为空)。...B - braceexpand H- history 几点说明: h - hashall:bash的hash功能,可以实现让某些command具体路径绑定在一起; i - interactive-comments...:配置在交互 shell 模式下,是否允许注释; m - monitor:配置是否打开控制 Job control 功能,Job control 可以控制进程的停止、继续,后台或者前台执行等。...开启 job control 后,如果执行了一个比较耗时的命令,可以按下 CTRL+Z 让它在后台运行,然后,可以用 fg 命令将后台运行的任务恢复到前台执行,如果关闭这个选项,就会失去控制 Job 的能力...不能出现在双引号,否则会报错 -bash: !": event not found。

26010

Tomcat进程意外退出,元凶居然是他...

进程,往终端输出日志内容。...还是比较好理解的,举例来说,我们先某个前台进程运行时间太长,可以ctrl-z中止一下,然后通过bg %n把这个进程放入后台,同样也可以把一个cmd &方式启动的后台进程,通过fg %n放回前台,然后在ctrl-c...因为默认如果采用父进程进程组ID,父进程会把收到的键盘事件比如ctrl-c之类的SIGINT传播给进程的每个成员,假设后台进程也是父进程组的成员,因为作业控制的需要不能忽略SIGINT,你在终端随意...不开启作业控制的话,脚本里的后台进程可以通过设置忽略SIGINT信号来避免父进程对组成员的传播,因为对它来说这个信号已经没有意义。...把SIGHUP传递给bash进程后,bash会把SIGHUP传递给它的子进程,并且对于其子进程test.sh,bash还会对test.sh的进程组里的成员都传播一遍SIGHUP。

3.9K10

Linux||后台运行及查看状态命令

既然前台影响你操作,那不如像Windows一样,把这个进程放入后台,然后接着打下一份工!就好像正在刷慕课的你,想同时打游戏,这时只需要把开着慕课的网页放在后台并打开游戏即可。...nohup command > out.file 2>&1 & 在上述例子,0代表stdin (standard input),1代表stdout (standard output),2代表stderr...2>&1是将标准错误(2)重定向到标准输出(&1),标准输出(&1)再被重定向输入到out.file文件。 &nohup &:指在后台运行,当用户退出账号或终端时,命令将一起退出。...bash 1.sh & #运行1.sh,当退出服务器时,该命令停止 nohup:不挂断的运行,注意并没有后台运行的功能,指用nohup运行命令可以使命令永久的执行下去,用户终端没有关系,即使我们断开...nohup bash 1.sh #将bash 1.sh任务放到后台,关闭标准输入,终端不再能够接收任何输入(标准输入),重定向标准输出标准错误到当前目录下的nohup.out文件,即使关闭xshell

7.4K40

linux进程管理:进程,程序,线程 & 9个进程管理工具 & 作业控制

对于那些可以捕获该信号的进程就要用编号为9的kill信号,强行“杀掉”该进程。...nginx 6. pkill pkill是ps命令kill命令的结合,按照进程名来杀死指定进程,pkillkillall应用方法差不多,也是直接杀死运行的程序;如果您想杀掉单个进程,请用kill...在上图中将输出的界面划分成了四个区域,其中: 上左区域:显示了CPU、物理内存交换分区的信息; 上右区域:显示了任务数量、平均负载连接运行时间等信息; 进程区域:显示出当前系统的所有进程;这里同top...作业控制: 一个前台作业可以由多个进程组成,一个后台作业也可以由多个进程组成,Shell可以同时运行一个前台作业任意多个后台作业,这称为作业控制(Job Control)。...ping 192.168.42.2 & 已经在后台运行,在前台输出结果;不影响前台作业执行 [root@CentOS6 ~]# ping 8.8.8.8 & [3] 1928 [root@CentOS6

3.2K10
领券