1

コマンド オプション puppet を指定してコマンドeval `ssh-agent -sを実行しようとする と、次のエラーが表示されます。

exec { 'eval' :
        command => "eval `ssh-agent -s`",
     }

このエラーが表示されます:

Error: Validation of Exec[eval] failed: 'eval `ssh-agent -s`' is not qualified and no path was specified. Please qualify the command or specify a path. at /puppet.pp:18
    Wrapped exception:
'eval `ssh-agent -s`' is not qualified and no path was specified. Please qualify the command or specify a path.
4

3 に答える 3

0

完全修飾パスを使用する必要があります。

たとえば、次のいずれかです。

exec { "sample":
  command => "/usr/bin/test",
}

また:

exec { "sample":
  path    => ['/usr/bin', '/usr/sbin', '/bin'],
  command => "test",
}
于 2015-04-06T19:04:58.187 に答える
-1

あなたのアプローチには欠陥があります。

execリソースを介してコマンドを実行して Puppet エージェントの環境を操作することはできません。そのような各リソースは、独立したサブプロセスをフォークし、メイン環境は不変のままです。

更新: Puppet を で実行できるようにする最善の方法はssh-agent、Puppet エージェントの起動方法によって異なります。たとえば、 を使用する場合/etc/init.d/puppet start、この init スクリプトを変更して、Puppet プロセスをssh-agent直接ラップする必要があります。から実行する場合はcron、ジョブを runssh-agentなどに変更します。

于 2015-02-15T17:04:09.760 に答える