1
mkeith 2013-11-05 10:14:54 +08:00
crontab 的进程用户是哪个啊?
|
2
initialdp 2013-11-05 10:32:59 +08:00 via iPad 1
为啥不用PHP呢?很轻松搞定。有个uploader的PHP脚本,几行代码调用就可以了。
|
3
wzxjohn 2013-11-05 10:41:45 +08:00
肯定的啊,crontab执行任务的时候很多环境变量都是不能用的。。
|
4
zhttty OP |
5
initialdp 2013-11-05 11:44:52 +08:00 via iPad
|
6
zhttty OP |
7
dorentus 2013-11-05 12:12:20 +08:00
|
8
lanbing 2013-11-05 12:13:41 +08:00 via Android
一直在用,默认的很正常,没有失败过。
|
9
dorentus 2013-11-05 12:15:42 +08:00
其实我觉得用 root 用户可能是最大的坑源……
时常发生各种奇怪的问题。 |
10
zhttty OP @dorentus 正常情况下可用,但在其它shell调用情况下或者一些复杂因素下,会产生很多难以解释的困惑...
所以一般来说,要么就是用绝对路径,要么就先获取变量 譬如:/`who am i | awk '{print $1}'`/.dropbox_uploader |
11
princeofwales 2013-11-05 12:20:24 +08:00
我没改这个也能用啊
crontab配的是root用户执行 |
13
zhttty OP @princeofwales
/root/backup.sh 脚本这样: #!/bin/bash source /root/.bash_profile PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin LANG=C export PATH export LANG mysqldump -u root -pxxxx xxxx >/root/mysqlbackup/xxxx.sql tar -zcvf /root/mysqlbackup.tar.gz /root/mysqlbackup/ >>/tmp/xxxx.log 2>&1 /root/Dropbox-Uploader/dropbox_uploader.sh upload /root/mysqlbackup.tar.gz >>/tmp/xxxx.log 2>&1 rm -rf /root/mysqlbackup.tar.gz crontab中类似这样: 0 1 * * 1 root sh /root/backup.sh 如果不修改Dropbox-Uploader原脚本,它在crontab运行下会永远提示是第一次运行 Dropbox-Uploader 的状态,也就是交互输入appid的那种情况。 |
14
zhttty OP |
15
wzxjohn 2013-11-05 13:16:25 +08:00
@zhttty 不不不,不是作者的问题。
Dropbox Uploader is a BASH script which can be used to upload, download, delete, list files (and more!) from Dropbox, an online file sharing, synchronization and backup service. 作者说了这事一个给Bash用的脚本,而且Readme.md里面也没有任何关于在crontab下使用的说明,所以这个脚本本来就是给你在Bash用的,想要crontab用就必须自己改喽~ |
16
princeofwales 2013-11-05 18:43:55 +08:00
我没改过dropbox_upload.sh,在centos和debian下都用过,备份网站和数据库,真的没出现问题,怪了
root用户 CONFIG_FILE=~/.dropbox_uploader 然后 0 2 * * * root /root/dropbox_backup.sh |
17
lll9p 2013-11-06 00:03:52 +08:00 1
LZ没仔细看程序吧,可以指定配置文件的。
dropbox_uploader.sh -f CONFIG_FILE 比如我就写了个用在crontab脚本用来备份一些文件到dropbox sh /root/dropbox_uploader.sh -f /root/dropbox_uploader_config upload files.tar.gz |