OSError: [Errno 13] Permission denied: '/etc/cron.d/1sandbox_registration'

使用Hortonworks 的twitter tutorial: http://hortonworks.com/hadoop-tutorial/how-to-refine-and-visualize-sentiment-data/

老是失败,所以查看收到的邮件,发现了一些错误。
重复的出现:
X-Cron-Env: <USER=hue>
Message-Id: <20131212042503.CE5AAA109D@sandbox.hortonworks.com>
Date: Wed, 11 Dec 2013 20:25:03 -0800 (PST)

Traceback (most recent call last):
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 53, in <module>
    do_post()
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 49, in do_post
    os.remove(CRON_FILE)
OSError: [Errno 13] Permission denied: '/etc/cron.d/1sandbox_registration'

不知道,怎么修改。。

From root@sandbox.hortonworks.com  Wed Dec 11 20:30:03 2013
Return-Path: <root@sandbox.hortonworks.com>
X-Original-To: root
Delivered-To: root@sandbox.hortonworks.com
Received: by sandbox.hortonworks.com (Postfix, from userid 1007)
        id 49869A109E; Wed, 11 Dec 2013 20:30:03 -0800 (PST)
From: root@sandbox.hortonworks.com (Cron Daemon)
To: root@sandbox.hortonworks.com
Subject: Cron <hue@sandbox> /usr/lib/tutorials/.env/bin/python /usr/lib/hue/tools/start_scripts/registration_post.py
Content-Type: text/plain; charset=UTF-8
Auto-Submitted: auto-generated
X-Cron-Env: <SHELL=/bin/bash>
X-Cron-Env: <PATH=/sbin:/bin:/usr/sbin:/usr/bin>
X-Cron-Env: <MAILTO=root>
X-Cron-Env: <HOME=/>
X-Cron-Env: <LOGNAME=hue>
X-Cron-Env: <USER=hue>
Message-Id: <20131212043003.49869A109E@sandbox.hortonworks.com>
Date: Wed, 11 Dec 2013 20:30:03 -0800 (PST)

Traceback (most recent call last):
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 53, in <module>
    do_post()
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 49, in do_post
    os.remove(CRON_FILE)
OSError: [Errno 13] Permission denied: '/etc/cron.d/1sandbox_registration'

You have mail in /var/spool/mail/root
[root@sandbox mail]# vim root 

From root@sandbox.hortonworks.com  Wed Dec 11 19:25:33 2013
Return-Path: <root@sandbox.hortonworks.com>
X-Original-To: root
Delivered-To: root@sandbox.hortonworks.com
Received: by sandbox.hortonworks.com (Postfix, from userid 1007)
        id CF8EEA109B; Wed, 11 Dec 2013 19:25:26 -0800 (PST)
From: root@sandbox.hortonworks.com (Cron Daemon)
To: root@sandbox.hortonworks.com
Subject: Cron <hue@sandbox> /usr/lib/tutorials/.env/bin/python /usr/lib/hue/tools/start_scripts/registration_post.py
Content-Type: text/plain; charset=UTF-8
Auto-Submitted: auto-generated
X-Cron-Env: <SHELL=/bin/bash>
X-Cron-Env: <PATH=/sbin:/bin:/usr/sbin:/usr/bin>
X-Cron-Env: <MAILTO=root>
X-Cron-Env: <HOME=/>
X-Cron-Env: <LOGNAME=hue>
X-Cron-Env: <USER=hue>
Message-Id: <20131212032527.CF8EEA109B@sandbox.hortonworks.com>
Date: Wed, 11 Dec 2013 19:25:26 -0800 (PST)

Traceback (most recent call last):
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 53, in <module>
    do_post()
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 49, in do_post
    os.remove(CRON_FILE)
OSError: [Errno 13] Permission denied: '/etc/cron.d/1sandbox_registration'

From root@sandbox.hortonworks.com  Wed Dec 11 19:30:30 2013
Return-Path: <root@sandbox.hortonworks.com>
X-Original-To: root
Delivered-To: root@sandbox.hortonworks.com
Received: by sandbox.hortonworks.com (Postfix, from userid 1007)
        id 22C3FA109A; Wed, 11 Dec 2013 19:30:27 -0800 (PST)
