eygle Eygle.
System 2009-08-10

Nobody 定时Movable Type的预约发布功能

前一段把Movable Type升级到了新版本,新版的MT Free版本变成了Pro版本:
Movable Type Pro version 4.261 with: Community Pack 1.63, Professional Pack 1.3

顺便配置了一下预约发布功能,在编辑Entry时,Status栏目可以选择:Scheduled选项。

然后在后台需要定义一个任务,crontab设置,定时执行 run-periodic-tasks 工具,该脚本位于 :
/path/to/mt/tools/run-periodic-tasks
crontab可以定制为如下示例,官方地址文档示范配置如下:
0,10,20,30,40,50 * * * * cd /path/to/mt; perl ./tools/run-periodic-tasks -verbose >> /var/log/httpd/mt.log

然后遇到的一个问题是,用root定制的crontab会将很多文件属性设定为root,这回导致后面的很多操作失败,因为权限问题。

常规通过网页发布的文章,属主为nobody,那么nobody是什么用户呢?
在Linux系统中还有一些用户是用来完成特定任务的,比如nobody和ftp 等,访问网页程序,就是nobody用户;匿名访问ftp 时,会用到用户ftp或nobody ;网页发布的文章,也用到这个用户,类似于Windows的Guest用户。这个用户在OS上是不能su切换的。

那么在Linux中怎样定义一个nobody用户的任务呢?
我定义完成是这样的:
10,20,30* * * * su -c '/www.eygle.com/tools/cron.sh' -s /bin/bash nobody
这样定制的任务就正常了!

-The End-



By eygle 2009-08-10 08:42 评论 (5)
eygle
eygle

前Oracle ACE Director,云和恩墨创始人。技术为骨,历史为脉,人文为魂。

返回首页

5 Comments

原来博客是用的MT呀

订阅了你的博客了啊,盖兄

哈哈,这个啊,很早以前填写的,Remember Me了!一直就这么挂着没做站,是我的域名不是seo,别误会解析到我的美国空间了。