代码改变世界

You (oracle) are not allowed to use this program (crontab)

  潇湘隐者  阅读(7519)  评论(0编辑  收藏  举报

 

检查一台ORACLE数据库服务器的crontab作业(用户为oracle,实际环境中可能为oracle、也有可能是其它用户)时,发现出现下面提示信息:

 

$ crontab -l

You (oracle) are not allowed to use this program (crontab)

See crontab(1) for more information

 

遇到这种情况,一般是oracle用户被禁止使用crontab指令,需要检查两个配置文件/etc/cron.deny和/etc/cron.allow

 

 

 

/etc/cron.deny        # 该文件中所列用户不允许使用crontab命令

/etc/cron.allow    # 该文件中所列用户允许使用crontab命令

 

 

检查的具体信息如下所示:

 

# more /etc/cron.deny

#

# more /etc/cron.allow

root

tomcat

#

 

在/etc/目录下,可能默认会有cron.allow以及cron.deny文件,也可能没有,没有的情况下可以自己创建,cron.allow文件中包含了可以使用crontab命令的用户名,cron.deny文件中包含了不可以使用crontab命令的用户名。两个文件中每个用户名占一行,并且不允许出现空格。

 

注意事项:root用户在任何情况下都可以使用crontab命令。

           假如cron.allow配置文件存在,则只有列在这个文件中的用户名可以使用cron,这时候cron.deny被忽视。

           假如cron.allow不存在,则列在cron.deny文件中的用户名不可以使用cron。

 

那么出现这种情况是因为同事设置过配置文件/etc/cron.allow,所以只需在/etc/cron.allow中配置oracle用户即可解决问题。

 

 

# echo oracle > /etc/cron.allow

 

 

然后使用 crontab -l 就能看到设置的作业了。

编辑推荐:
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
历史上的今天:
2019-02-15 Linux查看监听端口的脚本测试
2019-02-15 [转载]——说说IO
2017-02-15 The concurrent snapshot for publication 'xxx' is not available because it has not been fully generated or the Log Reader Agent is not running to activate it
点击右上角即可分享
微信分享提示