青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

戰魂小筑

討論群:309800774 知乎關注:http://zhihu.com/people/sunicdavy 開源項目:https://github.com/davyxu

   :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
  257 隨筆 :: 0 文章 :: 506 評論 :: 0 Trackbacks

1.1 為進程添加守護進程

參考鏈接http://yubosun.akcms.com/tech/linux-daemon-program.htm

   1:  #include <unistd.h> 
   2:  #include <signal.h> 
   3:  #include <sys/types.h> 
   4:  #include <sys/stat.h> 
   5:  #include <stdio.h> 
   6:  #include <stdlib.h>
   7:   
   8:  #ifndef NOFILE 
   9:  #define NOFILE 3 
  10:  #endif
  11:   
  12:  void init_daemon() 
  13:  { 
  14:          int pid; 
  15:          int i; 
  16:          if(pid = fork()) exit(0); //父進程,退出 
  17:   
  18:          else if(pid < 0) exit(1); //fork失敗 
  19:   
  20:          /* 子進程繼續執行 */ 
  21:          setsid(); //創建新的會話組,子進程成為組長,并與控制終端分離 
  22:   
  23:          /* 防止子進程(組長)獲取控制終端 */ 
  24:          if(pid = fork()) exit(0); //父進程,退出 
  25:   
  26:          else if(pid < 0) exit(1); //fork錯誤,退出 
  27:   
  28:          /* 第二子進程繼續執行 , 第二子進程不再是會會話組組長*/ 
  29:   
  30:          //for(i = 0; i < NOFILE; i++) /* 關閉打開的文件描述符*/ 
  31:          //{ 
  32:          //close(i); 
  33:          //} 
  34:          chdir("/tmp"); /* 切換工作目錄 */ 
  35:          umask(0); /* 重設文件創建掩碼 */ 
  36:          return; 
  37:  }
  38:   
  39:  int main(int argc, char* argv[])
  40:  {    
  41:      FILE *fp; 
  42:   
  43:      signal(SIGCHLD, SIG_IGN); /* 忽略子進程結束信號,防止出現僵尸進程 */ 
  44:   
  45:      init_daemon(); 
  46:   
  47:      while(1) 
  48:      { 
  49:              sleep(1);
  50:              
  51:  // 注意, 日志寫到這個目錄
  52:              if((fp = fopen("/var/tmp/test.log", "a")) != NULL) 
  53:              { 
  54:                      fprintf(fp, "%s\n", "test message"); 
  55:                      fclose(fp); 
  56:              } 
  57:      } 
  58:   
  59:      return 0;
  60:  }

1.2 編寫服務腳本

參考鏈接http://blog.sina.com.cn/s/blog_57421ff80100c7nn.html

紅色字是需要填寫的部分, 文件頭部分可以選填

   1:  #!/bin/bash
   2:   
   3:  # chkconfig: 3 3 1
   4:   
   5:  # description: web kill center
   6:   
   7:  EXEC_PATH=/usr/local/bin
   8:   
   9:  EXEC=CenterServiced
  10:   
  11:  PID_FILE=/var/run/CenterServiced.pid
  12:   
  13:  DAEMON=/usr/local/bin/CenterServiced
  14:   
  15:  if ! [ -x $EXEC_PATH/$EXEC ] ; then
  16:   
  17:  echo "ERROR: $EXEC_PATH/$EXEC not found"
  18:   
  19:  exit 1
  20:   
  21:  fi
  22:   
  23:  stop()
  24:   
  25:  {
  26:   
  27:  echo "Stoping $EXEC ..."
  28:   
  29:  killall $DAEMON >/dev/null
  30:   
  31:  echo "Shutting down $EXEC: [ OK ]"
  32:   
  33:  }
  34:   
  35:  start()
  36:   
  37:  {
  38:   
  39:  echo "Starting $EXEC ..."
  40:   
  41:  $DAEMON > /dev/null &
  42:   
  43:  echo "Starting $EXEC: [ OK ]"
  44:   
  45:  }
  46:   
  47:  restart()
  48:   
  49:  {
  50:   
  51:  stop
  52:   
  53:  start
  54:   
  55:  }
  56:   
  57:  case "$1" in
  58:   
  59:  start)
  60:   
  61:  start
  62:   
  63:  ;;
  64:   
  65:  stop)
  66:   
  67:  stop
  68:   
  69:  ;;
  70:   
  71:  restart)
  72:   
  73:  restart
  74:   
  75:  ;;
  76:   
  77:  status)
  78:   
  79:  status -p $PID_FILE $DAEMON
  80:   
  81:  ;;
  82:   
  83:  *)
  84:   
  85:  echo "Usage: service $EXEC {start|stop|restart|status}"
  86:   
  87:  exit 1
  88:   
  89:  esac
  90:   
  91:  exit $?
  92:   

