1

SSH 経由でジョブを実行するのに問題があります。一連のネットワーク化されたマシンがあり、すべてが同じホーム フォルダーにアクセスできます (実行可能ファイルがインストールされている場合)。あるマシンで作業しているときに、次のようなコマンドを使用して ssh 経由でコードを実行できるようにしたいと考えています。

ssh -q ExecutableDir/MyExecutable InputDir/MyInput

リモートでジョブを実行したいマシンのいずれかに ssh 接続し、次のコマンドを実行するだけです。

ExecutableDir/MyExecutable InputDir/MyInput

必ず実行されますが、SSH を実行すると、一部の共有ライブラリが見つからないというエラーが表示されます。誰もこの種のものに遭遇したことがありますか?

4

1 に答える 1

2

わかりました、私は自分でそれを理解しました。上記の方法でsshを介して物事を実行すると、「適切に」sshした場合のパス変数などを継承しないようです。これは、次を実行して確認できます。

ssh RemoteMachine printenv

そして、出力を、リモート マシンに接続されている場合に通常得られるものと比較します。私が行った解決策は、次のようなものを実行することでした:

ssh -q ExecutableDir/MyExecutable source ~/.bash_profile && InputDir/MyInput

次に、リモート マシンの bash_profile ファイルから必要なすべてのパスと情報を取得します。

于 2013-10-07T19:47:31.030 に答える