리눅스
[hadoop][python][linux] sudo: no tty present and no askpass program specified 오류 처리하기
hs_seo
2016. 10. 5. 13:42
하둡을 이용하여 파이썬 프로그램을 실행하던중
로컬에서는 실행이 되는데, MR을 이용하여 실행하면 다음과 같은 오류가 발생하는
경우가 있다.
<실행명령>
os.system("sudo apt-get -y install python-pip")
<오류>
sudo: no tty present and no askpass program specified
로컬에서 바로 실행을 하면 sudo 명령을 사용할 수 있는데,
mr 을이용하면 사용이 불가능하다.
이는 mr을 이용하여 실행하면, 프로그램을 실행하는 노드로 ssh를 이용하여 접속을 하고
해당 프로그램을 실행시키는데 이때 mr은 yarn 계정으로 접근을 하고 이 yarn 계정은
sudo 실행 권한이 없기 때문이다.
이 문제를 해결하기 위해서는 하둡시스템의 모든 노드의 yarn 계정의 권한에
sudo 를 패스워드 없이 사용할 수 있도록 수정을 하던지
sudo 권한을 이용하는 부분을 제거해야 한다.
sudo 권한의 수정은 /etc/sudoers 파일을 수정하여 처리한다.
http://qiita.com/gozuqi/items/6ebb2e6a4d49dfeb080f
http://askubuntu.com/questions/281742/sudo-no-tty-present-and-no-askpass-program-specified
반응형