新贵脚本:联网后运行一个任务

我正在把目前的服务器设置移动到更新的硬件,并从Ubuntu的业力考拉迁移到清醒的山猫。 目前我使用gw6c(从gogo6网站编译,而不是从版本库)来获得我的系统的ipv6访问。 在业余考拉系统上,我使用简单的init.d脚本来启动ipv6客户端

#! /bin/sh /usr/local/gw6c/bin/gw6c -f /usr/local/gw6c/bin/gw6c.conf 

我想,因为这运行在任何运行级别,它应该转化为

 respawn console none start on startup stop on shutdown script exec /usr/local/gw6c/bin/gw6c -f /usr/local/gw6c/bin/gw6c.conf emit free6_ipv6_started end script 

这工作正常从initctrl开始,但它启动时显然无法启动。 – 其状态是停止/等待。 它开始工作正常(和respawns),否则开始。关于我要去哪里错了什么想法,什么是适当的“开始”的争论?

编辑:确切的错误是'初始化:gw6c主进程(xxx)以状态8结束,其次是进程respawning,与xxx是一个PID我怀疑。 我也有一半怀疑这是因为gw6c开始networking之前,我需要我的eth0之前gw6c是

    显然地

     respawn console none start on (local-filesystems and net-device-up IFACE!=lo) stop on [!12345] script chdir /usr/local/gw6c/bin/ exec /usr/local/gw6c/bin/gw6c end script 

    似乎工作

    放置一个脚本开始gw6c英寸

     /etc/network/if-up.d 

    在启动界面后,该文件夹中的所有脚本都会运行。 如果你只希望它在eth0出现时运行,那么编辑中的eth0条目

     /etc/network/interfaces 

    并添加一个调用脚本

     iface eth0 inet dhcp up /etc/init.d/gw6c restart 

    我还build议添加预先closures的脚本,以closures隧道之前,接口下线。

    一旦你这样做,并find一个有效的实现,将其发回到这里,以便我可以使用它。 我的笔记本电脑上有gw6c,但是我一直懒得自动化。

    谢谢你“熟人怪胎”:)你为我节省了很多时间。 我正在和/etc/init.d/gw6c脚本争执,试着用“sysv-rc-conf -p”来尝试一些时机,并想知道为什么它不工作(又名WTF?)。

     respawn console none start on (local-filesystems and net-device-up IFACE=eth0) stop on runlevel [!12345] script exec /etc/init.d/gw6c start end script 

    稍微修改(“runlevel”和exec命令)脚本做了这个工作! 🙂 🙂 🙂

    从这里: http : //upstart.ubuntu.com/cookbook/#single-job-instance-running-without-pid

     description "Uncomplicated firewall" # Make sure we start before an interface receives traffic start on (starting network-interface or starting network-manager or starting networking) stop on runlevel [!023456] console output pre-start exec /lib/ufw/ufw-init start quiet post-stop exec /lib/ufw/ufw-init stop