Перейти до

Скрипт в init.d для Gentoo


Рекомендованные сообщения

Всем привет с Камчатки!

 

Хочу поблагодорить создателей программы stargazer! На мой взгляд одна из лучших програм для подсчета трафика для *NIX, очень удобная и простая. Надеюсь что и в дальнейшем не разочаруюсь в ней.

 

А вопрос мой такой:

У меня дистрибутив Gentoo и при запуске скрипта в /etc/init.d/stargazer выводит

/etc/init.d/stargazer: line 8: /etc/init.d/functions: No such file or directory

/etc/init.d/stargazer: line 11: /etc/sysconfig/network: No such file or directory

/etc/init.d/stargazer: line 18: [: =: unary operator expected

Starting stargazer: /etc/init.d/stargazer: line 30: daemon: command not found

 

как я понимаю это из-за того что у меня нету файлов /etc/init.d/functions и /etc/sysconfig/network

 

подскажите как мне переделать скрипт /etc/init.d/stargazer или может создать файлы которых не хватает и что в них прописать?

Ссылка на сообщение
Поделиться на других сайтах

Честно говоря, я никогда не вмдел Gentoo, поэтому не знаю как там устроен запуск программ, но думаю, проще всего вписать stg в /etc/rc.d/rc.local

Ссылка на сообщение
Поделиться на других сайтах

Ого.... Ещё один земляк. Я тоже с Камчатки.

Представь, нас здесь уже около десятка =))

 

По теме:

Скрипт можно сделать примитивный:

#!/bin/sh
case "$1" in
start)
stargazer
;;
stop)
killall stargazer
;;
*)
echo "Usage: $0 (start|stop)"
esac

Засунуть его куда хочешь и запускать:

имя_скрипта start

=))

Ссылка на сообщение
Поделиться на других сайтах

Дааа Камчадалы вездесущи :)

А от каких прав он будет запускаться? и все-таки хотелось бы сделать стандартный скрипт... (с ним надежней) и еще вопросик у меня расхождение по количеству трафика между stargazer и iptables (в iptables показывает 240 байт а в stargazer 230 байт) в кто обманывает?

Ссылка на сообщение
Поделиться на других сайтах

никто никого не обманывает :)

 

вот сейчас вышел билд с поправленной системой подсчета, система не пропустит ни одного пакета ...

 

скоро напишем совместно с автором инструкции по переводу на новую систему подсчета

Ссылка на сообщение
Поделиться на других сайтах

я перешол на новую версию но там все так же, мне кажеться он не учитывает какойто кусок пакета (в этом я не селен :) ), хотя я не пробовал новую библиотку libipq

 

МОЖЕТ КТО СКИНЕТ ЧТО НАПИСАНО В /etc/init.d/functions и /etc/sysconfig/network

Ссылка на сообщение
Поделиться на других сайтах

cat /etc/init.d/stargazer

#!/sbin/runscript

 

depend() (

need net

)

 

prog="stargazer"

 

start() {

ebegin "Starting $prog: "

start-stop-daemon --start --exec /sbin/stargazer --pidfile /var/run/stargazer.pid

/etc/stargazer/last 2> /dev/null

eend $?

}

 

stop() {

ebegin "Shutting down $prog: "

start-stop-daemon --quiet --stop --pidfile /var/run/stargazer.pid

}

Ссылка на сообщение
Поделиться на других сайтах

видишь что пишет ?

 

ERROR: "/etc/init.d/stargazer" has syntax errors in it;

 

дословно

ОШИБКА: "/etc/init.d/stargazer" синтаксическая ошибка в это скрипте;

 

ищи что в нем неправильно

 

посмотри есть ли команда start-stop-daemon, есть ли такой шел интересный #!/sbin/runscript

 

и еще

надеюсь ты скопировал не полностью скрипт, а без 1 строки

т. е. в итоге скрипт должен быть таким:

 

#!/sbin/runscript

 

depend() (

need net

)

 

prog="stargazer"

 

start() {

ebegin "Starting $prog: "

start-stop-daemon --start --exec /sbin/stargazer --pidfile /var/run/stargazer.pid

/etc/stargazer/last 2> /dev/null

eend $?

}

 

stop() {

ebegin "Shutting down $prog: "

start-stop-daemon --quiet --stop --pidfile /var/run/stargazer.pid

}

Ссылка на сообщение
Поделиться на других сайтах

Думаю проще сделать такой скрипт

#!/bin/sh
case "$1" in
start)
stargazer
;;
stop)
killall stargazer
;;
kill)
killall -9 stargazer
;;
*)
echo "Usage: $0 (start|stop|kill)"
;;
esac

И нии..ать себе мозги =)) Т.к. этот скрипт достаточно универсален.

 

P.S. На форуме есть распечатка моего "рабочего" скрипта.

Так вот, если ошибка с зависанием сервера устранена, может успешно применяться и тот и этот скрипт.

Ссылка на сообщение
Поделиться на других сайтах

Всем кто откликнулся спосибо за помощь, я сделал вот так :

#!/sbin/runscript

 

depend() {

need net

}

 

start() {

ebegin "Starting stargazer"

start-stop-daemon --start --exec /sbin/stargazer

eend $?

}

 

stop() {

ebegin "Stopping stargazer"

start-stop-daemon --quiet --stop --exec /sbin/stargazer

eend $?

}

Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Вхід

Уже зарегистрированы? Войдите здесь.

Войти сейчас
  • Зараз на сторінці   0 користувачів

    Немає користувачів, що переглядають цю сторінку.

×
×
  • Створити нове...