zoukankan      html  css  js  c++  java
  • Shell脚本 server rsync 控制脚本

    [root@backup ~]# vim /etc/init.d/rsync
    #!/bin/bash 
    #this script for start|stop rsync daemon service 

    status1=$(ps -ef | egrep "rsync --daemon.*rsyncd.conf" | grep -v 'grep') 
    pidfile="/var/run/rsyncd.pid" 
    start_rsync="rsync --daemon --config=/etc/rsyncd/rsyncd.conf" 
      
                        #start rsync
    function rsyncstart() { 
        if [ "${status1}X" == "X" ];then 
            rm -f $pidfile       
            ${start_rsync}   
            status2=$(ps -ef | egrep "rsync --daemon.*rsyncd.conf" | grep -v 'grep') 
            if [  "${status2}X" != "X"  ];then
                echo "rsync service start.......OK"     
            fi 
        else 
            echo "rsync service is running !"    
        fi 

      
     
                      #stop rsync
    function rsyncstop() { 
        if [ "${status1}X" != "X" ];then 
            
    kill -9 $(cat $pidfile)                               #读取并结束 进程 pid号
            status2=$(ps -ef | egrep "rsync --daemon.*rsyncd.conf" | grep -v 'grep') 
            if [ "${statusw2}X" == "X" ];then 
                echo "rsync service stop.......OK" 
            fi 
        else 
            echo "rsync service is not running !"    
        fi 

      
                  #status 
    function rsyncstatus() { 
        if [ "${status1}X" != "X" ];then 
            echo "rsync service is running !"   
        else
             echo "rsync service is not running !"  
        fi 

               #restart
    function rsyncrestart() { 
        if [ "${status1}X" == "X" ];then 
                   echo "rsync service is not running..." 
                   rsyncstart 
            else 
                   rsyncstop 
                   rsyncstart    
            fi       
    }  
      
    case $1 in 
            "start") 
                   rsyncstart 
                    ;; 
      
            "stop") 
                   rsyncstop 
                    ;; 
      
            "status") 
                   rsyncstatus 
                   ;; 
      
            "restart") 
                   rsyncrestart 
                   ;; 
      
            *) 
              echo 
                    echo  "Usage: $0 start|stop|restart|status" 
              echo 
    esac
     

    (2)给脚本设置可执行权限:
    [root@backup ~]# chmod a+x /etc/init.d/rsync

    (3)启动与重启:
    启动命令:    [root@backup ~]# service rsync start
    重启命令:    [root@backup ~]# service rsync restart
    或者可以停止后再次启动:
    [root@backup ~]# service rsync stop
    [root@backup ~]# service rsync start

     
     
    总结:
    1.status1=$(ps -ef | egrep "rsync --daemon.*rsyncd.conf" | grep -v 'grep') 
         if [ "${status1}X" == "X" ];then 
    这两句用来测试命令行有没有参数的
     
     
    2.    kill -9 $(cat $pidfile)                              
         #读取并结束 进程 pid号
  • 相关阅读:
    1026: C语言程序设计教程(第三版)课后习题7.5
    1024: C语言程序设计教程(第三版)课后习题7.3
    1023: C语言程序设计教程(第三版)课后习题7.2
    1022: C语言程序设计教程(第三版)课后习题7.1
    1021: C语言程序设计教程(第三版)课后习题6.11
    1020: C语言程序设计教程(第三版)课后习题6.10
    1019: C语言程序设计教程(第三版)课后习题6.9
    1018: C语言程序设计教程(第三版)课后习题6.8
    1017: C语言程序设计教程(第三版)课后习题6.7
    mac电脑很卡,如何在命令行查看当前电脑中的运行状态
  • 原文地址:https://www.cnblogs.com/centos2017/p/7896728.html
Copyright © 2011-2022 走看看