From: root@sandbox.hortonworks.com (Cron Daemon)
To: root@sandbox.hortonworks.com
Subject: Cron <hue@sandbox> /usr/lib/tutorials/.env/bin/python /usr/lib/hue/tools/start_scripts/registration_post.py
Content-Type: text/plain; charset=UTF-8
Auto-Submitted: auto-generated
X-Cron-Env: <SHELL=/bin/bash>
X-Cron-Env: <PATH=/sbin:/bin:/usr/sbin:/usr/bin>
X-Cron-Env: <MAILTO=root>
X-Cron-Env: <HOME=/>
X-Cron-Env: <LOGNAME=hue>
X-Cron-Env: <USER=hue>
Message-Id: <20131212033028.22C3FA109A@sandbox.hortonworks.com>
Date: Wed, 11 Dec 2013 19:30:27 -0800 (PST)

Traceback (most recent call last):
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 53, in <module>
    do_post()
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 49, in do_post
    os.remove(CRON_FILE)
OSError: [Errno 13] Permission denied: '/etc/cron.d/1sandbox_registration'

From root@sandbox.hortonworks.com  Wed Dec 11 19:36:43 2013
Return-Path: <root@sandbox.hortonworks.com>
X-Original-To: root
Delivered-To: root@sandbox.hortonworks.com
Received: by sandbox.hortonworks.com (Postfix, from userid 1007)
        id DABBCA109D; Wed, 11 Dec 2013 19:36:04 -0800 (PST)
From: root@sandbox.hortonworks.com (Cron Daemon)
To: root@sandbox.hortonworks.com
Subject: Cron <hue@sandbox> /usr/lib/tutorials/.env/bin/python /usr/lib/hue/tools/start_scripts/registration_post.py
Content-Type: text/plain; charset=UTF-8
Auto-Submitted: auto-generated
X-Cron-Env: <SHELL=/bin/bash>
X-Cron-Env: <PATH=/sbin:/bin:/usr/sbin:/usr/bin>
X-Cron-Env: <MAILTO=root>
X-Cron-Env: <HOME=/>
X-Cron-Env: <LOGNAME=hue>
X-Cron-Env: <USER=hue>
Message-Id: <20131212033639.DABBCA109D@sandbox.hortonworks.com>
Date: Wed, 11 Dec 2013 19:35:57 -0800 (PST)

Traceback (most recent call last):
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 53, in <module>
    do_post()
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 49, in do_post
    os.remove(CRON_FILE)
OSError: [Errno 13] Permission denied: '/etc/cron.d/1sandbox_registration'

From root@sandbox.hortonworks.com  Wed Dec 11 19:41:06 2013
Return-Path: <root@sandbox.hortonworks.com>
X-Original-To: root
Delivered-To: root@sandbox.hortonworks.com
Received: by sandbox.hortonworks.com (Postfix, from userid 1007)
        id 9539FA109A; Wed, 11 Dec 2013 19:40:46 -0800 (PST)
From: root@sandbox.hortonworks.com (Cron Daemon)
To: root@sandbox.hortonworks.com
Subject: Cron <hue@sandbox> /usr/lib/tutorials/.env/bin/python /usr/lib/hue/tools/start_scripts/registration_post.py
Content-Type: text/plain; charset=UTF-8
Auto-Submitted: auto-generated
X-Cron-Env: <SHELL=/bin/bash>
X-Cron-Env: <PATH=/sbin:/bin:/usr/sbin:/usr/bin>
X-Cron-Env: <MAILTO=root>
X-Cron-Env: <HOME=/>
X-Cron-Env: <LOGNAME=hue>
X-Cron-Env: <USER=hue>
Message-Id: <20131212034102.9539FA109A@sandbox.hortonworks.com>
Date: Wed, 11 Dec 2013 19:40:46 -0800 (PST)

Traceback (most recent call last):
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 53, in <module>
    do_post()
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 49, in do_post
    os.remove(CRON_FILE)
OSError: [Errno 13] Permission denied: '/etc/cron.d/1sandbox_registration'

From root@sandbox.hortonworks.com  Wed Dec 11 20:04:14 2013
Return-Path: <root@sandbox.hortonworks.com>
X-Original-To: root
Delivered-To: root@sandbox.hortonworks.com
Received: by sandbox.hortonworks.com (Postfix, from userid 1007)
        id 50732A109D; Wed, 11 Dec 2013 20:01:28 -0800 (PST)
