다른 사용자로 실행


9

RedHat 시스템에서 쉘이없는 다른 사용자와 함께 프로그램을 시작하려고합니다. / etc / passwd에서 쉘은 / sbin / nologin입니다.

나는 시도했다 :

  1. su myuser -c /home/myuser/script.sh 결과 :이 계정은 현재 사용할 수 없습니다.

  2. chown 및 setuid 사용 : chown myuser : mygroup /home/myuser/script.sh chmod + s /home/myuser/script.sh /home/myuser/script.sh 결과 : script.sh는 여전히 로그인 한 사용자로 실행됩니다 ( 뿌리).


su루트 사용자 또는 권한이없는 사용자 를 실행 중 입니까?
James O'Gorman

답변:


17

시험:

su myuser -s /bin/sh -c /home/myuser/script.sh

0

이 오류는 / etc / passwd에서 사용자 myuser에 대해 쉘 / sbin / nologin 또는 / sbin / false를 설정했음을 의미합니다.

/ bin / bash와 같이 유용한 것을 설정하십시오


이것이 이미 OP가 게시 한 내용입니다. OP는 사용자 이름에 쉘이 없더라도 프로그램을 실행할 수있는 방법이 있는지 묻습니다.
Bart Silverstrim

네 ... 사실 질문입니다. / etc / passwd에서 쉘을 설정하지 않고 다른 사용자로 스크립트를 실행할 수 있는지 알고 싶습니다
Karl

1
사용자에게 이와 같은 쉘이 있으면 스크립트를 사용하여 수행 할 수 없습니다.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.