从rc.local启动的Ubuntu 12.04 LTS自动启动脚本不执行ruby脚本

时间:2014-09-09 07:28:23

标签: ruby linux shell ubuntu

我遇到了一个奇怪的问题。

我的设定: Ubuntu 12.04 LTS

在桌面上的文件夹中自编写shell脚本和一个ruby脚本(结尾*.rb)。

我通过使用文件/etc/rc.local实现了自动启动,其中我添加了启动脚本的路径:

[...]
sh /home/username/Desktop/shell/startup.sh
exit 0

该文件中没有其他脚本。

所以在这里,startup.sh执行剩下的工作。 1.另一个shell脚本。 2.红宝石文件 3. sendmail shellcript 4.关闭脚本

一切都很好,但不是ruby脚本。

奇怪的是,当我从终端启动startup.sh时,它工作正常。

我检查了路径,读/写权限,所有者......但没有任何作用。 我还尝试使用startup.sh文件执行rcX.d但我得到了相同的结果。 我在rc.local中添加了一个睡眠计时器,以确保所有内容都在后台加载。

使用gnome-system-monitor我可以看到执行每个文件的rc.local,但至少它会转到关闭脚本。

脚本不会同时执行,一个接一个地执行。

我尝试的一切都没用。 ruby脚本被“忽略”。

我希望你能帮助我,因为我已经没有任何想法了。

问候, 英里

更新

rc.local中

#!/bin/sh -e
sleep 3m
../home/milesdavis/Desktop/shell/startup.sh
exit 0

startup.sh

#!/bin/bash
ruby /home/milesdavis/Desktop/shell/myrubyscript.rb
sh /home/milesdavis/Desktop/shell/shutdown.sh

myrubyscript.rb

#!/usr/bin/ruby
require 'glib2'
require 'gtk2'
require 'vte'
require 'rexml/document'
...

shutdown.sh

#!/bin/bash
shutdown -h 10

我想再说一遍,它直接进入关机脚本并执行它。

0 个答案:

没有答案
相关问题