当放在RHEL6上的rc.local中时,二进制文件无法启动。手动运行时会执行相同的二进制文件

时间:2016-01-29 13:16:41

标签: linux linux-toolchain linux-standard-base

我们有一台RHEL6服务器,其中禁用了IPtables,NetworkManager和sestatus。在同一台服务器上,我们使用C ++代码创建了一个二进制文件。

当Binary以root身份手动运行时运行正常,但是当我们尝试通过rc.local和cronjob(root,每30分钟运行一次)在启动时运行它时,它不会被加载到服务器内存。

我们尝试使用shell脚本在启动时启动二进制文件,方法是在脚本中放置二进制路径并将脚本添加到rc.local和cronjob。仍然没有运气。

在玩了一些环境变量之后,我们在运行二进制文件之前用脚本导出它们。 cronjob问题得到了解决,但启动问题仍然存在。 使用的变量是" MANPATH,TERM,USER,LD_LIBRARY_PATH和PATH"。

如果有人遇到这样的问题并且能够解决问题,请告诉我。

提前致谢

1 个答案:

答案 0 :(得分:0)

使用shell脚本运行tyour二进制文件。在脚本的开头,在#!/bin/bash之后添加(取决于您最喜欢的shell):

source ~/.bash_profile

和/或

source ~/.bashrc

和/或

source ~/.profile

当cron启动作业时,使用的shell不会加载任何内容。你必须自己创建环境。