Raspberry Pi 4용 Qt 응용 프로그램 또는 다른 응용 프로그램을 만든 경우 응용 프로그램이 완료된 후 Raspberry를 다시 시작한 직후 응용 프로그램을 호출하려는 경우가 많습니다.
이것은 종종 다양한 위치에 입력할 수 있는 시작 스크립트로 시도됩니다.
그러나 systemd 를 통해 설정하는 것이 더 합리적입니다. Raspberry Pi 4의 Qt 에 설명된 대로 raspbian-buster-lite 이미지와 Qt 설치를 시작점으로 사용했습니다.
Qt 응용 프로그램은 "/home/pi/application" 디렉토리에 있으며 이 예에서는 이름이 "application_one"입니다.

.service 파일 만들기

가장 먼저 할 일은 "/etc/systemd/system" 디렉터리에 .service 파일을 만드는 것입니다.

sudo nano application_one.service

이제 다음이 여기에 입력됩니다.

[Unit]
Description=Qt application autostart
After=graphical.target
After=network-online.target
Wants=network-online.target

[Service]
Type=simple
User=pi
WorkingDirectory=/home/pi/application
ExecStart=/home/pi/application/application_one

[Install]
WantedBy=multi-user.target

항목은 실제로 자명합니다. 응용 프로그램 "application_one"(ExecStart=/home/pi/application/application_one)는 사용자 계정 "pi"(User=pi)로 시작됩니다. "After=network-online.target" 항목에는 네트워크 연결이 설정될 때까지 응용 프로그램이 시작되었다고 계속 표시됩니다.

</:code2:></:code1:>

서비스를 시스템에 알립니다.

그런 다음 새 서비스가 활성화되어야 함을 시스템에 알려야 합니다.

sudo systemctl enable application_one.service

그런 다음 재부팅을 수행하면 응용 프로그램이 자동으로 시작됩니다.

</:code3:>

응용 프로그램이 시작되지 않습니까?

응용 프로그램이 자동으로 시작되지 않으면 다음을 사용하여 로그인 할 수 있습니다.

sudo systemctl status application_one.service

상태를 표시하고 정보를 사용하여 문제를 해결합니다. </:code4:>

Walter Prechtl

Walter Prechtl

업데이트된 날짜: 08. 3월 2024
읽기 시간: 2 minutes