我在这里与crontab有一个奇怪的问题。 我已经正确设置了crontab来运行cron作业,如下所示: [user@user ~]$ crontab -e SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin [email protected] HOME=/ 2 * * * * php usr/share/nginx/html/site/script.php 脚本运行,我知道这是因为脚本只是一个基本的testing,使用mail()函数让我知道它运行。 但是我没有从crontab得到电子邮件让我知道脚本已经运行。 我应该得到一个输出电子邮件到MAILTO地址上面,但我不是。 我甚至用地址附近的引号尝试过。 Sendmail没有任何问题,否则脚本将无法发送电子邮件。 电子邮件地址没有任何问题,因为script.php中的mail()代码发送到相同的电子邮件地址。 从技术上讲,我可以通过这种方式发送电子邮件,而不是依靠crontab,但是我知道这不是正确的做法。 任何想法我哪里错了? PS。 这是一个Centos 6.3服务器。
我有一个生产服务器运行与MySQL数据库的CentOS。 在家里,我有一个QNAP NAS(运行一点embedded式Linux)。 我想在我的NAS上做一个Cron作业来备份我的CentOS生产服务器上的数据。 问题是,我不想传输未压缩的数据(SQL转储将结束5GB)。 我想SSH到服务器上,运行SQL转储,压缩结果,下载它。 这可能吗? 什么是最有效的方法?
我目前有一个专用的Ubuntu备份服务器,每天都会从挂起(使用rtcwake)唤醒自己。 5分钟后,一个cron BASH工作开始,使用rsync从各个networking位置提取文件。 如果这个BASH脚本完成了,它所做的最后一件事就是让服务器重新进入hibernate状态,直到第二天(备份作业开始运行之前的5分钟 – 您可以看到图片!)。 还有一个额外的cron作业,在10:45 pm运行,以“清除”任何正在运行的脚本/ rsync进程,然后暂停机器,直到第二天。 我的问题/查询是:机器是在一个慢速链接(802.11n无线),并必须同步一些非常大的媒体文件。 我正在使用与此类似的rsync命令: rsync -aPvz -e ssh –itemize-changes –modify-window=60 –exclude 'thumbs.db' /source/ /destination/ 而在rsync无法在服务器唤醒的时间内完成的情况下,我假定(因为-P)它会尝试从中断的地方继续。 实际上似乎发生的是,我最终得到目录中同一文件的多个部分副本,但副本从未完成。 例如: .BigFile.mkv.EJtNSS (4.1GB) .BigFile.mkv.KSUStW (3.7GB) .BigFile.mkv.LSewSA (4.3GB) 有没有人遇到过类似的情况? 如果有一块软件可以做类似的工作(包括处理睡眠/唤醒),我很乐意将它改变。 我是BASH脚本的新手,但尝试任何build议。 干杯,洛兹
所以我目前正在试图获得一个脚本工作,但是当我手动运行时,它的行为与从crontab运行时相比有所不同。 基本上,我有一个反向的SSH隧道build立从一台服务器到另一台,并为了validation我的隧道是我: 从服务器A到服务器B的SSH 从服务器B的服务器A上获取一个testingurl 如果Wget成功,我断开连接并且什么都不做 如果Wget失败,我断开并重启隧道 我知道有更好的方法来validationSSH隧道(如autossh和ServerKeepAlive),但是对于策略和冗余问题,我必须这样做。 无论如何,这是脚本: from __future__ import print_function from __future__ import absolute_import import os, sys, subprocess, logging, pexpect COMMAND_PROMPT = '[#$] ' TERMINAL_PROMPT = '(?1)terminal type\?' TERMINAL_TYPE = 'vt100' SSH_NEWKEY = '(?i)are you sure you want to continue connecting' SERVERS = [{address':'192.168.100.10', 'connString':'ssh [email protected]', 'testGet':'wget http://192.168.100.11/test.html -t 1 -T 10', 'tunnel':'start_tunnel'}, […]
出于某种原因,我的cron作业脚本没有完全退出,他们正在备份我的服务器。 目前我的一个用户正在运行几百个进程。 我可以使用下面的命令来终止该用户的所有进程,但是我怎么能简化这个只杀死crons? pgrep -U username | while read id ; do kill -6 $id ; done 按原样运行上述命令会很危险,对吗? 不会杀死MySQL和其他重要的东西吗?
来自我的crontab为什么不工作,我该如何解决它? 我仍然不知道为什么我的命令没有执行。 我对root和www-data有相同的命令 我的cron日志显示cron每分钟执行一次 但是,我从来没有得到/tmp/crontest.log文件。 我注意到这个问题,因为我想使wordpress外部cron(执行php文件)。 当然,从命令行执行该命令正在工作。 有小费吗?
Cron工作在过去几个月工作,但最近我有一个高服务器负载,现在cron作业不执行我的PHP文件(与以前工作相同的)。 当我检查cron日志时,我发现我认为这与这个问题有关: (CRON) EXEC FAILED (/usr/sbin/sendmail): Resource temporarily unavailable 我需要做些什么来解决这个问题? 我正在运行CentOS 7。 编辑:我标记为答复,因为我认为一个过程挂是造成这个问题。 今天,我醒了,发生同样的问题。 我不知道是什么原因造成的。 在cron日志中,我看到: Oct 11 05:01:01 run-parts(/etc/cron.hourly)[25431]: starting 0anacron Oct 11 05:01:01 run-parts(/etc/cron.hourly)[25444]: finished 0anacron Oct 11 05:01:01 run-parts(/etc/cron.hourly)[25431]: starting 0yum-hourly.cron Oct 11 05:01:01 run-parts(/etc/cron.hourly)[25450]: finished 0yum-hourly.cron Oct 11 05:01:01 CROND[25434]: (CRON) EXEC FAILED (/usr/sbin/sendmail): Resource temporarily unavailable Oct 11 05:01:01 CROND[25429]: […]
当我使用 crontab -l和 crontab -e 我重新安排了我的计时器,但是发现他们仍然在前一段时间开火。 然后我在/etc/cron.d/下发现了cron格式的文件,其中包含了以前的调度,现在我假设这是cron服从的这些文件。 所以我想编辑这些,并从主crontab中删除多余的“屏蔽”行,但crontab的用法是: usage: crontab [-u user] file crontab [-u user] { -e | -l | -r } 所以使用-l或-e似乎与指定文件是相互排斥的。 什么是编辑文件/etc/cron.d/*的正确方法?
我有一个perl脚本,在每个600秒内轮询文件的存在,然后继续完成任务。 我正在使用crontab来安排我的脚本。 我不知道是否有一个事件系统在Linux上,我可以注册我的Perl脚本,以便系统做callback,如果该文件存在?
我正在使用mysqldump命令来备份我的数据库。 mysqldump –add-drop-table -u user -ppassword databasename > backup/mybackup_$(date +%d%m%Y_%H%M).sql 它工作正常…但我想自动化,以便它可以在每两天进行一次备份或一些..为此,我正在使用crontab .. 15 2 * * * mysqldump –add-drop-table -u user -ppassword databasename > backup/mybackup_$(date +%d%m%Y_%H%M).sql 但这是给我一个错误在腻子说命令没有found..any的想法,为什么? 请帮帮我..