1.3 創建服務

參考鏈接http://hi.baidu.com/guanxiansun/blog/item/b4c7dcf55f6011e47709d724.html

將服務文件拷貝到/etc/init.d下,去掉擴展名, 文件名即是服務名

chmod +x ./wkcenter

如果不設置啟動, 那么service中將無法找到該服務及操作

1.4 設置啟動順序

創建啟動鏈接

ln /etc/init.d/wkcenter /etc/rc3.d/S03wkcenter

創建關閉鏈接

ln /etc/init.d/wkcenter /etc/rc0.d/K03wkcenter

1.5 添加服務

chkconfig --add wkcenter

查看服務是否存在

chkconfig –-list | grep wkcenter

查看服務狀態

chkconfig wkcenter on

注意, 確認wkcenter在2,3,4,5中任意或者部分開啟, 必須為綠字. 灰字代表服務無法開機啟動或者其他問題

1.6 測試

臨時開啟命令測試

service wkcenter start

1.7 QA

參考鏈接: http://blog.526net.com/?p=1706

1. 服務切記不可放在用戶home目錄, 最好放在/usr/local/bin目錄, 日志寫到var中, 否則服務測試正常,但是無法自動啟動

2. Linux下, 父進程啟動的程序的生命期跟隨父進程, 父進程可以是終端, 父進程一旦終止, 子進程都必須結束. 因此守護進程需要脫離父進程,避免被父進程生命期控制

posted on 2012-02-28 10:52 戰魂小筑 閱讀(7332) 評論(4)  編輯 收藏 引用 所屬分類: 網絡 服務器技術C++/ 編程語言

評論

# re: Linux服務器守護進程+自動啟動+服務配置筆記 2012-02-29 09:06 Alex-Lee
太好了,正需要一個這個文章。一直沒有找全,今天終于發現了。  回復  更多評論
  

# re: Linux服務器守護進程+自動啟動+服務配置筆記 2012-02-29 09:11 tb
不錯的 文章  回復  更多評論
  

# re: Linux服務器守護進程+自動啟動+服務配置筆記 2012-02-29 22:59 我要去拯救世界
linux進程守護貌似有很多成熟的腳本,
不過還是支持大牛了  回復  更多評論
  

