SCP使用SIGSTOP后台运行并简单讨论孤儿进程僵尸进程

关于LINUX SCP后台运行


1、进入会话后
scp  -P 31079 gaopeng@10.10.10.1:/home/gaopeng/yjf_openapi.sql.gz yjf_openapi.sql.gz
输入密码,进程前台运行
2、发出CTRL+Z 信号 SIGSTOP
[1]+  Stopped                 scp -P 31079 gaopeng@ 10.10.10.1:/home/gaopeng/yjf_openapi.sql.gz yjf_openapi.sql.gz
3、查看JOBS
[root@dyzsdb2 ~]# jobs
[1]+  Stopped                 scp -P 31079 gaopeng@ 10.10.10.1:/home/gaopeng/yjf_openapi.sql.gz yjf_openapi.sql.gz
4、使用bg 1命令
然后job 1后台运行
5、关闭SHELL 窗口再次查看
root     16297     1  0 16:54 ?        00:00:01 scp -P 31079 gaopeng@ 10.10.10.1:/home/gaopeng/yjf_openapi.sql.gz yjf_openapi.sql.gz


这个时候可以看到我的SCP进程PPID 是1,由INIT 1,我们的SCP进程成为了孤儿进程由INIT进程接管,但是SCP继续运行没有问题




这里简单说明一下概念:
1、当我们连接到LINUX后创建一个的第一个进程就是SHELL进程
init─┬─abrt-dump-oops
     ├─abrtd
     ├─acpid
     ├─atd
     ├─auditd───{auditd}
     ├─automount───4*[{automount}]
     ├─certmonger
     ├─crond
     ├─cupsd
     ├─dbus-daemon───{dbus-daemon}
     ├─hald───hald-runner─┬─hald-addon-acpi
     │                    └─hald-addon-inpu
     ├─irqbalance
     ├─master─┬─pickup
     │        └─qmgr
     ├─mcelog
     ├─6*[mingetty]
     ├─mysqld_safe───mysqld───54*[{mysqld}]
     ├─mysqld_safe───mysqld───444*[{mysqld}]
     ├─rpc.idmapd
     ├─rpc.statd
     ├─rpcbind
     ├─rsyslogd───3*[{rsyslogd}]
     ├─scp───ssh
     ├─sshd───sshd───bash───pstree
     └─udevd───2*[udevd]
我们可以使用PSTREE 简单的看一下 
├─sshd───sshd───bash───pstree
可以看到,我们SHELL进程实际是由SSHD进程FORK出来,而SSHD是由INIT FORK出来。
而我们使用SCP的时候实际就是├─sshd───sshd───bash───SCP SCP由BASH FORK出来
这个时候我们发出了CTRL+Z的SIGSTOP信号来STOP了进程SCP 然后使用bg命令来在后台进程
这个时候我们推出了SHELL进程那么
├─sshd───sshd───bash───SCP 
bash就没有了 SCP成了没有父亲的孤儿进程,LINUX系统所有的孤儿进程由INIT接管。


父进程对所有的子进程都是起着监控运行状态和结束后回收资源的作用,如果父进程在子进程运行
完成后没有回收其PCB,那么出现的是僵尸进程,所以我们写程序也需要使用WAITPID函数进行资源
回收。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7728585/viewspace-1993920/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/7728585/viewspace-1993920/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值