
저는 Atlassian Bamboo를 사용하여 빌드 서버를 설정하고 있습니다. 사용할 AMI를 지정할 수 있는 "탄력적 이미지"를 사용할 수 있습니다(저는 Amazon Linux/CentOS 이미지를 사용하고 있습니다). 또한 본질적으로 서버를 "프로비저닝"하기 위한 스크립트를 추가할 수도 있습니다. 내 스크립트에서 빌드를 실행하면 sudo
다음과 같은 오류가 발생합니다.
We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:
#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.
sudo: no tty present and no askpass program specified
sudo: no tty present and no askpass program specified
sudo: no tty present and no askpass program specified
sudo: no tty present and no askpass program specified
을 사용하지 않을 때 sudo
권한 거부 오류가 발생합니다.
그만큼스크립트내가 실행하려고하는 것은 다음과 같이 간단합니다.
sudo yum install -y php-mysql
sudo yum install -y php-pdo
sudo yum install -y php-pecl-xdebug
sudo yum update
Bamboo는 키로 설정되므로 실제 비밀번호가 필요하지 않습니다(내가 아는 한 하나도 없어), 이는 tty 입력이 부족해도 문제가 되지 않는다는 의미입니다. 그렇죠?
서버가 지속적으로 가동되는 경우 SSH를 통해 sudo 권한을 활성화하는 방법을 알아낼 수 있지만 그렇지 않습니다. 서버가 생성되고 빌드가 실행된 다음 종료됩니다.
TL;DR;동적으로 회전된 EBS 지원 AMI가 허용되지 않는 원인은 무엇입니까 sudo
?
답변1
Bamboo는 키로 설정되어 있으므로 실제 비밀번호가 필요하지 않습니다(내가 아는 한 비밀번호가 없습니다). 즉, tty 입력이 부족해도 문제가 되지 않습니다. 그렇죠?
아뇨. 여기서 혼란스러워요. SSH에 인증하는 방법은 sudo와 관련이 없습니다. sudo가 비밀번호를 요구하도록 구성된 경우 사용자의 비밀번호를 입력해야 합니다. 그렇지 않으면 작동하지 않습니다. 사용자에게 비밀번호가 없으면 작동할 수 없습니다.
sudo를 재구성해야 할 것 같습니다.
- tty가 필요하지 않습니다
- 비밀번호가 필요하지 않습니다
예를 들어,대나무비밀번호 없이 모든 사용자가 명령을 실행할 수 있도록 하려면/etc/sudoers내가 가질 수 있는 파일
bamboo ALL=(ALL) NOPASSWD: ALL
답변2
문서에서 말했듯이, Atlassian에서 제공한 이미지가 원하는 대로 작동하지 않으면 다음을 수행해야 합니다.맞춤 이미지 만들기.
답변3
/etc/sudoers 파일이 올바르게 구성되었는지 확인하십시오. 어제 빌드 스크립트 중 하나가 /etc/sudoers 파일에서 변경한 내용을 덮어쓰면서 권한 문제가 발생했을 때 이 오류 메시지가 표시되었습니다.