스크립트가 다른 사용자의 스크린 세션에서 명령을 실행하도록 합니까?

스크립트가 다른 사용자의 스크린 세션에서 명령을 실행하도록 합니까?

다른 사용자(user1)의 화면 세션에서 일반 사용자(user1)가 실행한 스크립트에 의해 시작된 명령을 스크립트가 실행하도록 할 수 있습니까? 예를 들어, 루트가 실행하는 스크립트는 user1이 소유한 화면 세션으로 명령을 전달합니다.

머리말

서버의 중요한 파일을 백업하기 위해 rdiff-backup을 사용하는 게임 서버 스크립트가 있습니다. 루트로 스크립트를 실행하고 /root/서버에 일부 소프트웨어나 사용자 오류가 있는 경우 백업에 대한 소프트웨어 보호를 제공하기 위해 백업을 디렉터리에 저장하고 싶습니다.

문제는 rdiff-backup을 시작하기 전에 스크립트가 게임 서버 콘솔에 일부 명령을 보내야 한다는 것입니다.

실제적인 문제

다음과 같은 여러 줄이 있는 루트로 실행되는 스크립트가 필요합니다.

as_user "screen -p 0 -S ${SCREENNAME} -X eval 'stuff \"say ${SAY_BACKUP_START}\"\015'"

user1이 소유한 screen 세션에 명령을 보내고 user1의 cronjob 소유자가 실행하는 스크립트에서 시작합니다.

이것이 가능합니까, 아니면 user1로 백업을 실행하고 user1의 홈 디렉터리에 파일을 보관한 다음 루트로 다른 rdiff-backup을 실행하여 백업 파일을 소프트 보호 디렉터리에 백업하는 것이 더 쉬울까요?

관련 정보