Як увімкнути системне миттєве обслуговування з лялькою?


9

У мене є така лялечна служба:

service { "getty@ttyUSB0.service": 
    provider => systemd,
    ensure => running,
    enable => true,
}

Коли я намагаюся застосувати цю конфігурацію на своєму клієнті, вона видає таку помилку:

помилка: /Stage evidencemainSense//Node evidencepuppetclientSense/Service evidencegetty@ttyUSB0.serviceSense/enable: зміна з false на true не вдалося: Не вдалося включити getty@ttyUSB0.service:

Служба працює нормально, і я можу переконатися, що вона запущена під час завантаження системи, додавши символьне посилання на getty.target.wants:

ln -s /lib/systemd/system/getty@.service /etc/systemd/system/getty.target.wants/getty@ttyUSB0.service

З джерела, я міг би йти вперед і видалити "enable => true" з визначення служби та включити симпосилання вручну в лялечну конфігурацію, але чи не повинен маріонетка подбати про це? Чи роблю я щось страшенно неправильне?

Відповіді:


6

Сьогодні системний постачальник Puppet використовує лише дві команди для стану обслуговування enable:

  • systemctl is-enabled <unit>, перевірка коду повернення на поточний стан включення
  • systemctl enable/disable <unit> щоб змінити його

Команда enable вмикає помилку, коли ви вмикаєте примірник служби getty @, який ще не існує:

$ sudo systemctl enable getty@ttyUSB0.service
Failed to issue method call: No such file or directory

Потім це викликає помилку, показану на Ляльці (хоча здається, що stderr не відображається).

Мені це здається розривом у systemd, що ви не можете ввімкнути нові екземпляри шаблону. У Fedora вже є BZ # 752774 , але коментарі дозволяють не скоро додати його.

Можливо, вам буде краще подати запит на функцію проти Puppet, щоб додати підтримку спеціально для включення нових екземплярів. У вашому запиті на функцію я пропоную посилання на пояснення Леннарта щодо одиниць екземплярів для фону.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.