'scvhost 격리'에 해당되는 글 1건

  1. 2013.06.24 sc.exe 명령어 / svchost.exe 특정 서비스 격리
Windows2013. 6. 24. 17:30

 

출처 : http://smileyoon.kr/50140380416

 

sc 명령어를 service control manager and services를 조작할 수 있다.

 

활용법1) 현재 서버에서 실행되고 있는 모든 service의 status 확인

 

c:\>sc query --모든 서비스 리스트 확인 가능하며 status도 확인 가능

c:\>sc queryex --위 명령어보다 더 자세히 service status를 확인 가능 <특히 PID 확인>

=>어떤 서버에서 tasklist /svc 통해서 PID 확인하고 싶었는데 안되었다..... 이제부터는 한가지 방법 추가^^;;;

 

활용법2) 서비스 중지 및 시작 가능  

 

!!!!)해당 서비스가 종속성이 걸려 있다면 중지 및 시작이 안되요~~~~

자 여기서 mssqlserver 서비스를 중지 시켜 볼까요????

허거거거거걱.... 왜 안되지.....? 당연하죠 해당 서비스는 sqlserveragent가 의존하고 있기 때문이죠...

그래서 해당 서비스를 중지 시킬려면 sqlserveragent를 중지시킨 후 해야 합니다.

 

짜잔^^ net stop <서비스명> net start <서비스명> 명령어로도 서비스를 제어할 수 있지만 sc명령어도 할 수 있어요

 

활용법3) 이것 때문에 제가 SC 명령어에 관심이 가지게 되었습니다.

 

svchost.exe를 이용하는 서비스 중 한개가 문제를 일으키고 있었습니다..... 특정 서비스를 강제 kill시키고 싶은데

그런데 아시다파시 svchost.exe 같은 경우 여러 프로세스가 공유해서 사용하고 있습니다..

이럴 때 어떻게 할까요??? 공유해서 사용하고 있는 걸 격리 시켜서 한개의 svchost.exe에 서비스 시킬 수 있습니다.

자 가볼까요???? (-.- 왜이렇게 말이 주저리 주저리 길고 깔끔하지가 못할까요 ㅠㅠ)

bits 서비스를 따로 서비스 되도록 격리 시키도록 하겠습니다. (bits 서비스를 왜 선택했냐면... 종속적이지 않기 때문에^^)

 

!!!!여기서 주목 sc config <서비스명> type= own 명령을 통해 서비스 구성을 변경했습니다.

그런데 웃긴점 발견 type=own 붙여서 쓰면 안되요!!!! 거짓말 같으신가요 해보세요 ㅋㅋ 꼭 한칸을 띄고 own을 타이핑해야 합니다.

그리고 나서 바로 tasklist /svc로 확인해 보겠습니다.

 

헐..... 왜 격리가 안되지??? ㅋㅋㅋ 서비스를 재시작해줘야 합니다.

자 위에서 배운 sc stop bits -> sc start bits 실행 한 후 다시 확인해 보겠습니다.



우하하 격리 성공 PID 4492이네요

작업 관리자가 가서 PID가 4492 프로세스를 강제로 kill 시킬 수 있었습니다.

 

유용한 명령어가 참 많은것 같습니다.^^

지속적으로 제가 습득한 명령어를 정리하여 포스팅하도록 하겠습니다.

 

장문의 글을 읽어 주셔서 감사합니다.

아차차차 그리고 제발 읽고만 가지 말아주세요.... 보신 후 뭔가 이상하다 싶은게 있으면 바로 알려주세요

확인 후 수정토록 하겠습니다. 단방향보다 양방향을 좋아합니다.^^

이상!!! 

Posted by 배움나눔