Pracuję nad przeniesieniem bieżącej konfiguracji serwera na nowszy sprzęt i przeprowadzeniem migracji z karmicznej koali Ubuntu do świadomego rysia. Obecnie używam gw6c (skompilowanego ze strony internetowej gogo6, w przeciwieństwie do wersji z repozytoriów), aby uzyskać dostęp ipv6 dla moich systemów. W systemie karmicznej koali użyłem prostego skryptu init.d, aby uruchomić klienta ipv6
#! /bin/sh
/usr/local/gw6c/bin/gw6c -f /usr/local/gw6c/bin/gw6c.conf
Pomyślałem, że ponieważ działa to na dowolnym poziomie działania, powinno to zostać przetłumaczone
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
działa to dobrze rozpoczęte od initctrl, ale najwyraźniej nie uruchamia się po uruchomieniu. - jego status jest zatrzymany / czeka. Działa dobrze (i odradza się), gdy zaczyna się inaczej. Jakieś pomysły na to, gdzie popełniam błąd i jaki byłby odpowiedni argument na początku?
EDYCJA: dokładny błąd to „init: gw6c główny proces (xxx) zakończył się statusem 8”, po którym następuje odrodzenie procesu, przy czym xxx jest PID i podejrzewam. Podejrzewam też, że jest to spowodowane tym, że gw6c uruchamia się przed rozpoczęciem pracy w sieci i potrzebuję mojego eth0, zanim gw6c zostanie
źródło
Umieść skrypt rozpoczynający gw6c w
Wszystkie skrypty w tym folderze uruchamiane są po uruchomieniu interfejsu. Jeśli chcesz, aby działał tylko, gdy pojawi się eth0, edytuj wpis eth0 w
i dodaj wywołanie do skryptu
Sugerowałbym również dodanie skryptów wstępnego wyłączenia, aby zamknąć tunel, zanim interfejs przejdzie w tryb offline.
Gdy to zrobisz i znajdziesz implementację, która działa, opublikuj ją tutaj, aby móc jej użyć. Mam gw6c na swoim laptopie, ale do tej pory byłem zbyt leniwy, aby go zautomatyzować.
źródło
Dziękuję „The Geek Journeyman” :) Zaoszczędziłeś mi dużo czasu. Walczyłem ze skryptem /etc/init.d/gw6c, próbując mierzyć czas z „sysv-rc-conf -p” i zastanawiałem się, dlaczego to nie działa (inaczej WTF?).
Lekko zmodyfikowany skrypt („poziom pracy” i komenda exec) wykonał zadanie! :) :) :)
źródło
Stąd: http://upstart.ubuntu.com/cookbook/#single-job-instance-running-without-pid
źródło