From: root@sandbox.hortonworks.com (Cron Daemon)
To: root@sandbox.hortonworks.com
Subject: Cron <hue@sandbox> /usr/lib/tutorials/.env/bin/python /usr/lib/hue/tools/start_scripts/registration_post.py
Content-Type: text/plain; charset=UTF-8
Auto-Submitted: auto-generated
X-Cron-Env: <SHELL=/bin/bash>
X-Cron-Env: <PATH=/sbin:/bin:/usr/sbin:/usr/bin>
X-Cron-Env: <MAILTO=root>
X-Cron-Env: <HOME=/>
X-Cron-Env: <LOGNAME=hue>
X-Cron-Env: <USER=hue>
Message-Id: <20131212040408.50732A109D@sandbox.hortonworks.com>
Date: Wed, 11 Dec 2013 20:01:15 -0800 (PST)

Traceback (most recent call last):
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 53, in <module>
    do_post()
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 49, in do_post
    os.remove(CRON_FILE)
OSError: [Errno 13] Permission denied: '/etc/cron.d/1sandbox_registration'

From root@sandbox.hortonworks.com  Wed Dec 11 20:04:14 2013
Return-Path: <root@sandbox.hortonworks.com>
X-Original-To: root
Delivered-To: root@sandbox.hortonworks.com
Received: by sandbox.hortonworks.com (Postfix, from userid 1007)
        id 50519A109F; Wed, 11 Dec 2013 20:01:28 -0800 (PST)
From: root@sandbox.hortonworks.com (Cron Daemon)
To: root@sandbox.hortonworks.com
Subject: Cron <hue@sandbox> /usr/lib/tutorials/.env/bin/python /usr/lib/hue/tools/start_scripts/registration_post.py
Content-Type: text/plain; charset=UTF-8
Auto-Submitted: auto-generated
X-Cron-Env: <SHELL=/bin/bash>
X-Cron-Env: <PATH=/sbin:/bin:/usr/sbin:/usr/bin>
X-Cron-Env: <MAILTO=root>
X-Cron-Env: <HOME=/>
X-Cron-Env: <LOGNAME=hue>
X-Cron-Env: <USER=hue>
Message-Id: <20131212040412.50519A109F@sandbox.hortonworks.com>
Date: Wed, 11 Dec 2013 20:01:14 -0800 (PST)

Traceback (most recent call last):
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 53, in <module>
    do_post()
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 49, in do_post
    os.remove(CRON_FILE)
OSError: [Errno 13] Permission denied: '/etc/cron.d/1sandbox_registration'

From root@sandbox.hortonworks.com  Wed Dec 11 20:04:15 2013
Return-Path: <root@sandbox.hortonworks.com>
X-Original-To: root
Delivered-To: root@sandbox.hortonworks.com
Received: by sandbox.hortonworks.com (Postfix, from userid 1007)
        id C43DFA109E; Wed, 11 Dec 2013 20:01:28 -0800 (PST)
From: root@sandbox.hortonworks.com (Cron Daemon)
To: root@sandbox.hortonworks.com
Subject: Cron <hue@sandbox> /usr/lib/tutorials/.env/bin/python /usr/lib/hue/tools/start_scripts/registration_post.py
Content-Type: text/plain; charset=UTF-8
Auto-Submitted: auto-generated
X-Cron-Env: <SHELL=/bin/bash>
X-Cron-Env: <PATH=/sbin:/bin:/usr/sbin:/usr/bin>
X-Cron-Env: <MAILTO=root>
X-Cron-Env: <HOME=/>
X-Cron-Env: <LOGNAME=hue>
X-Cron-Env: <USER=hue>
Message-Id: <20131212040412.C43DFA109E@sandbox.hortonworks.com>
Date: Wed, 11 Dec 2013 20:01:14 -0800 (PST)

Traceback (most recent call last):
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 53, in <module>
    do_post()
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 49, in do_post
    os.remove(CRON_FILE)
OSError: [Errno 13] Permission denied: '/etc/cron.d/1sandbox_registration'

From root@sandbox.hortonworks.com  Wed Dec 11 20:05:02 2013
Return-Path: <root@sandbox.hortonworks.com>
X-Original-To: root
Delivered-To: root@sandbox.hortonworks.com
Received: by sandbox.hortonworks.com (Postfix, from userid 1007)
        id B4C55A109D; Wed, 11 Dec 2013 20:05:01 -0800 (PST)
