그룹이 CentOS의 특정 디렉터리 아래에 있는 모든 파일을 실행하도록 허용

그룹이 CentOS의 특정 디렉터리 아래에 있는 모든 파일을 실행하도록 허용

Capistrano를 사용하여 Rails 앱의 자동 배포를 설정하려고 합니다. Capistrano는 를 실행해야 하며 , 파일을 편집하여(물론 를 통해 ) sudo kill비밀번호를 묻지 않고 다음 줄을 추가하여 이를 달성했습니다./etc/sudoersvisudo

%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 bundlesudo는 여전히 비밀번호를 묻습니다. RVM은 디렉터리 이름에 버전 번호를 사용하므로 /etc/sudoers. sudoers 파일을 편집하여 작동하게 만드는 방법에 대한 아이디어가 있습니까?

감사해요!

답변1

rvm이 어떻게든 활성 Ruby 인스턴스에 연결됩니까? 즉, /home/peddiemarketdeploy/.rvm/gems/$active활성 버전이 무엇이든 가리키는 일종의 심볼릭 링크가 있습니까 ? 그렇다면 sudo를 허용하십시오 /home/peddiemarketdeploy/.rvm/gems/$active/bin/bundle. 그렇지 않으면 래퍼 스크립트를 작성합니다(셸이 아니라또는파이썬) 올바른 버전을 선택하고 사람들이 sudo를 사용하여 실행할 수 있도록 합니다.

관련 정보