# re: Linux服務器守護進程+自動啟動+服務配置筆記[未登錄] 2015-03-03 17:31 aa
感謝  回復  更多評論
  

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美成人精品影院| 午夜国产精品影院在线观看| 日韩一二三在线视频播| 一区二区亚洲欧洲国产日韩| 国产乱人伦精品一区二区| 国产精品第一页第二页第三页| 最新日韩在线视频| 欧美1区免费| 亚洲电影在线播放| 日韩视频一区二区三区| 国产精品99久久久久久久vr | 欧美xxx在线观看| 久久国产一区二区三区| 亚洲伦理中文字幕| 亚洲视频欧美在线| 一区二区三区 在线观看视频| 欧美www在线| 欧美精品日韩一本| 嫩草影视亚洲| 西西人体一区二区| 永久免费精品影视网站| 国产亚洲电影| 亚洲成人在线免费| 日韩视频在线观看免费| 亚洲欧美视频一区| 欧美国产成人在线| 亚洲一区区二区| 麻豆精品一区二区综合av| 欧美日韩视频免费播放| 99精品国产一区二区青青牛奶 | 国产精品电影网站| 国内精品一区二区三区| 日韩午夜免费视频| 久久国产视频网| 亚洲国产成人久久| 亚洲欧美日韩精品久久亚洲区| 欧美大胆a视频| 狠狠干综合网| 午夜日韩在线观看| 亚洲精品在线观看免费| 久久国产精品99国产精| 久久免费视频这里只有精品| 国产精品嫩草99a| 日韩一级大片在线| 久久久精品视频成人| 欧美四级伦理在线| 在线免费观看视频一区| 亚洲自拍另类| 亚洲国产三级| 久久激情综合网| 国产精品一区二区三区四区 | 国产精品99久久久久久白浆小说| 久久综合久色欧美综合狠狠 | 国产亚洲欧美中文| 中文一区二区| 亚洲精品国精品久久99热一| 久久久久久亚洲精品不卡4k岛国| 国产精品日韩欧美大师| 亚洲一区二区网站| 亚洲视频在线观看视频| 欧美视频一区二区三区四区| 99热在这里有精品免费| 欧美成人中文字幕| 久久永久免费| 亚洲国产精品久久久久婷婷老年 | 国产精品一卡二卡| 欧美日韩一区二区高清| 亚洲国产精品v| 欧美成人性网| 欧美国产91| 在线视频精品一| 日韩一级片网址| 国产精品美女久久久久久免费 | 久久大逼视频| 先锋影音国产精品| 黄色小说综合网站| 亚洲电影免费观看高清完整版在线观看 | 亚洲啪啪91| 亚洲日韩视频| 国产精品视频xxxx| 久久全国免费视频| 蜜桃精品久久久久久久免费影院| 亚洲韩国精品一区| 亚洲毛片在线| 国产情人节一区| 欧美成人xxx| 欧美日韩一区二区三| 欧美一级免费视频| 久久久久久国产精品mv| 在线中文字幕不卡| 久久se精品一区二区| 亚洲人成网在线播放| 亚洲视频在线一区| 亚洲丰满在线| 午夜精品久久久久久久久 | 欧美激情亚洲自拍| 亚洲欧美国产高清va在线播| 欧美一区二区三区婷婷月色| 亚洲青色在线| 午夜精品久久久久久久99黑人| 亚洲黄色影院| 亚洲欧美日韩成人高清在线一区| 在线观看91精品国产麻豆| 亚洲精品影院| 在线观看欧美亚洲| 亚洲专区一区| 一区二区三区高清视频在线观看| 久久狠狠婷婷| 欧美在线观看一区| 欧美日韩一区三区四区| 久热精品在线视频| 欧美日韩亚洲综合在线| 另类激情亚洲| 国产在线视频欧美| 一区二区精品在线| 亚洲人成在线免费观看| 久久久久免费| 久久精品视频播放| 国产精品电影观看| 99国产精品久久久久老师| 亚洲成人在线视频网站| 亚洲精品在线观| 亚洲婷婷综合久久一本伊一区| 国产日韩精品视频一区| 亚洲精品男同| 亚洲激情成人| 久久人人爽人人爽爽久久| 午夜精品久久久久久久99热浪潮| 欧美激情第1页| 免费在线欧美视频| 国产一区二区三区四区hd| 亚洲无限乱码一二三四麻| 日韩视频永久免费观看| 老司机免费视频久久| 久久久久久国产精品mv| 国产精品外国| 在线亚洲免费视频| 亚洲在线成人精品| 国产精品美女在线观看| 亚洲免费综合| 欧美女同视频| aⅴ色国产欧美| 亚洲一区二区三区欧美| 欧美视频一区二区| 亚洲免费在线| 久久久久久久一区二区| 国产综合欧美在线看| 欧美资源在线观看| 老司机午夜精品视频在线观看| 影音先锋中文字幕一区| 久久综合九色欧美综合狠狠| 欧美大片免费久久精品三p| 日韩视频在线观看国产| 欧美日韩一区在线观看视频| 亚洲一级黄色片| 久久九九免费视频| 亚洲第一区在线观看| 欧美freesex交免费视频| 亚洲人成毛片在线播放| 亚洲男人第一网站| 精品88久久久久88久久久| 免费一区视频| 亚洲免费影视第一页| 欧美国产另类| 亚洲天堂成人在线视频| 国模精品娜娜一二三区| 欧美激情一区二区| 午夜在线观看免费一区| 欧美激情综合| 亚洲资源在线观看| 狠狠色综合色综合网络| 欧美激情综合色综合啪啪| 亚洲欧美一区在线| 亚洲国产精品日韩| 欧美在线免费播放| 亚洲伦伦在线| 国产视频在线一区二区| 欧美日韩精品欧美日韩精品| 欧美成人午夜影院| 欧美一级久久久| 亚洲大片免费看| 国产精品久久久免费| 欧美freesex交免费视频| 亚洲在线免费视频| 亚洲成色最大综合在线| 欧美一区激情视频在线观看| 亚洲精品一区二区三区四区高清| 国产精品毛片a∨一区二区三区|国| 久久精品一区二区三区不卡| 99国产一区| 亚洲高清视频中文字幕| 国产欧美一区二区三区另类精品| 欧美成人免费视频| 久久高清国产| 午夜精品在线| 在线亚洲精品| 亚洲免费观看高清完整版在线观看| 乱中年女人伦av一区二区| 欧美一区二区网站| 欧美亚洲一区二区在线观看|