From: root@sandbox.hortonworks.com (Cron Daemon)
To: root@sandbox.hortonworks.com
Subject: Cron <hue@sandbox> /usr/lib/tutorials/.env/bin/python /usr/lib/hue/tools/start_scripts/registration_post.py
Content-Type: text/plain; charset=UTF-8
Auto-Submitted: auto-generated
X-Cron-Env: <SHELL=/bin/bash>
X-Cron-Env: <PATH=/sbin:/bin:/usr/sbin:/usr/bin>
X-Cron-Env: <MAILTO=root>
X-Cron-Env: <HOME=/>
X-Cron-Env: <LOGNAME=hue>
X-Cron-Env: <USER=hue>
Message-Id: <20131212040502.B4C55A109D@sandbox.hortonworks.com>
Date: Wed, 11 Dec 2013 20:05:01 -0800 (PST)

Traceback (most recent call last):
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 53, in <module>
    do_post()
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 49, in do_post
    os.remove(CRON_FILE)
OSError: [Errno 13] Permission denied: '/etc/cron.d/1sandbox_registration'

From root@sandbox.hortonworks.com  Wed Dec 11 20:10:06 2013
Return-Path: <root@sandbox.hortonworks.com>
X-Original-To: root
Delivered-To: root@sandbox.hortonworks.com
Received: by sandbox.hortonworks.com (Postfix, from userid 1007)
        id 3F50BA109D; Wed, 11 Dec 2013 20:10:05 -0800 (PST)
From: root@sandbox.hortonworks.com (Cron Daemon)
To: root@sandbox.hortonworks.com
Subject: Cron <hue@sandbox> /usr/lib/tutorials/.env/bin/python /usr/lib/hue/tools/start_scripts/registration_post.py
Content-Type: text/plain; charset=UTF-8
Auto-Submitted: auto-generated
X-Cron-Env: <SHELL=/bin/bash>
X-Cron-Env: <PATH=/sbin:/bin:/usr/sbin:/usr/bin>
X-Cron-Env: <MAILTO=root>
X-Cron-Env: <HOME=/>
X-Cron-Env: <LOGNAME=hue>
X-Cron-Env: <USER=hue>
Message-Id: <20131212041006.3F50BA109D@sandbox.hortonworks.com>
Date: Wed, 11 Dec 2013 20:10:05 -0800 (PST)

Traceback (most recent call last):
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 53, in <module>
    do_post()
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 49, in do_post
    os.remove(CRON_FILE)
OSError: [Errno 13] Permission denied: '/etc/cron.d/1sandbox_registration'

From root@sandbox.hortonworks.com  Wed Dec 11 20:15:03 2013
Return-Path: <root@sandbox.hortonworks.com>
X-Original-To: root
Delivered-To: root@sandbox.hortonworks.com
Received: by sandbox.hortonworks.com (Postfix, from userid 1007)
        id E2CFDA109D; Wed, 11 Dec 2013 20:15:02 -0800 (PST)
From: root@sandbox.hortonworks.com (Cron Daemon)
To: root@sandbox.hortonworks.com
Subject: Cron <hue@sandbox> /usr/lib/tutorials/.env/bin/python /usr/lib/hue/tools/start_scripts/registration_post.py
Content-Type: text/plain; charset=UTF-8
Auto-Submitted: auto-generated
X-Cron-Env: <SHELL=/bin/bash>
X-Cron-Env: <PATH=/sbin:/bin:/usr/sbin:/usr/bin>
X-Cron-Env: <MAILTO=root>
X-Cron-Env: <HOME=/>
X-Cron-Env: <LOGNAME=hue>
X-Cron-Env: <USER=hue>
Message-Id: <20131212041502.E2CFDA109D@sandbox.hortonworks.com>
Date: Wed, 11 Dec 2013 20:15:02 -0800 (PST)

Traceback (most recent call last):
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 53, in <module>
    do_post()
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 49, in do_post
    os.remove(CRON_FILE)
OSError: [Errno 13] Permission denied: '/etc/cron.d/1sandbox_registration'

From root@sandbox.hortonworks.com  Wed Dec 11 20:20:02 2013
Return-Path: <root@sandbox.hortonworks.com>
X-Original-To: root
Delivered-To: root@sandbox.hortonworks.com
Received: by sandbox.hortonworks.com (Postfix, from userid 1007)
        id 8B31AA109D; Wed, 11 Dec 2013 20:20:02 -0800 (PST)
