После чистой установки Fedora 17 и distcc-server
, я выполнил service distccd start
, который завершился успешно.
man service
указывает, что он просто запустит скрипт distccd
в /etc/init.d/distccd
, но этот файл не существует. chkconfig
также, похоже, не знает о distccd
, что подтверждается отсутствием связанных файлов в /etc/rc[0-6].d
. Естьделаетсуществует файл /etc/sysconfig/distccd
, содержащий параметры запуска демона distcc, но я не могу найти service
на /etc/sysconfig
него ссылку.
Откуда он service
знает, что делать, когда я печатаю service distccd start
?
Кроме того, я узнал, что Fedora 17 может перенаправлять service
на systemd
/ systemctl
. Даже если это так, я все равно не нахожу никаких distccd
связанных файлов в /etc/systemd/{system,user}
.
решение1
/etc/systemd
для определяемых пользователем служб. Местоположение по умолчанию для определяемых системой служб — /lib/systemd/system/
. Вы можете перезаписать определяемые системой службы в /etc/systemd
.
Для получения дополнительной информации о systemd посетитеСтраница Fedora Wiki для systemdили посмотрите насистемная документация
решение2
Насколько мне известно, service
полагается на наличие сценария инициализации в /etc/init.d
.
distccd, возможно, не был упакован со скриптом инициализации. Попробуйте следующее, чтобы запустить службу как демон:
distccd --daemon
Если это сработает, вы можете создать свой собственный скрипт, /etc/init.d/distccd
который будет запускать указанную выше команду, и тогда вы сможете обращаться с ним как с системной службой с помощью service distccd start
. Использовать /etc/init.d/skeleton
как шаблон.