免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 8552 | 回复: 12

[系统管理] centos7 下rc.local往里面一添加内容就报错是怎么回事? [复制链接]

论坛徽章:
0
发表于 2017-12-06 13:24 |显示全部楼层
我在/etc/rc.d/rc.local里写了一条: sh /root/coquelicot.sh 但是rc.local却无法启动了,一启动就报错,把这条内容删掉就正常了
20171206132232.png 这个是报错信息

之前我在其他服务器也写过同样的命令,都不会出问题,但是就这台一添加就报错

论坛徽章:
33
荣誉会员
日期:2011-11-23 16:44:17天秤座
日期:2014-08-26 16:18:20天秤座
日期:2014-08-29 10:12:18丑牛
日期:2014-08-29 16:06:45丑牛
日期:2014-09-03 10:28:58射手座
日期:2014-09-03 16:01:17寅虎
日期:2014-09-11 14:24:21天蝎座
日期:2014-09-17 08:33:55IT运维版块每日发帖之星
日期:2016-04-17 06:23:27操作系统版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-24 06:20:0015-16赛季CBA联赛之天津
日期:2016-05-06 12:46:59
发表于 2017-12-07 15:30 |显示全部楼层
回复 1# qq532342743

你那个 shell没有正常退出。返回了 127 。
正常应该返回 0.

论坛徽章:
0
发表于 2017-12-07 16:02 |显示全部楼层
回复 2# q1208c

感谢大神!确实如此,我刚刚试了一下,在shell里写了一个exit 0 ,rc.local就启动起来了,但是却不能正常运行脚本。在邮件里显示错误信息:
"/usr/bin/env: ruby_executable_hooks: No such file or directory";
好像是说我没有某个文件,但是我手动执行脚本的时候都没有问题的啊,我的脚本就是控制服务重启而已,求大神解惑。
20171207160023.png

论坛徽章:
33
荣誉会员
日期:2011-11-23 16:44:17天秤座
日期:2014-08-26 16:18:20天秤座
日期:2014-08-29 10:12:18丑牛
日期:2014-08-29 16:06:45丑牛
日期:2014-09-03 10:28:58射手座
日期:2014-09-03 16:01:17寅虎
日期:2014-09-11 14:24:21天蝎座
日期:2014-09-17 08:33:55IT运维版块每日发帖之星
日期:2016-04-17 06:23:27操作系统版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-24 06:20:0015-16赛季CBA联赛之天津
日期:2016-05-06 12:46:59
发表于 2017-12-07 23:41 |显示全部楼层
回复 3# qq532342743

这个情况应该是你的脚本需要某个环境变量。
一般是 PATH。
如果你已经指定了 PATH, 那可能你要对比一下两个环境变量的差异了。

找到了那个变量,直接在脚本里的写好就行了。

论坛徽章:
0
发表于 2017-12-08 09:44 |显示全部楼层
本帖最后由 qq532342743 于 2017-12-08 09:56 编辑

回复 4# q1208c

但是我这个脚本手动执行并没有问题啊,而且我脚本里的环境变量和我默认的环境变量是一样的。之前尝试,就算不指定脚本里的环境变量,手动执行同样没问题的,但是rc.local执行的话,就会报这个错:“/usr/bin/env: ruby_executable_hooks: No such file or directory”;在脚本指定环境变量后报这个错:
/usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/site_ruby/2.3.0/rubygems.rb:270:in `find_spec_for_exe': can't find gem bundler (>= 0.a) (Gem::GemNotFoundException)        from /usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/site_ruby/2.3.0/rubygems.rb:298:in `activate_bin_path'
        from /usr/local/rvm/gems/ruby-2.3.0/bin/bundle:22:in `<main>'
        from /usr/local/rvm/gems/ruby-2.3.0/bin/ruby_executable_hooks:15:in `eval'
        from /usr/local/rvm/gems/ruby-2.3.0/bin/ruby_executable_hooks:15:in `<main>' ;
好像或是找不到gem bundler,是不是rc.local也需要指定路径什么的?但是我在rc.local里面指定环境变量并没有什么用,还是上面这个错误。很头疼

论坛徽章:
0
发表于 2017-12-08 09:44 |显示全部楼层
本帖最后由 qq532342743 于 2017-12-11 11:20 编辑

。。。。。。。

论坛徽章:
0
发表于 2017-12-08 09:44 |显示全部楼层
本帖最后由 qq532342743 于 2017-12-11 11:19 编辑

。。。。。。。。。。。。

论坛徽章:
33
荣誉会员
日期:2011-11-23 16:44:17天秤座
日期:2014-08-26 16:18:20天秤座
日期:2014-08-29 10:12:18丑牛
日期:2014-08-29 16:06:45丑牛
日期:2014-09-03 10:28:58射手座
日期:2014-09-03 16:01:17寅虎
日期:2014-09-11 14:24:21天蝎座
日期:2014-09-17 08:33:55IT运维版块每日发帖之星
日期:2016-04-17 06:23:27操作系统版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-24 06:20:0015-16赛季CBA联赛之天津
日期:2016-05-06 12:46:59
发表于 2017-12-08 10:59 |显示全部楼层
回复 5# qq532342743

是的, 找不到 gem xxxx 了。

在你的shell脚本里指定就行,不需要在 rc.local里指定。

论坛徽章:
0
发表于 2017-12-11 11:25 |显示全部楼层
回复 8# q1208c

可是我在shell中已经指定了啊,为什么还是说找不到,您看下路径,我指定的没问题吧? 2.png
1.png

论坛徽章:
33
荣誉会员
日期:2011-11-23 16:44:17天秤座
日期:2014-08-26 16:18:20天秤座
日期:2014-08-29 10:12:18丑牛
日期:2014-08-29 16:06:45丑牛
日期:2014-09-03 10:28:58射手座
日期:2014-09-03 16:01:17寅虎
日期:2014-09-11 14:24:21天蝎座
日期:2014-09-17 08:33:55IT运维版块每日发帖之星
日期:2016-04-17 06:23:27操作系统版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-24 06:20:0015-16赛季CBA联赛之天津
日期:2016-05-06 12:46:59
发表于 2017-12-11 17:44 |显示全部楼层
回复 9# qq532342743

可能它需要的是另外的环境变量,而不只是在 PATH中。


您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP