Bij het opstarten wil ik dit script uitvoeren:
Het script staat in /etc/init.d/worker met een symbolic link vanuit /etc/rc2.d/worker
Als root kan ik het script uitvoeren en doet het wat ik wil, maar als de server opstart doet het niets. In /var/log/sys.log kan ik niks vinden.
Ik dacht dat het er aan lag dat linux per se wil dat ik het script zich 'als' service gedraagt, dus heb ik het script als volgt omgeschreven aan de hand van een werkend script:
Dit script doet helemaal niks, waarschijnlijk omdat er een syntax-fout in zit. Ik denk hier, maar weet eigenlijk niet hoe ik het anders moet doen...:
Anyhow, eigenlijk wil ik helemaal geen service starten, maar gewoon eenmalig een commando uitvoeren
. Ik hoopte het met het service script mijn probleem op te lossen, maar wat mij betreft is het een overkill; ik hoef helemaal geen service
, gewoon eenmalig een commando uitvoeren
Ik vraag me het volgende af:
1. Zit ik op de goede weg en kan ik in linux tijdens het opstarten een commando uitvoeren of moet ik altijd een service aanmaken?
2. Als ik op de goede weg zit, hoe kan ik dan makkelijk dit soort problemen 'debuggen'? In /var/log/sys.log kan ik niets vinden. Dat leek me juist de plek om foutmeldingen te vinden.
3. Ik heb het gevoel dat mijn probleem best simpel is, maar weet niet zo goed waar ik info kan vinden (in welke richting het moet zoeken). Kan iemand mij vertellen waar ik meer uitleg hierover kan vinden?
code:
1
2
| #! /bin/sh god -c /rails/scrapers_v1/current/config/development.god |
Het script staat in /etc/init.d/worker met een symbolic link vanuit /etc/rc2.d/worker
Als root kan ik het script uitvoeren en doet het wat ik wil, maar als de server opstart doet het niets. In /var/log/sys.log kan ik niks vinden.
Ik dacht dat het er aan lag dat linux per se wil dat ik het script zich 'als' service gedraagt, dus heb ik het script als volgt omgeschreven aan de hand van een werkend script:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
| #! /bin/sh ### BEGIN INIT INFO # Provides: scraper_workers # Required-Start: $syslog $remote_fs # Required-Stop: $syslog $remote_fs # Should-Start: $local_fs # Should-Stop: $local_fs # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: scraper_workers # Description: scraper_workers ### END INIT INFO PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin DAEMON=/usr/local/bin/god DAEMON_ARGS=-c /rails/scrapers_v1/current/config/development.god NAME=scraper_workers DESC=scraper_workers PIDFILE=/var/run/scraper_workers.pid test -x $DAEMON || exit 0 test -x $DAEMONBOOTSTRAP || exit 0 set -e echo $DAEMON_ARGS case "$1" in start) echo -n "Starting $DESC: " touch $PIDFILE chown scraper_workers:scraper_workers $PIDFILE if start-stop-daemon --start --quiet --umask 007 --pidfile $PIDFILE --chuid scraper_workers:scraper_workers --exec $DAEMON -- $DAEMON_ARGS then echo "$NAME." else echo "failed" fi ;; stop) echo -n "Stopping $DESC: " if start-stop-daemon --stop --retry 10 --quiet --oknodo --pidfile $PIDFILE --exec $DAEMON then echo "$NAME." else echo "failed" fi rm -f $PIDFILE ;; restart|force-reload) ${0} stop ${0} start ;; *) echo "Usage: /etc/init.d/$NAME {start|stop|restart|force-reload}" >&2 exit 1 ;; esac exit 0 |
Dit script doet helemaal niks, waarschijnlijk omdat er een syntax-fout in zit. Ik denk hier, maar weet eigenlijk niet hoe ik het anders moet doen...:
code:
1
| DAEMON_ARGS=-c /rails/scrapers_v1/current/config/development.god |
Anyhow, eigenlijk wil ik helemaal geen service starten, maar gewoon eenmalig een commando uitvoeren
Ik vraag me het volgende af:
1. Zit ik op de goede weg en kan ik in linux tijdens het opstarten een commando uitvoeren of moet ik altijd een service aanmaken?
2. Als ik op de goede weg zit, hoe kan ik dan makkelijk dit soort problemen 'debuggen'? In /var/log/sys.log kan ik niets vinden. Dat leek me juist de plek om foutmeldingen te vinden.
3. Ik heb het gevoel dat mijn probleem best simpel is, maar weet niet zo goed waar ik info kan vinden (in welke richting het moet zoeken). Kan iemand mij vertellen waar ik meer uitleg hierover kan vinden?