From: root@sandbox.hortonworks.com (Cron Daemon)
To: root@sandbox.hortonworks.com
Subject: Cron <hue@sandbox> /usr/lib/tutorials/.env/bin/python /usr/lib/hue/tools/start_scripts/registration_post.py
Content-Type: text/plain; charset=UTF-8
Auto-Submitted: auto-generated
X-Cron-Env: <SHELL=/bin/bash>
X-Cron-Env: <PATH=/sbin:/bin:/usr/sbin:/usr/bin>
X-Cron-Env: <MAILTO=root>
X-Cron-Env: <HOME=/>
X-Cron-Env: <LOGNAME=hue>
X-Cron-Env: <USER=hue>
Message-Id: <20131212042002.8B31AA109D@sandbox.hortonworks.com>
Date: Wed, 11 Dec 2013 20:20:02 -0800 (PST)

Traceback (most recent call last):
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 53, in <module>
    do_post()
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 49, in do_post
    os.remove(CRON_FILE)
OSError: [Errno 13] Permission denied: '/etc/cron.d/1sandbox_registration'

From root@sandbox.hortonworks.com  Wed Dec 11 20:25:04 2013
Return-Path: <root@sandbox.hortonworks.com>
X-Original-To: root
Delivered-To: root@sandbox.hortonworks.com
Received: by sandbox.hortonworks.com (Postfix, from userid 1007)
        id CE5AAA109D; Wed, 11 Dec 2013 20:25:03 -0800 (PST)
From: root@sandbox.hortonworks.com (Cron Daemon)
To: root@sandbox.hortonworks.com
Subject: Cron <hue@sandbox> /usr/lib/tutorials/.env/bin/python /usr/lib/hue/tools/start_scripts/registration_post.py
Content-Type: text/plain; charset=UTF-8
Auto-Submitted: auto-generated
X-Cron-Env: <SHELL=/bin/bash>
X-Cron-Env: <PATH=/sbin:/bin:/usr/sbin:/usr/bin>
X-Cron-Env: <MAILTO=root>
X-Cron-Env: <HOME=/>
X-Cron-Env: <LOGNAME=hue>
X-Cron-Env: <USER=hue>
Message-Id: <20131212042503.CE5AAA109D@sandbox.hortonworks.com>
Date: Wed, 11 Dec 2013 20:25:03 -0800 (PST)

Traceback (most recent call last):
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 53, in <module>
    do_post()
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 49, in do_post
    os.remove(CRON_FILE)
OSError: [Errno 13] Permission denied: '/etc/cron.d/1sandbox_registration'

From root@sandbox.hortonworks.com  Wed Dec 11 20:30:03 2013
Return-Path: <root@sandbox.hortonworks.com>
X-Original-To: root
Delivered-To: root@sandbox.hortonworks.com
Received: by sandbox.hortonworks.com (Postfix, from userid 1007)
        id 49869A109E; Wed, 11 Dec 2013 20:30:03 -0800 (PST)
From: root@sandbox.hortonworks.com (Cron Daemon)
To: root@sandbox.hortonworks.com
Subject: Cron <hue@sandbox> /usr/lib/tutorials/.env/bin/python /usr/lib/hue/tools/start_scripts/registration_post.py
Content-Type: text/plain; charset=UTF-8
Auto-Submitted: auto-generated
X-Cron-Env: <SHELL=/bin/bash>
X-Cron-Env: <PATH=/sbin:/bin:/usr/sbin:/usr/bin>
X-Cron-Env: <MAILTO=root>
X-Cron-Env: <HOME=/>
X-Cron-Env: <LOGNAME=hue>
X-Cron-Env: <USER=hue>
Message-Id: <20131212043003.49869A109E@sandbox.hortonworks.com>
Date: Wed, 11 Dec 2013 20:30:03 -0800 (PST)

Traceback (most recent call last):
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 53, in <module>
    do_post()
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 49, in do_post
    os.remove(CRON_FILE)
OSError: [Errno 13] Permission denied: '/etc/cron.d/1sandbox_registration'

From root@sandbox.hortonworks.com  Wed Dec 11 20:35:04 2013
Return-Path: <root@sandbox.hortonworks.com>
X-Original-To: root
Delivered-To: root@sandbox.hortonworks.com
Received: by sandbox.hortonworks.com (Postfix, from userid 1007)
        id 7B144A109E; Wed, 11 Dec 2013 20:35:04 -0800 (PST)
