#!/usr/bin/python
# *-* encoding: utf-8 *-*

''' Проверяем живость rsync сервера. '''

import sys, socket, subprocess, os

def rsync_alive(host='127.0.0.1', port=873):
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    try:
        s.connect((host, port))
        s.shutdown(2)
        return True
    except:
        return False

if __name__ == '__main__':
    if rsync_alive():
        print "0;ALIVE"
    else:
        if not os.path.isfile('/var/run/rsyncd.stop'):
            try:
                subprocess.check_output('service rsync stop; sleep 2; service rsync start; sleep 2;', shell=True, stderr=subprocess.STDOUT)
            except:
                pass
            if rsync_alive():
                print "0;ALIVE"
                sys.exit(0)
        print "2;DEAD"
