내가이 질문을 연구하고 모든 대답은 visudo를 추가하는 것이 좋습니다 "애띠이 있어야합니다 표준"실패!"SU <otheruser>는"
두 개의 Linux 상자 (RedHat)가 있습니다. ProcessBuilder/Process를 사용하여 명령을 실행하는 Java 클래스가 있습니다. 클래스는 시스템 계정으로 실행됩니다. 두 상자에, 나는
su other-user -c 'some-command'
를 실행하고 프로세스 객체의 입력 스트림에서 다른 사용자의 암호를 제공합니다.
한 상자에서는 명령이 성공하고 다른 명령은 위의 오류가 발생합니다. 두 컴퓨터의 sudoers 파일에 requiretty ('Defaults requiretty'가 두 파일 모두에 설정되어 있음)에 대한 제외 항목이 없습니다. 내가 찾은 답변에서 제안한대로 배제를 추가했습니다. 나는 프로세스를 실행하는 시스템 사용자와 '다른 사용자'모두를 시도했다 ...
작동하지 않는다.
그 밖의 문제는 무엇입니까? requiretty exceptoin을 추가 한 후 시스템을 다시 시작해야합니까?
감사합니다 ... 예, sudo가 올바르게 작동합니다 ... – adaj21