이것은 내 boondocks-agent.service 파일입니다. 저는 /lib/systemd/system에 설치했습니다.
[Unit]
Description=Boondocks agent
Requires=\
balena.service
After=\
balena.service
[Service]
Type=simple
Restart=always
RestartSec=10s
WatchdogSec=60
EnvironmentFile=/etc/boondocks-agent/agent.conf
EnvironmentFile=-/tmp/boondocks-agent.conf
ExecStartPre=-/usr/bin/stop-boondocks-agent
ExecStart=/usr/bin/healthdog --healthcheck=/usr/lib/boondocks-agent/boondocks-agent-healthcheck /usr/bin/start-boondocks-agent
ExecStop=-/usr/bin/stop-boondocks-agent
[Install]
WantedBy=multi-user.target
시스템을 부팅할 때 부팅되지 않는 것 같습니다. 클린 부팅 후 표시되는 상태는 다음과 같습니다.
systemctl status boondocks-agent
boondocks-agent.service - Boondocks agent
Loaded: loaded (/lib/systemd/system/boondocks-agent.service; disabled; vendor preset: enabled)
Active: inactive (dead)
부팅 시 자동으로 시작되게 하려면 어떻게 해야 합니까?
답변1
당신은 말한다,
YOCTO에서 동등한 호출은
systemctl enable
다음과 같습니다:SYSTEMD_SERVICE_${PN} = " \ boondocks-agent.service "
나는 이것이 다음과 같다고 생각한다.설치하다제공하다. 기본적으로 서비스를 활성화하려면 다음을 추가해야 합니다.
SYSTEMD_AUTO_ENABLE_${PN} = "enable"
답변2
시작 시 활성화해야 합니다.
systemctl enable boondocks-agent
답변3
나는 같은 문제를 가지고있다. 서비스를 추가했고 부팅 시 타이머가 시작되기를 기대합니다. 내 타이머는 절대 시작되지 않지만 수동으로 시작하여 예상대로 영원히 실행되도록 할 수 있습니다. 내 Yocto 프로젝트가 타이머를 생성하고 시작하기 위해 다음을 추가했습니다.
SYSTEMD_SERVICE_${PN} = " logrotate.service logrotate.timer"
답변4
최근 Yocto 프로젝트를 개발하는 동안 동일한 문제가 발생했습니다. 나는 Yocto 레시피에 다음 줄을 명시적으로 지정했습니다:
SYSTEMD_SERVICE:${PN} = "test.service"
SYSTEMD_AUTO_ENABLE:${PN} = "enable"
그러나 이것은 내 레시피가 systemd에서 명시적으로 상속되도록 해야 한다는 것을 깨닫기 전까지는 작동하지 않았습니다. 내 레시피에 다음 줄을 추가하면 됩니다.
inherit systemd