Linux Guard Service - 守护进程分裂】的更多相关文章

分裂守护进程 由于fork()后第一行仍然在循环中,使用fork()返回值鉴别当前进程的性质 int i = 0; for (i = 0; i < 10; i++) { // sleep(1); printf("new fork() process pid = %d \n", pid); pid = fork(); if (pid == 0) break; } pid==0时说明该进程为子进程不能再进行循环(否则将不断创造进程直到子进程上限) 子进程和父进程的关系 1. 子进程的…
让test2直接成为守护进程 [root@localhost 02]# cat test2.c //test2 #include<stdio.h> #include<unistd.h> #include<fcntl.h> #include<sys/stat.h> #include<stdlib.h> int main(){ if(daemon(1,1)==-1){ perror("daemon error"); exit(EX…
当系统区内存不能再申请新进程的时候申请会失败 在512MB内存下最多分配的子进程数 3331 [root@localhost 05]# ./test5-1 50000 expect 50000 sub process [root@localhost 05]# 1000 sub process attributed 1000 sub process attributed 1000 sub process attributed pid attribute failed! Total sub proc…
进程分裂更名 void set_ps_name(char *name) { prctl(PR_SET_NAME, name); } 修改进程长名称 备份进程环境变量空间 for (i = 1; i < argc; i++) { argv_new[i] = strdup(argv[i]); } char **new_environ = malloc(env_len * sizeof(char *)); if (environ) { unsigned int i = -1; while (envir…
杀死某个子进程 杀死守护进程的子进程后,改进程会变为僵尸进程 14087 ? Ss 0:00 ./test4-1 14088 ? S 0:00 \_ ./test4-1 14089 ? S 0:00 \_ ./test4-1 14090 ? S 0:00 \_ ./test4-1 14091 ? S 0:00 \_ ./test4-1 14092 ? S 0:00 \_ ./test4-1 14093 ? S 0:00 \_ ./test4-1 14094 ? S 0:00 \_ ./test4…
linux的守护进程类似于windows的服务.linux通过supervisor创建守护进程. 1.安装supervisor sudo apt-get install supervisor 安装成功后,supervisor就会默认启动,也会随系统启动. 2.有很多添加守护进程的方法,下面介绍一种最好用的一种,将每个进程的配置文件单独拆分,放在/etc/supervisor/conf.d/目录下,以.conf作为扩展名. [program:OC] command=dotnet /home/wan…
一.Rsync基本概述 rsync是一款开源.快速.多功能.可实现全量及增量的本地或远程数据同步备份的优秀工具.rsync软件适用于Unix/linux/Windows等多种操作系统平台. 二.Rsync简介 rsync英文称为remote synchronizetion,从软件的名称就可以看出来,rsync具有可使本地和远程两台主机之间的数据快速复制同步镜像.远程备份的功能,这个功能类似于ssh带的scp命令,但是又优于scp命令的功能,scp每次都是全量拷贝,而rsync可以增量拷贝.当然,…
什么是守护进程 脱离控制终端的,运行于后端的进程,由系统管理的,按计划自动启动/停止/重启,用以执行特定的任务. 为什么要有守护进程? 在某些需求场景下,我们希望某项系统任务能够按计划按预期,始终/自动 保持正常运行状态,以便于持续提供服务功能. 一个小栗子,假如,我们部署一个站点服务,当服务器操作系统自动重启后,我们希望部署的站点服务也能够自动启动,无需人工去启动. 再举一个小栗子,假如,以上部署的站点服务,遇到运行错误异常后能够自动重启,以保持正常运行状态,无需人工干预. 再举一个小栗子,假…
什么是守护进程?其实感觉守护进程并没有什么明确的定义,只是守护进程有一些特征,这是它需要遵循的. 守护进程的第一个特征是长时间在后台运行的程序,并且主要是为了提供某种服务,而为了能够让服务尽可能随时都可用,就要求这个服务是一直运行的,于是守护进程就守护着这个服务不挂掉.linux里面常见的守护进程一般都是以d结尾的,比如apache的httpd,samba的smbd,ssh的sshd. 它的第二个特征是与启动它的进程的环境隔离,包括关闭它打开的所有文件描述符,终端,会话,进程组,某些环境变量(如…
最近搭建的svn服务不知道什么原因服务总是被关闭(如果你不知道怎么搭建svn可以参考linux下搭建svn版本控制软件),因此用shell脚本实现一个守护进程.用于监控svn服务是否启动,如果服务不在则启动. 创建监控脚本svnmonit.sh #! /bin/sh #进程名字可修改 PRO_NAME=svnserve PORT=58652 REP_DIR=/www/svndata while true ; do #用ps获取$PRO_NAME进程数量 NUM=`ps aux | grep ${…
ngx_int_t ngx_daemon(ngx_log_t *log) { int fd; // 让init进程成为新产生进程的父进程: // 调用fork函数创建子进程后,使父进程立即退出.这样,产生的子进程将变成孤儿进程,并被init进程接管, // 同时,所产生的新进程将变为在后台运行. switch (fork()) { : ngx_log_error(NGX_LOG_EMERG, log, ngx_errno, "fork() failed"); return NGX_ER…
Linux系统守护进程详解                                                              ---转自:http://yuanbin.blog.51cto.com/363003/107306/,多谢分享 不要关闭下面这几个服务: acpid, haldaemon, messagebus, klogd, network, syslogd 1. NetworkManager, NetworkManagerDispatcher     Netw…
Linux 守护程序 守护进程(Daemon)它是在一个特定的过程的背景进行.它独立于控制终端的和周期性地执行某些任务或待某些事件.是一种非常实用的进程. Linux的大多数server就是用守护进程实现的. 比方,Internetserverinetd,Webserverhttpd等.同一时候.守护进程完毕很多系统任务. 比方,作业规划进程crond,打印进程lpd等. 守护进程的编程本身并不复杂,复杂的是各种版本号的Unix的实现机制不尽同样,造成不同Unix环境下守护进程的编程规则并不一致…
概念Daemon(精灵)进程,是Linux中的后台服务进程,生存期较长的进程,通常独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件.模型守护进程编程步骤1. 创建子进程,父进程退出所有工作在子进程中进行 形式上脱离了控制终端2. 在子进程中创建新会话 setsid()函数 使子进程完全独立出来,脱离控制3. 改变当前目录为根目录 chdir()函数 防止占用可卸载的文件系统 也可以换成其它路径4. 重设文件权限掩码 umask()函数 防止继承的文件创建屏蔽字拒绝某些权限 增加守护…
终端: 在UNIX系统中,用户通过终端登录系统后得到一个Shell进程,这个终端成为Shell进程的控制终端(Controlling Terminal), 进程中,控制终端是保存在PCB中的信息,而fork会复制PCB中的信息,因此由Shell进程启动的其它进程的控制终端也是这个终端. 默认情况下(没有重定向),每个进程的标准输入.标准输出和标准错误输出都指向控制终端,进程从标准输入读也就是读用户的键盘输入, 进程往标准输出或标准错误输出写也就是输出到显示器上.信号中还讲过,在控制终端输入一些特…
关于守护进程,在此会介绍一下几种: 1.screen 2.supervisord(python) 一:Screen 开始使用Screen 简单来说,Screen是一个可以在多个进程之间多路复用一个物理终端的窗口管理器.Screen中有会话的概念,用户可以在一个screen会话中创建多个screen窗口,在每一个screen窗口中就像操作一个真实的telnet/SSH连接窗口那样.在screen中创建一个新的窗口有这样几种方式: 1.直接在命令行键入screen命令 [root@tivf06 ~]…
守护进程.会话.进程组网上有许多不错的资料.我也是网上搜罗了一堆,加上自己的理解.不敢说原创,只是写在这怕自己忘记罢了.才疏学浅,难免有错误,欢迎大家指正.下面这篇写很不错,大家可以去看看:http://www.cnblogs.com/forstudy/archive/2012/04/03/2427683.html.下面的部分内容引用了他的描述. 进程组:进程组就是把一个或多个进程划为一组,给这个组分配一个组id(pgid),这个id通常是进程组组长(该组的第一个进程)的pid.如果进程组组长退…
重要的守护进程 守护进程(Daemon)通常会随系统启动时激活并随系统关闭时停止,一直在系统后台中默默为用户提供服务: 守护进程名称 用处 crond 计划任务 dhcpd 动态IP地址分配服务(DHCP) httpd 网站服务 lpd 打印服务器 named 域名解析服务(DNS) nfs 文件共享服务(NFS) smb 文件共享与打印服务(SAMBA) vsftpd 文件共享服务(vsftpd) syslog 系统日志 gpm 鼠标进程 xinetd 超级守护进程 创建一个守护进程,有几个关…
守护进程是什么?就是在后台运行的进程. 那么如何创建守护进程呢? 1. 创建孤儿进程 2. setsid() 创建进程会话 3. 重定向标准输入, 标准输出 4. chdir, 改当当前进程的工作目录 接下来看一个例子: #include <stdio.h> #include <fcntl.h> #include <unistd.h> int main(void) { //进程成为守护进程的步骤 //代号:Ss //守护进程也称为精灵进程 //1.产生孤儿进程 pid_…
把一个正在执行的程序放入后台 [root@localhost 01]# Ctrl+Z 此使程序被移动到后台,但不能继续输出(处于暂停态) [root@localhost 01]# ./test1-1 1552227 1552227 1552227 1552227 ^Z [1]+ 已停止 ./test1-1 [root@localhost 01]# [root@localhost 01]# [root@localhost 01]# jobs [1]+ 已停止 ./test1-1 让该后台程序继续在…
环境 centos7.2 1.首先查看是否安装rsync的相关包 rpm -qa | grep rsync rsync-3.1.2-4.el7.x86_64 如果没安装就yum install rsync -y 2.配置文件 vi /etc/rsyncd.conf uid = root  gid = root  pid file = /var/run/rsyncd.pid log file = /var/log/rsyncd.log [root] path=/ ignore errors = y…
嵌入式初学者,第一次上传代码.昨天做了一个udhcpd与udhcpc的守护,目前只会用shell模仿编写,还有什么方法可以做守护呢? ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 #! /bin/sh #进程名字可修改 PRO_NAME=udhcpc WLAN=ra0    while true ; do    #    用ps获取$PRO_NAME进程数量   NUM=`ps…
絮叨 supervise是daemontools的一个工具,可以用来监控管理Unix下的应用程序运行情况,在应用程序出现异常时,supervise可以重新启动指定程序. 本文介绍一下supervise的安装和使用. 安装.使用.栗子 安装: 官网有介绍,不再赘述:  https://cr.yp.to/daemontools/install.html 其中这个命令的‘1755’引起我的深思...,在这里<Linux下chmod命令>给出详细解释. /package 使用栗子: 网上能搜到关于su…
a.配置 Sersync 环境变量 [root@SERSYNC sersync]# echo 'export PATH=$PATH:/usr/local/sersync/bin'>>/etc/profile [root@SERSYNC sersync]# tail -1 /etc/profile export PATH=$PATH:/usr/local/sersync/bin [root@SERSYNC sersync]# . /etc/profile [root@SERSYNC sersyn…
while true; do server=`ps -aux | grep tomcat | grep -v grep` if [ ! "$server" ]; then echo "Tomcat挂了" | mail -s "Tomcat" xxxx@qq.com break fi done…
一,守护进程概述 Linux Daemon(守护进程)是运行在后台的一种特殊进程.它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件.它不需要用户输入就能运行而且提供某种服务,不是对整个系统就是对某个用户程序提供服务.Linux系统的大多数服务器就是通过守护进程实现的.常见的守护进程包括系统日志进程syslogd. web服务器httpd.邮件服务器sendmail和数据库服务器mysqld等. 守护进程一般在系统启动时开始运行,除非强行终止,否则直到系统关机都保持运行.守护进程经…
原创:http://www.cnblogs.com/mickole/p/3188321.html 一,守护进程概述 Linux Daemon(守护进程)是运行在后台的一种特殊进程.它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件.它不需要用户输入就能运行而且提供某种服务,不是对整个系统就是对某个用户程序提供服务.Linux系统的大多数服务器就是通过守护进程实现的.常见的守护进程包括系统日志进程syslogd. web服务器httpd.邮件服务器sendmail和数据库服务器mys…
原文: http://www.cnblogs.com/haimingwey/archive/2012/04/25/2470190.html 守护进程在Linux/Unix系统中有着广泛的应用.有时,开发人员也想把自己的程序变成守护进程.在创建一个守护进程的时候,要接触到子进程.进程组.会晤期.信号机制.文件.目录和控制终端等多个概念.因此守护进程还是比较复杂的,在这里详细地讨论Linux/Unix的守护进程的编写,总结出八条经验,并给出应用范例. 编程要点 1.屏蔽一些有关控制终端操作的信号.防…
前端时间帮忙定位个问题.docker容器故障恢复后,其中的keepalived进程始终无法启动,也看不到Keepalived的日志. strace 查看系统调用之后,发现了原因所在 socket(PF_LOCAL, SOCK_DGRAM|SOCK_CLOEXEC, ) = connect(, {sa_family=AF_LOCAL, sun_path=) = - ENOENT (No such file or directory) close() = open( fstat(, {st_mode…
概述 守护进程是在需要在后台长期运行不受终端控制的进程,通常情况下守护进程在系统启动时自动运行,在服务器关闭的时候自动关闭:守护进程的名称通常以d结尾,比如sshd.xinetd.crond.atd等. 守护进程编程规则 调用umask将文件模式创建屏蔽字设置为一个已知值(通常是0) 调用fork(),创建新进程,它会是将来的守护进程 然后使父进程exit,保证子进程不是进程组组长 调用setsid创建新的会话 会话:是一个或者多个进程组的集合,通常一个会话开始与用户登录,终止于用户退出.在此期…