
OS: 라즈비안
한 번에 2개의 응용 프로그램을 실행하는 데 실패했습니다.rc.local
systemd로 앱을 시작하는 방법에 대한 간단한 예를 찾아야 합니다.
문제는 서버 시작에 대한 구체적인 예만 찾고 있으며 매우 복잡하다는 것입니다. 애플리케이션을 실행하는 간단한 시스템 파일을 작성하는 방법, 배치 위치 및 시작 방법을 이해하는 데 어려움을 겪습니다.
제가 실행하려고 하는 두 가지 앱은 다음 /home/pi/app1
과 같습니다./home/pi/app2
다음과 같은 명령줄을 실행하면 두 앱이 동시에 실행됩니다.
/home/pi/app1 & /home/pi/app2 &
그런데 왠지 rc.local에 같은 줄을 넣으면 첫 번째 앱만 실행되고,
또한 rc.local에서 데이터를 덤프할 수 없는 것 같습니다.
/home/pi/app1 & /home/pi/app2 &> /tmp/log
해당 /tmp/log 파일은 절대 생성되지 않습니다.
이것이 작동하지 않는 이유를 이해하지 못합니다. systemd를 사용하라는 제안을 받았지만 너무 많은 옵션으로 인해 불필요하게 복잡해졌습니다.
이러한 앱 중 하나를 실행하는 간단한 시스템 파일은 어떤 모습일까요?
저는 부팅 시 이 두 앱을 시작할 수 있는 안정적인 것을 원합니다. 그게 전부입니다.
감사해요
답변1
systemd 지지자들은 스크립트를 작성할 필요가 없기 때문에 systemd가 더 쉽다고 말할 것입니다.
systemd의 경우 아마도 두 개의 서비스가 필요할 것입니다. 하나는 for app1
이고 다른 하나는 app2
. /etc/systemd/system
예를 들어 다음 app1.service
을 사용하여 에 파일을 만듭니다 .
[Unit]
Description=app1 systemd service.
[Service]
Type=simple
ExecStart=/path/of/your/app/app1
[Install]
WantedBy=multi-user.target
부팅 시 활성화하려면 다음을 수행하십시오.
systemctl enable app1.service