我的服务器信息: OS: Windows Server 2003 IIS6 Plesk 8.xx installed (currently using Plesk to set the cronjob) 我需要你的build议。 我有2种方法: 方法1: 使用php + mysqldump,将数据库备份文件创build成gzip,然后用附件发送邮件(每个数据库大约有25MB) 方法2: 使用batch + mysqldump,将数据库备份文件创build成gzip,然后用附件发送电子邮件(每个数据库大约有25MB左右) 我的问题: 什么是使用PHP文件和batch file的cronjob的区别? 哪种方法在备份速度和发送电子邮件方面更好 ,以及(可能)安全性(例如,较less的文件损坏发生)? 如果我每小时设置一次cronjob,它是否会影响我的web性能? 我的意思是,假设我的网站现在有100 ++的用户在线,而且每个用户在MySQL上做交易,当我在我的网站高峰时间进行备份,会降低性能,如加载速度,容易出错等。 (对不起,我的英语不好) PS:如果你需要我的PHP和batch file代码,请让我把它发布在这里。 我没有发布它现在是因为,它非常简单和标准的代码。
好日子,我的主目录中有一个bash脚本,可以从命令行正常工作(文件结构是默认媒体寺庙DV。<注意某些权限问题),但从cron收到此错误:“/home/myFile.sh:第2行:/var/www/vhosts/domain.com/subdomains/techspatch/installation.sql:权限被拒绝“注意:这只是第2行…它写入本地服务器就好了。 以下是Bash文件: #!/bin/bash mysqldump -uUSER -pPASSWORD -hHOST dbName> /var/www/vhosts/domain.com/subdomains/techspatch/installation.sql mysql -uadmin -pPASSWORD -hlocalhost dbName< /var/www/vhosts/domain.com/subdomains/techspatch/installation.sql 不能chmod从bash(哈哈,是的,我试过)。 在那里写文件并在传输之前设置权限是无用的… 我已经使用了这种情况,这一个似乎仍然是独一无二的….任何有识之士的赞赏
我的服务器目前正在托pipe8个独立的网站(不断增长),其中四个在全天积极发送电子邮件,一些在夜间批量(select)列表。 我刚刚完成了为每个域设置PTR,SPF,Domainkeys和DKIM,现在我想移动到捕捉反弹来标记和删除垃圾邮件地址。 我想知道是否有可能(如果是这样,如何)要求postfix将从每个域发送的邮件logging到除/ var / log /中的单个组合文件之外的单独文件。 虽然这对我自己读取日志没有太大的帮助,但是我可以在夜晚的不同时间在较小的日志上运行CRONparsing器,这样我就可以长时间保持我的服务器上的负载不被刺激。 此外,还可以进行其他分析工作,以便更快速地诊断各个域的错误。 我应该运行一个CRON来后处理前一天的日志和分割(这本身就包含一些扩展的负载),还是我可以将其设置为在日志写入时自动完成?
在crontab你可以使用连字符指定范围(例如“0-15”)。 但是最近我看到了这样一个条目: -*/15 * * * * command 连字符加星号是什么意思?
我刚刚设置了一个故障转移DNS来将网站切换到第二个主机,如果第一个是closures的。 这对于显示网站的旧版/归档版本非常有用,但是我怀疑维护将会是一个真正的痛苦。 我首先使用rsync移动文件。 这是否可以作为一个cron作业运行,自动移动较新的文件?
继续从一个Stackoverflow的问题 ,我有一个.sh,试图(1)运行一个脚本,设置环境variables,然后(2)运行一个PHP脚本。 crontab条目(已经试过,没有>>输出): */1 * * * * /home/user/public_html/domain.com/private/ec2-api-tools/php/doQueue.sh >> /home/user/output.txt 脚本doQueue.sh(手动运行): #/bin/sh . ./environment.sh php process_queue.php environment.sh(再次,手工): #!/bin/sh echo "running environment" PATH=$EC2_HOME/bin:$PATH EC2_HOME=/home/user/public_html/domain.com/private/ec2-api-tools PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/user/public_html/domain.com/private/ec2-api-tools/bin MAIL=/var/mail/root PWD=/home/user/public_html/domain.com/private/ec2-api-tools JAVA_HOME=/usr/lib/jvm/java-6-sun/jre/ LANG=en_US.UTF-8 EC2_PRIVATE_KEY=/home/user/public_html/domain.com/private/ec2-api-tools/pk-hash.pem EC2_CERT=/home/user/public_html/domain.com/private/ec2-api-tools/cert-hash.pem 我已经尝试过使用sh和. 无济于事。 解决此问题的最佳方法是什么?
我有一个BASH脚本,用于“读取”备份日志,报告上次备份的成功/失败,列出备份目录的内容,然后通过电子邮件发送结果。 将备份移动到新的服务器并将电子邮件程序转换为function后,它会通过电子邮件向我发送垃圾邮件。 看起来它正在扩大date,并发送一个电子邮件扩展到每个date。 我看不到我的生活。 以下是来自“MAIN”的一些代码: YDATE=$(date -s "yesterday" '+%a%b%d') BKPLOG="/mnt/nfs/horizon/backuplog_$YDATE.log" STATUS=$(cat /mnt/nfs/horizon/backuplog_$YDATE.log) # Catenate logs and status into message body — email report to # Support. func_make_msg $MSG "$RPT" "$STATUS" "$DB_SERV_BACKUP_LISTING" func_send $MSG "[email protected]" # Send it! func_make_message只是创build消息。 请注意,这两个函数都不在for或while循环中。 这是发送function: function func_send () { local _message=$1 local _cc=$2 local _recipient=$3 $PRINT –columns=2 -t < $_message […]
我正在运行夜间bash脚本来同步远程文件夹(源)与本地文件夹(目标)。 我已经testing了基于rsync的这个脚本,并且它在一个root shell中工作正常。 需要一段时间,因为有一百个演出复制,但它的作品。 一旦我在crontab中使用它,我的服务器耗尽内存。 我的服务器有8GB的内存,4GB的交换空间,正如我所说的,当从一个shell手动运行脚本时,脚本永远不会运行OOM。 这是默认的Centos 5.5安装。 我可以拆分负载并同步所有第二级目录中的查找/脚本,但我想保持简单,只能同步顶级目录。 我不能做太多的testing,因为这个服务器是用来托pipe网站和其他服务,我不能把它挂在testing的目的。 你知道一个可以让cron正常完成这个工作的设置吗? #!/bin/bash BACKUP_PATH="/root/scripts/backup" rsync -av –delete /net/hostname/source/ /export/target/ > $BACKUP_PATH/backup_results_ok 2> $BACKUP_PATH/backup_results_error 编辑:cron的configuration是默认的,如/etc/security/limits.conf,全部注释掉了。
我试图从Godaddy的共享主机envinronment为朋友创build一个备份。 网站整个文件大约2GB,Godaddy不支持20MB以上的存档文件。 唯一的select是使用服务器端的焦油。 基本上我在Cron只做一半的工作时面临一个问题,在1GB +中只能压缩到300MB。 这是我正在使用的脚本, #!/bin/bash /bin/tar -cvzf $HOME/html/fullsite_test.tgz $HOME/html > $HOME/html/Out.log 2>&1 这是我填入Godaddy的命令, "$HOME/html/backup.sh" 有谁知道为什么它不按预期工作? 我甚至处理了stderr和stdout,所以我仍然不知道发生了什么事情…. 注意:$ HOME是帐户的绝对目录path。
我在MediaTemple(ve)服务器上运行Ubuntu 9.10和10.04。 在他们两人之间, anacron设置被打破,…自从我第一次安装Ubuntu以来,它们已经被破坏了。 最近才发现我的日志文件没有旋转。 我希望有一个工作的人可以帮助诊断问题并提出修复build议。 这里是/etc/cron.d/anacron …这部分工作正常:每天早上7:30, cron执行这个命令启动anacron。 # /etc/cron.d/anacron: crontab entries for the anacron package SHELL=/bin/sh PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin 30 7 * * * root test -x /etc/init.d/anacron && /etc/init.d/anacron start >/dev/null 问题是/etc/init.d/anacron start失败: # /etc/init.d/anacron start >/dev/null start: Unknown job: anacron 请注意,/etc/init.d/anacron是到/ lib / init / upstart-job的符号链接: # ls -l /etc/init.d/anacron lrwxrwxrwx 1 root […]