다른 사용자로 프로그램을 실행할 때 TSTP를 전파하는 방법

다른 사용자로 프로그램을 실행할 때 TSTP를 전파하는 방법

다음과 같이 "su"를 통해 터미널 애플리케이션을 실행하고 있습니다.

su -c "/path/to/app --args" username

이는 "username"이 시스템에서 권한이 낮은 사용자인 루트 컨텍스트에서 수행됩니다. 애플리케이션에는 CTRL-C 및 CTRL-Z(각각 SIGINT 및 SIGTSTP)에 대한 신호 처리기가 있습니다. 제가 겪고 있는 이상한 문제 중 하나는 "su"를 통해 이런 식으로 실행할 때 CTRL-Z가 응용 프로그램에 전파되지 않는 것 같습니다. 위 명령 끝에서 "username"을 제거하면 제대로 작동합니다. 이 신호는 su를 사용하는 사용자 스위치가 있는 경우에만 작동합니다.

TSTP가 다른 사용자로 실행되는 프로그램에 전파되도록 허용하는 방법이 있습니까?

CentOS 6.4를 사용하여 테스트되었습니다.

답변1

mdpc의 제안에 따라 "su" 대신 "sudo"를 사용하면 문제가 해결되었습니다.

관련 정보