From: root@sandbox.hortonworks.com (Cron Daemon)
To: root@sandbox.hortonworks.com
Subject: Cron <hue@sandbox> /usr/lib/tutorials/.env/bin/python /usr/lib/hue/tools/start_scripts/registration_post.py
Content-Type: text/plain; charset=UTF-8
Auto-Submitted: auto-generated
X-Cron-Env: <SHELL=/bin/bash>
X-Cron-Env: <PATH=/sbin:/bin:/usr/sbin:/usr/bin>
X-Cron-Env: <MAILTO=root>
X-Cron-Env: <HOME=/>
X-Cron-Env: <LOGNAME=hue>
X-Cron-Env: <USER=hue>
Message-Id: <20131212043504.7B144A109E@sandbox.hortonworks.com>
Date: Wed, 11 Dec 2013 20:35:04 -0800 (PST)

Traceback (most recent call last):
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 53, in <module>
    do_post()
  File "/usr/lib/hue/tools/start_scripts/registration_post.py", line 49, in do_post
    os.remove(CRON_FILE)
OSError: [Errno 13] Permission denied: '/etc/cron.d/1sandbox_registration'

查看:"/usr/lib/hue/tools/start_scripts/registration_post.py

import os
import pwd, grp
from datetime import datetime

USERINFO_FILE_PATH = os.path.join('/usr/lib/tutorials',
                                  'user_info.dat')
MARKETO_URL = "http://info.hortonworks.com/index.php/leadCapture/save"
CRON_FILE = "/etc/cron.d/1sandbox_registration"
CRON_FILE_ORIGIN = "/usr/lib/hue/tools/start_scripts/registration_post_cron"

LOG_FILE = "/usr/lib/tutorials/registration_post.log"


def do_post():
    with file(LOG_FILE, "a+") as LOG:

        def log(s):
            print >>LOG, "[%s] %s" % (datetime.now().strftime("%d_%m_%Y_%H-%M-%S"), s)
            LOG.flush()

        if os.path.exists(USERINFO_FILE_PATH):
            #DO post
"registration_post.py" 56L, 1889C                             1,1           Top
import os
import pwd, grp
from datetime import datetime

USERINFO_FILE_PATH = os.path.join('/usr/lib/tutorials',
                                  'user_info.dat')
MARKETO_URL = "http://info.hortonworks.com/index.php/leadCapture/save"
CRON_FILE = "/etc/cron.d/1sandbox_registration"
CRON_FILE_ORIGIN = "/usr/lib/hue/tools/start_scripts/registration_post_cron"

LOG_FILE = "/usr/lib/tutorials/registration_post.log"


def do_post():
    with file(LOG_FILE, "a+") as LOG:

        def log(s):
            print >>LOG, "[%s] %s" % (datetime.now().strftime("%d_%m_%Y_%H-%M-%S"), s)
            LOG.flush()

        if os.path.exists(USERINFO_FILE_PATH):
            #DO post
            log("Try to upload...")
            import urllib2

            data = file(USERINFO_FILE_PATH).read()

            request = urllib2.Request(MARKETO_URL)
            request.data = data
            try:
                res = urllib2.urlopen(request)
            except:
                log("Failed to upload.")
            else:
                log("Uploaded successful. Code: %s %s\n%s\n\nheaders: %s" %\
                    (res.code, res.msg, res.read(), res.headers.dict))
                os.rename(USERINFO_FILE_PATH, USERINFO_FILE_PATH + ".posted")

        elif not os.path.exists(USERINFO_FILE_PATH + ".posted"):
            #Not registered yet. Add script to cron
            if not os.path.exists(CRON_FILE):
                with file(CRON_FILE, "w") as f:
                    f.write(file(CRON_FILE_ORIGIN).read())
                log("Script added to cron")

        else:
            #Registered. Remove cron task
            if os.path.exists(CRON_FILE):
                os.remove(CRON_FILE)
            log("Script removed from crontab")

if __name__ == '__main__':
    do_post()
    uid = pwd.getpwnam('hue').pw_uid
    gid = grp.getgrnam('hadoop').gr_gid
    os.chown(LOG_FILE, uid, gid)

posted on 2013-12-12 12:49  小风吹雪  阅读(864)  评论(0编辑  收藏  举报