[英]Since Linux command cd could not be used as external command, is it possible to write my version of cd (which is not a shell-builtin command)?
[英]Puppet Could not find command 'cd'
嗨,我的這部分代碼導致錯誤。
path => '/bin:/sbin/:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin',
cwd => "/var/rapid7installer && unzip ${install_file}",
creates => '/var/rapid7installer/agent_installer.sh',
timeout => $timeout,
require => [
Package['unzip'],
File["/var/rapid7installer/${install_file}"],
],
}->
這是我得到的錯誤。
Error: /Stage[main]/Profiles::Rapid7agent/Exec[Rapid7 Agent Installation Unzip]/returns: change from 'notrun' to ['0'] failed: Could not find command 'cd'
我希望有人可以幫助我或為我指明正確的方向。 感謝您的關注和您的時間。
問題中提供的片段是一個不完整的單元,但它似乎是Exec
資源聲明的一部分。 在這種情況下, cwd
屬性肯定是不正確的:
cwd => "/var/rapid7installer && unzip ${install_file}",
,並且它可能直接對您觀察到的問題負責。 該屬性的值應該是一個目錄的名稱,該目錄應該是執行 exec 命令期間的工作目錄。 從上下文來看,這似乎應該只是第一部分/var/rapid7installer
。 要執行的實際命令必須通過command
屬性傳達,如果未明確給出,則默認為資源標題。
因此,您似乎想要更像這樣的東西:
exec { 'Rapid7 Agent Installation Unzip':
command => "unzip ${install_file}",
path => '/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin',
cwd => '/var/rapid7installer',
creates => '/var/rapid7installer/agent_installer.sh',
timeout => $timeout,
require => [
Package['unzip'],
File["/var/rapid7installer/${install_file}"],
],
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.