Назад | Перейти на главную страницу

Не удается запустить freeradius как услугу

У меня есть сервер radiusd на виртуальной машине, он уже настроен и работает, когда я запускаю "radiusd -X", также известный как режим отладки. Моя единственная проблема в том, что когда я пытаюсь запустить его как службу, он терпит неудачу ...

Вот ошибка, которую я получил в журналах,

«Сб, 28 июня, 17:51:12 2014: ошибка: сбой привязки к интерфейсу eth1: операция не разрешена, суббота, 28 июня, 17:51:12 2014: ошибка: /etc/raddb/radiusd.conf[240]: ошибка привязки к порту для порта 0.0.0.0 1812 "

Действительно, там говорится, что операция не разрешена, но я не знал, что Linux может вообще запретить привязку к интерфейсу ... Также порт (1812) не является привилегированным портом. Моя машина работает под управлением Scientific Linux 6.5 (вилка RHEL). Я уже пытался отключить selinux, но это не помогло. В любом случае я также отключил пользовательский переключатель в radiusd.conf, поэтому radiusd запускается как root, но у меня все еще есть эта операция, не разрешенная ошибка. Это снова странно, это только доказывает, что служба не запускает radiusd как root, но теперь "radiusd -X" и ps faux показывает мне, что radiusd работает как root. Почему тот простой факт, что я использую служебный файл, НЕ запускает его от имени пользователя root?

Вот функция запуска служебного файла.

start() {
 [ -x $exec ] || exit 5
 [ -f $config ] || exit 6
 echo -n $"Starting $prog: "

 daemon --pidfile $pidfile $exec -d $config_dir
 retval=$?
 echo
 [ $retval -eq 0 ] && touch $lockfile
 return $retval
 }

Любая помощь будет принята с благодарностью :) Спасибо.

РЕДАКТИРОВАТЬ: Я решил свою проблему, переписав файлы служб минимальным образом, но это все еще не лучший подход ...

  start() {
    echo "Starting radiusd"
    radiusd
    }

  stop() {
         echo "Stopping radiusd"
         killall radiusd
         echo "done"
          }