시작 스크립트 : 네트워킹이 시작된 후 작업 실행


23

현재 서버 설정을 최신 하드웨어로 옮기고 우분투 카믹 코알라에서 자비 스라소니로 마이그레이션하고 있습니다. 현재 시스템의 ipv6 액세스 권한을 얻기 위해 gw6c (리포지토리의 버전이 아닌 gogo6 웹 사이트에서 컴파일 됨)를 사용하고 있습니다. karmic 코알라 시스템에서, 나는 간단한 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에서 시작하여 잘 작동하지만 부팅 할 때 분명히 시작되지 않습니다. -상태가 중지 / 대기 중입니다. 다른 곳에서 시작할 때 잘 작동하고 다시 나타납니다. 잘못 된 부분에 대한 아이디어와 적절한 '시작'인수는 무엇입니까?

편집 : 정확한 오류는 'init : gw6c 주 프로세스 (xxx)가 상태 8로 끝남'입니다. 그리고 프로세스 respawning이 발생합니다 .xxx는 PID로 의심됩니다. 나는 이것이 네트워킹 전에 gw6c가 시작되는 원인이라고 반으로 의심하고 있으며 gw6c가 있기 전에 eth0이 필요합니다.

답변:


27

분명히

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

작동하는 것 같습니다


예, 최근에 net-device-up 및 net-device-down을 사용하여 완벽하게 작동하는 몇 가지를 작성했습니다.
— Andy Shellam

나는 문서의 어느 곳에서도 그것을 찾지 못했습니다. 지역 메일 링리스트에있는 누군가가 나를 도와주었습니다
— Journeyman Geek

이것은 내가 찾던 것입니다. 그것은 내가 찾을 수있는 곳에서 여전히 시작 문서에 없습니다.
— Nathan

4

gw6c를 시작하는 스크립트를

/etc/network/if-up.d

해당 폴더의 모든 스크립트는 인터페이스가 나타난 후에 실행됩니다. eth0이 나타날 때만 실행하려면 eth0 항목을 편집하십시오.

/etc/network/interfaces

스크립트에 대한 호출을 추가

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

또한 인터페이스가 오프라인 상태가되기 전에 터널을 종료하기 위해 프리 다운 스크립트를 추가하는 것이 좋습니다.

일단 그렇게하고 작동하는 구현을 찾으면 다시 사용할 수 있도록 다시 게시하십시오. 내 노트북에 gw6c가 있지만 자동화를 위해 게으르다.


내가 게시 한 이전 스크립트는 꽤 잘 작동하지만 연결을 자체적으로 재설정 해야하는 경우 수동으로 다시 시작해야합니다. 이는 시작을위한 것이며, lucid lynx의 기본값입니다.
— Journeyman Geek

1

"Journeyman 괴짜"감사합니다 :) 당신은 저를 많은 시간을 절약했습니다. 나는 /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 명령) 스크립트가 작업을 수행했습니다! :) :) :)


당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.