允许一个组在CentOS中的某个目录下运行所有​​文件

我正在尝试使用Capistrano为我的Rails应用程序设置自动部署。 Capistrano将需要运行sudo kill ,并且通过编辑/etc/sudoers文件(当然是通过visudo ),在没有它的情况下要求input密码,然后添加以下行:

 %deployers ALL= NOPASSWD: /bin/kill 

但是,由于我使用RVM单用户设置, bundle可执行文件位于/home/peddiemarketdeploy/.rvm/gems/ruby-1.9.3-p194/bin/bundle ,因此,同样,我添加

 %deployers ALL= NOPASSWD: /home/peddiemarketdeploy/.rvm/gems/* 

在那个文件中,并尝试运行sudo bundle ,但sudo仍然要求我input密码。 由于RVM以目录名称使用版本号,所以我不想将path硬编码到/etc/sudoers 。 任何想法如何编辑我的sudoers文件,使其工作?

谢谢!

rvm以某种方式链接到活跃的ruby实例? 也就是说,是否有某种称为/home/peddiemarketdeploy/.rvm/gems/$active的符号链接指向任何活动版本? 如果是这样,则允许sudo用于/home/peddiemarketdeploy/.rvm/gems/$active/bin/bundle 。 否则,编写一个包装脚本(不是在shell中,而是在perl或python中 )来select正确的版本,并允许用户使用sudo来运行它。