SLES12:如何使用特定使用者運行進程?

SLES12:如何使用特定使用者運行進程?

我想與特定用戶運行一個進程。

在 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/functionsSLES12 上不提供開箱即用的功能。

答案1

SUSE 希望您使用 LSB start_daemon。 (https://en.opensuse.org/openSUSE:Packaging_init_scripts)。
但我不確定它是否會在 systemd 時代繼續存在或即將被淘汰。
當然,在 systemd 系統中建議的方法是建立一個 systemd 單元...

否則,請使用預設工具,例如runusersu甚至 sudo ,它的便利之處在於您可以以有權運行該命令行的任何使用者身份呼叫它。
後台並分離這些包裝器中的程式(或執行它)。可能需要 nohup 的幫助。
這更符合標準,並且不與已棄用的初始化系統基礎設施耦合。

相關內容