윈도우 서비스를 SYSTEM 계정으로 돌리는데 설정을 위해 응답이 필요하다면 골치 아파진다.

관리자 권한이 필요하면 메뉴에서 '관리자 권한으로 실행'을 선택하거나 runas 를 통해 할 수 있는데 SYSTEM 계정은 애매하다.

검색해보니 PsExec 를 이용하면 SYSTEM 계정으로 프로그램을 실행할 수 있었다. 

마소 홈페이지에서 PsExec 가 포함된 PsTools 를 다운받자. 링크 

 

PsExec - Windows Sysinternals

Execute processes on remote systems.

docs.microsoft.com

 

다운받은 파일을 적절한 곳에 압축을 풀자.

관리자 권한으로 명령 프롬프트(cmd.exe) 를 실행하자.

PSTools 압축을 푼 폴더에서 아래와 같이 PSExec 를 실행하면 SYSTEM 계정의 명령창을 볼 수 있다. 

> psexec -i -s -d cmd

각 옵션은 다음과 같은 의미다.

-i Run the program so that it interacts with the desktop of the specified session on the remote system. If no session is specified the process runs in the console session.
-s Run the remote process in the System account.
-d Don't wait for process to terminate (non-interactive).

 

psexec 최초 실행시에는 동의 창이 뜬다. Agree 를 눌러 동의를 표시하자.

PID 10556 인 새 명령창이 뜨는데 작업 관리자를 통해 보면 SYSTEM 계정으로 실행된 것을 확인할 수 있다.

참고
- How to Run Programs as SYSTEM  
- Lai Go's Blog - CMD 프롬프트를 SYSTEM 사용자 권한으로 실행

728x90

+ Recent posts