rhel 7.6에서 다음 스크립트를 만듭니다.
/home/run_tasks
Visudo에서 우리는 구성했습니다.
%sudo ALL=(ALL:ALL) ALL
root ALL=(ALL) ALL
hdfs ALL = (ALL) ALL
hdfs ALL= (root) NOPASSWD: /home/run_tasks
그리고
ls -ltr /home/run_tasks
-rwxrwxrwx 1 hdfs hdfs 6377 Sep 11 2019 /home/run_tasks
그래서 우리가 스크립트를 실행할 때
su hdfs -c "sudo /home/run_tasks"
우리는 얻었다
sudo: sorry, you must have a tty to run sudo
다음 줄을 표시한 후(visudo에서)
#Defaults requiretty
#Defaults !visiblepw
우리는 얻었다
su hdfs -c "sudo /home/run_tasks"
ls: Permission denied: user=root, access=EXECUTE, inode="/../../..":hdfs:hdfs:drwxr-x---
ls: Permission denied: user=root, access=EXECUTE, inode="/../../..":hdfs:hdfs:drwxr-x---