
특정 사용자를 대상으로 프로세스를 실행하고 싶습니다.
RHEL 7에서는 다음을 통해 이를 수행할 수 있습니다.
source /etc/rc.d/init.d/functions
daemon --user=myuser $JAVA_HOME/bin/java -cp $appClassPath $MAIN_CLASS
SLES12에서 동일한 동작을 달성하려면 어떻게 해야 합니까? /etc/rc.d/init.d/functions
SLES12에서는 기본적으로 사용할 수 없습니다 .
답변1
SUSE는 LSB start_daemon을 사용하기를 원합니다. (https://en.opensuse.org/openSUSE:Packaging_init_scripts).
하지만 시스템화된 시대에도 계속될지, 아니면 단계적으로 폐지될지는 확실하지 않습니다.
물론 systemd 시스템에서 권장되는 방법은 systemd 장치를 만드는 것입니다.
그렇지 않으면 해당 명령줄을 실행할 수 있는 권한이 있는 모든 사용자로 호출할 수 있는 편리한 sudo 또는 같은 runuser
기본 도구를 사용하세요 . 이러한 래퍼 내에서 프로그램을 배경화하고 분리합니다(또는 실행). 아마도 nohup의 도움으로 가능합니다. 이는 표준을 더 준수하며 더 이상 사용되지 않는 init-system 인프라와 결합되지 않습니다.su