SSH(RHEL 8)を介してリモートサーバーでスクリプトを実行すると、環境変数はロードされません。

SSH(RHEL 8)を介してリモートサーバーでスクリプトを実行すると、環境変数はロードされません。

ベンダースクリプトがあります(起動ファイル)Linuxシステムでアプリケーションサービスを起動します。ログインサーバーを介して手動で呼び出されるスクリプト(例:sudo su - ユーザー ID) すべての環境変数を有効にします。スクリプトには、すべての変数をロードするための次のコマンドラインがあります。

env > tomcat_envvars.txt

メインサーバーからすべてのアプリケーションサーバーにSSHを介して同じスクリプトを呼び出す新しいスクリプト(ksh)を作成しました(起動ファイル)。以下は、SSHを介して各アプリケーションサーバーに接続してスクリプトを呼び出すシェルスクリプトの断片です。

新しいスクリプトでサービスを開始できますが、アプリケーション操作が失敗するため、すべての環境変数は初期化されません。

service_status=$(ssh -T <app server name> <<-EOF >/dev/null 2>&1
                <absolute path of startup.sh>
                EOF
                )

問題はsshを呼び出す方法にあるか、起動ファイルに関連している可能性があります(.bash_config ファイル)ユーザー、ユーザーID

問題の原因を明確にして解決してください。

ベストアンサー1

おすすめ記事