我打算使用inosync将数据从主服务器同步到多个客户端服务器。 我在master和slave上都创build了一个名为rsyncuser的用户,它具有访问权限和从主服务器到从服务器的无密码ssh访问权限。
当我从命令行使用它作为rsyncuser时,Inosync正在工作。
接下来,我希望在服务器开启时自动启动。 我认为新贵是实现这个目标的方法。
我无法find正确的新贵命令来使这个工作。
这是我的新贵conf文件。 问题似乎是运行“inosync -d -c /etc/inosync/inosync_rsyncuser.py”作为给定的用户。
正如你可以看到我已经尝试了一些不同的select!
说明“开始inosync将数据同步到其他CDN服务器作为rsyncuser” 控制台输出 #开机启动 #停机closures 启动(net-device-up和本地文件系统) 在运行级停止[016] 运行级别开始[2345] #运行级别[!2345] #kill超时30 env RUN_AS_USER = rsyncuser 期望叉子 脚本 echo“Inosync updtart作业似乎已经开始”>> /tmp/upstart.log #exec sudo -u rsyncuser -c“ls -la”>> /tmp/upstart.log 2>&1 #LOGFILE = / var / log / logfile.`date +%Y-%m-%d`.log #exec su - $ RUN_AS_USER -c“inosync -d -c /etc/inosync/inosync_rsyncuser.py”>> $ LOGFILE 2>&1 #exec su -c“ls -la”>> /tmp/upstart.log 2>&1 #发出inosync_running 结束脚本
sudo默认在大部分的环境中踩踏。 试试这个(join-E):
exec sudo -E -u rsyncuser -c "ls -la" >> /tmp/upstart.log 2>&1
-E
告诉sudo保护环境。