Форум русскоязычного сообщества Ubuntu


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: 3proxy два демона запускается при загрузке.  (Прочитано 2356 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Gedeonodn

  • Автор темы
  • Новичок
  • *
  • Сообщений: 2
    • Просмотр профиля
Всем доброго дня.

Столкнулся с проблемой, которую не знаю как решить.

Установил 3proxy. Все работает при запуске руками

ps ax | grep 3proxy
 1110 ?        Ssl    0:00 /usr/local/3proxy/3proxy /usr/local/3proxy/3proxy.cfg

проксик работает, все отлично.

добавляю старт демона.

#!/bin/sh
#
# chkconfig: 2345 20 80
# description: 3proxy tiny proxy server
#
#
#
#

case "$1" in
   start)
       echo Starting 3Proxy

       /usr/local/3proxy/3proxy /usr/local/3proxy/3proxy.cfg

       RETVAL=$?
       echo
       [ $RETVAL ]
       ;;

   stop)
       echo Stopping 3Proxy
       if [ /usr/local/3proxy/3proxy.pid ]; then
               /bin/kill `cat /usr/local/3proxy/3proxy.pid`
       else
               /usr/bin/killall 3proxy
       fi

       RETVAL=$?
       echo
       [ $RETVAL ]
       ;;

   restart|reload)
       echo Reloading 3Proxy
       if [ /usr/local/3proxy/3proxy.pid ]; then
               /bin/kill -s USR1 `cat /usr/local/3proxy/3proxy.pid`
       else
               /usr/bin/killall -s USR1 3proxy
       fi
       ;;


   *)
       echo Usage: $0 "{start|stop|restart}"
       exit 1
esac
exit 0

sudo update-rc.d 3proxy defaults

перегружаю сервер.
Прокси работает, пид-файл лежит на месте с кодом 716

Но!

ps ax | grep 3proxy

  709 ?        Ssl    0:00 /usr/local/3proxy/3proxy /usr/local/3proxy/3proxy.cfg
  716 ?        Ssl    0:00 /usr/local/3proxy/3proxy /usr/local/3proxy/3proxy.cfg

Почему их 2? Если удалить из автозапуска не запускается ни 1, добавляю, снова 2.

Подскажите что хоть думать?

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28377
    • Просмотр профиля
Ты даже не проверяешь перед запуском демона, запущен ли у тебя он уже или где.
Отсюда и два. (Странно, что не три...)
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн Gedeonodn

  • Автор темы
  • Новичок
  • *
  • Сообщений: 2
    • Просмотр профиля
Я взял скрипт из дистра 3proxy. Раз не проверяют, думал правильно. Ок.

Пользователь решил продолжить мысль 06 Июня 2010, 23:50:48:
И все же я не пойму. Почему происходит 2 запуска, практически 1 за другим, это видно по кодам демонов.
В логе тоже 2 записи

alex@ubuntu:~$ cat /var/log/boot.log | grep 3proxy
Starting 3proxy
Starting 3proxy
alex@ubuntu:~$

судя по этому сам скрипт нормальный... Что все таки заставляет Ubuntu дважды вызывать его?
« Последнее редактирование: 06 Июня 2010, 23:50:48 от Gedeonodn »

Оффлайн barmalej

  • Новичок
  • *
  • Сообщений: 5
    • Просмотр профиля
Ты даже не проверяешь перед запуском демона, запущен ли у тебя он уже или где.
Отсюда и два. (Странно, что не три...)
А как сделать проверку в скрипте???

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28377
    • Просмотр профиля
Ловить PID при запуске и проверять наличие процесса в памяти.
Вариантов много, какой будет верен - спроси на 3proxy.ru
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн Mam(O)n

  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Это нормально, просто 3proxy форкается, от этого и появляется второй процесс. Он бы второй раз всеравно бы не запустился, т.к. порт слушающий  был бы занят первым.

В логе тоже 2 записи
А как по времени? Может это от другой перезагрузки...

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28377
    • Просмотр профиля
Это нормально, просто 3proxy форкается, от этого и появляется второй процесс. Он бы второй раз всеравно бы не запустился, т.к. порт слушающий  был бы занят первым.

Он запускается в любом случае, просто занятые порты не будет обслуживать.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн Mam(O)n

  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Ну может быть, не спорю.

ТС, для уточнения дай вывод ps -eo "%p %P %a" | grep 3proxy

 

Страница сгенерирована за 0.05 секунд. Запросов: 23.