Centos 6.8サーバーでは、テストユーザーからweblogic-serviceを起動し、テストユーザーではなくプロセス所有者がweblogicである必要があります。
また、nohupを使用してweblogicを起動し、次のようにバックグラウンドに配置する必要がありました。
#nohup ./startweblogic &
私がしたことは次のようになりました。
起動スクリプトを実行できるように、sudoersにテストユーザーを追加しました。
次のコマンドを実行しましたが、プロセス所有者はまだweblogicではありません。
#su -p -s /bin/sh weblogic "nohup /u01/Oracle/Middleware/user_projects/domains/base_domain/startWebLogic.sh &"
答え1
私はあなたが次のようにsudoersファイルを設定したと思います。
test ALL=(weblogic) NOPASSWD: /u01/Oracle/Middleware/user_projects/domains/base_domain/startWebLogic.sh
これによりtest
、ユーザーはweblogic
パスワードを要求せずにユーザーとしてコマンドを実行できます(NOPASSWD:
。
また、Weblogicをバックグラウンドで実行する予定の場合は、boot.propertiesの自動ログイン機能を有効にして、ユーザー/パスワードを要求しないようにすることをお勧めします。次の内容を含むファイル(必要に応じてセキュリティディレクトリの作成)をboot.properties
配置します。/u01/Oracle/Middleware/user_projects/domains/base_domain/servers/your_server_name/security
username=your_weblogic_username
password=your_weblogic_password
次にログインtest
して実行します。sudo -u weblogic nohup /u01/Oracle/Middleware/user_projects/domains/base_domain/startWebLogic.sh &
あなたは以下を得ます:
root 3133 0.0 0.1 37084 6208 pts/1 S 17:47 0:00 sudo -u weblogic nohup /u01/Oracle/Middleware/user_projects/domains/base_domain/startWebLogic.sh
weblogic 3134 0.0 0.0 7112 2912 pts/1 S 17:47 0:00 \_ /bin/sh /u01/Oracle/Middleware/user_projects/domains/base_domain/startWebLogic.sh
weblogic 3135 0.0 0.0 7252 3508 pts/1 S 17:47 0:00 \_ /bin/sh /u01/Oracle/Middleware/user_projects/domains/base_domain/bin/startWebLogic.sh
weblogic 3168 2.8 10.8 2606220 437004 pts/1 Sl 17:47 0:15 \_ /home/weblogic/jdk/bin/java -server -Xms256m -Xmx512m -Dweblogic.Name=AdminServer -Djava.security.policy=/u01/Oracle/wlserver/server/lib/weblogic.policy -Dweblogic.ProductionModeEnabled=true -Djava.system.class.loader=com.oracle.classloader.weblogic.LaunchClassLoader -javaagent:/u01/Oracle/wlserver/server/lib/debugpatch-agent.jar -da -Dwls.home=/u01/Oracle/Middleware/wlserver/server -Dweblogic.home=/u01/Oracle/Middleware/wlserver/server weblogic.Server
答え2
努力する:
su -p -s /bin/sh weblogic -c "nohup /u01/Oracle/Middleware/user_projects/domains/base_domain/startWebLogic.sh &"
コマンドの前に「-c」を記録し、引用符で囲みます。
また、「weblogic」ユーザーに現在のディレクトリに書き込む権限があることを確認してください。 「nohup」は、サーバーの出力を現在のディレクトリの「nohup.out」ファイルにリダイレクトするためです。