2013-03-17 1 views
1

Я пытался интегрировать Plone с запуском на основе systemctl (на OpenSUSE 12.3)Plone и systemctl

В качестве первой попытки у меня есть очень простой plone.service файл

[Unit] 
Description=Plone content management system 
After=network.target 

[Service] 
Type=simple 
ExecStart=/srv/plone/zeocluster/bin/plonectl start 

[Install] 
WantedBy=multi-user.target 

Проверка состояния с systemclt Plone Я вижу, что процессы начинаются, но они немедленно исчезают снова. Я также попробовал Type = Daemon, но endresult тот же. Любые подсказки были моей ошибкой?

Служба фактически находит/успешно выполняет сценарий plonectl, только процессы, быстро погибают

linux-wezo:/etc/systemd/system # systemctl start plone.service 
linux-wezo:/etc/systemd/system # systemctl status plone.service 
plone.service - Plone content management system 
      Loaded: loaded (/etc/systemd/system/plone.service; disabled) 
      Active: inactive (dead) since Mon, 2013-03-18 22:00:50 CET; 1s ago 
     Process: 25494 ExecStart=/srv/plone/zeocluster/bin/plonectl start (code=exited, status=0/SUCCESS) 
      CGroup: name=systemd:/system/plone.service 

Mar 18 22:00:42 linux-wezo.site systemd[1]: Starting Plone content management system... 
Mar 18 22:00:42 linux-wezo.site systemd[1]: Started Plone content management system. 
Mar 18 22:00:43 linux-wezo.site plonectl[25494]: zeoserver: . 
Mar 18 22:00:43 linux-wezo.site plonectl[25494]: daemon process started, pid=25502 
Mar 18 22:00:46 linux-wezo.site plonectl[25494]: client1: . 
Mar 18 22:00:46 linux-wezo.site plonectl[25494]: daemon process started, pid=25507 
Mar 18 22:00:49 linux-wezo.site plonectl[25494]: client2: . 
Mar 18 22:00:49 linux-wezo.site plonectl[25494]: daemon process started, pid=25522 

У меня есть сценарий инициализации SysV стиль, который работает через systemctl, но думаю, что это было бы здорово иметь так как это должно быть более общим, чем различные скрипты инициализации, плавающие вокруг.

+0

Этот вопрос более подходит для superuser.com. – rhashimoto

+0

Вы начинаете как zeoserver, так и zeoclient (s)? – tcurvelo

+0

Мое первое подозрение в том, что ваша проблема связана с разрешениями/удостоверениями. Вы не указали идентификатор пользователя для работы службы. Это может сработать, если вы установили явный идентификатор в своей конфигурации plone. Если вы этого не сделали, попытка запустить с правами root не удастся. Проверьте свои журналы событий для подсказок. Кроме того, посмотрите, есть ли у вас пакет для супервизора (иногда называемый supervisord или python-supervisor). Установка и использование его для управления вашими процессами plone - это прочная стратегия запуска. – SteveM

ответ

0

Проблема в том, что программа plonectl не является демоном, это сценарий оболочки, который запускает Zope. Вам нужно изменить тип на forking и, возможно, сообщить systemd, где найти PID-файл.

 Смежные вопросы

  • Нет связанных вопросов^_^