首页 / 知识
关于Ruby on Rails:为什么我的Cron工作不能正常工作?
2023-04-12 08:09:00

Why Doesn't My Cron Job Work Properly?我在Ubuntu Hardy VPS上做了一份计划工作,只有一半可以工作,我不知道为什么。 该工作是一个Ruby脚本,它使用mysqldump备份Rails应用程序使用的MySQL数据库,然后将其压缩并使用SFTP上传到远程服务器。 gzip文件已成功创建并复制,但始终为零字节。 但是,如果我直接从命令行运行cron命令,它将运行完美。 这是cron工作:
这是datadump.rb:
我检查并仔细检查了所有路径,它们是正确的。 sftp.yml(SFTP凭据)和database.yml(MySQL凭据)均由具有该用户只读权限的执行用户(部署)拥有(chmod 400)。 我正在使用net-ssh和net-sftp的1.1.x版本。 我知道它们不是最新的,但是它们是我目前所熟悉的。 是什么导致cron作业失败? 如果脚本可以交互地正确运行,但不能由cron运行,则问题通常是由于环境环境设置适当,例如@Ted Percival提到的PATH路径,但可能是其他环境变量。 这是因为cron在执行之前不会调用.bash_profile,.bashrc或/ etc / profile。 避免这种情况的最佳方法是确保cron调用的任何脚本在执行时都不会对环境做出任何假设。克服这一难题很简单,只需在脚本中包含几行内容即可确保正确设置了环境。例如,就我而言,我在/ etc / profile中具有所有重要的设置(对于RHEL),因此我将在要在cron下运行的任何脚本中包括以下行:
看起来您的
作为cron作业运行时,您确定临时文件创建正确吗?脚本的工作目录将在HOME环境变量中指定,或者在安装cron作业的用户的/ etc / passwd条目中指定。如果deploy对执行目录没有写权限,则可以为转储文件指定绝对路径以解决此问题。 cron是否发送带有日志的电子邮件? 如果不是,则将cron的输出通过管道传输到日志文件。 确保将STDERR重定向到日志。 |
最新内容
相关内容
python脚本和网页的区别是什么
python脚本和网页的区别是什么,网站,培训,设计,通用,标准,平台,网页,语言,脚本,标记,python是一种计算机程序设计语言,一种面向对象的动态类型python怎么写个简单的python脚本
python怎么写个简单的python脚本,培训,代码,字符串,脚本,用户,函数,类型,内容,整数,示例,其实编写简单的Python脚本还是很容易的,比如下面我们python脚本语言
python脚本语言,代码,设计,情况,培训,语句,项目,基础,意外,异常,空格,Python是一种计算机程序设计语言。是一种面向对象的动态类型语言,最初被pythonpython是脚本语言吗?
pythonpython是脚本语言吗?,设计,培训,大规模,项目,软件,面临,开发者,语言,脚本语言,方法,Python是脚本语言。python是一种计算机程序设计语python脚本如何指定文件
python脚本如何指定文件,培训,文件,脚本,参数,赋值,变量,路径,实例,以上,需求,python脚本如何指定文件1、说明(1)dest=files,是说将命令行中,--多种形式的Delphi应用程序和对话框
多种形式的Delphi应用程序和对话框,多种形式的Delphi应用程序和对话框,视图,所见即所得,应用程序,文档,Multiple form Delphi applic关于编辑器:收藏夹(G)Vim插件/脚本?
关于编辑器:收藏夹(G)Vim插件/脚本?,关于编辑器:收藏夹(G)Vim插件/脚本?,浏览,打开文件,文件系统,脚本,Favorite (G)Vim plugins/scripts关于sql server:批处理文件以”
关于sql server:批处理文件以脚本数据库,关于sql server:批处理文件以脚本数据库,向导,脚本,文件,数据库,Batch file to “Script” a关于配置文件:配置PHP脚本的最简单
关于配置文件:配置PHP脚本的最简单方法,关于配置文件:配置PHP脚本的最简单方法,显示,脚本,函数调用,转储,Simplest way to profile a P关于c#:创建单实例WPF应用程序的正确
关于c#:创建单实例WPF应用程序的正确方法是什么?,关于c#:创建单实例WPF应用程序的正确方法是什么?,控制台,窗体,只读,比我,What is the cor关于单元测试:将TDD与Web应用程序开
关于单元测试:将TDD与Web应用程序开发集成的最佳实践?,关于单元测试:将TDD与Web应用程序开发集成的最佳实践?,单元测试,歧义,应用程序,关于apache:如何创建自签名SSL证书
关于apache:如何创建自签名SSL证书以在测试Web应用程序时使用,关于apache:如何创建自签名SSL证书以在测试Web应用程序时使用,服务器,