윈도우 / 명령어 / SC - 서비스를 관리하는 명령어

윈도우 운영체제에서는 다양한 시스템 서비스가 백그라운드에서 실행되며, 이러한 서비스는 시스템의 성능과 안정성을 유지하는 데 중요한 역할을 합니다. SC(Service Controller) 명령어는 이러한 서비스를 관리하는 강력한 도구로, 서비스를 시작, 중지, 설정 변경, 삭제 등 다양한 작업을 수행할 수 있습니다.

SC를 사용할 때 일부 명령은 관리자 권한을 필요로 합니다. 따라서 관리자 권한으로 명령 프롬프트(CMD)를 열고 작업하는 것이 편합니다.

주요 명령 예시는 다음과 같습니다.

  • 서비스 목록을 출력합니다.
sc query type=service state=all
  • Windows 업데이트 서비스의 상태를 확인합니다.
sc query wuauserv
  • Windows 업데이트 서비스를 시작합니다.
sc start wuauserv
  • Windows 업데이트 서비스를 중지합니다.
sc stop wuauserv
  • Windows 업데이트 서비스의 시작 유형을 [자동]으로 설정합니다.
sc config wuauserv start=auto
  • Windows 업데이트 서비스의 시작 유형을 [수동]으로 설정합니다.
sc config wuauserv start=demand
  • Windows 업데이트 서비스의 시작 유형을 [사용 안 함]으로 설정합니다.
sc config wuauserv start=disabled
  • 도움말을 출력합니다.
sc
설명:
        SC는 서비스 제어 관리자 및 서비스와의 통신에 사용되는
        명령줄 프로그램입니다.
사용법:
        sc <서버> [명령] [서비스 이름] <옵션1> <옵션2>...


        <서버> 옵션의 형식은 "\\ServerName"입니다.
        명령에 대한 자세한 도움말을 보려면 "sc [명령]"을 입력하세요.
        명령:
          query-----------서비스 상태를 쿼리하거나 서비스 종류의
                          상태를 열거합니다.
          queryex---------서비스의 확장 상태를 쿼리하거나 서비스
                          종류의 상태를 열거합니다.
          start-----------서비스를 시작합니다.
          pause-----------서비스에 PAUSE 제어 요청을 보냅니다.
          interrogate-----서비스에 INTERROGATE 제어 요청을 보냅니다.
          continue--------서비스에 CONTINUE 제어 요청을 보냅니다.
          stop------------서비스에 STOP 요청을 보냅니다.
          config----------서비스 구성을 변경합니다(지속적).
          description-----서비스 설명을 변경합니다.
          failure---------서비스가 실패했을 때 수행할 동작을 변경합니다.
          failureflag-----서비스의 오류 동작 플래그를 변경합니다.
          sidtype---------서비스의 서비스 SID 형식을 변경합니다.
          privs-----------서비스에 필요한 권한을 변경합니다.
          managedaccount--LSA가 관리하는 대로 서비스 계정 암호를 표시하도록
                          서비스를 변경합니다.
          qc--------------서비스의 구성 정보를 쿼리합니다.
          qdescription----서비스 설명을 쿼리합니다.
          qfailure--------서비스가 실패했을 때 수행할 동작을 쿼리합니다.
          qfailureflag----서비스의 오류 동작 플래그를 쿼리합니다.
          qsidtype--------서비스의 서비스 SID 형식을 쿼리합니다.
          qprivs----------서비스에 필요한 권한을 쿼리합니다.
          qtriggerinfo----서비스의 트리거 매개 변수를 쿼리합니다.
          qpreferrednode--서비스의 기본 설정 NUMA 노드를 쿼리합니다.
          qmanagedaccount-서비스에서 LSA가 관리하는 암호로 계정을 사용하는지
                          여부를 쿼리합니다.
          qprotection-----서비스의 프로세스 보호 수준을 쿼리합니다.
          quserservice----사용자 서비스 템플릿의 로컬 인스턴스를 쿼리합니다.
          delete----------서비스를 레지스트리에서 삭제합니다.
          create----------서비스를 만들고 레지스트리에 추가합니다.
          control---------서비스에 제어를 보냅니다.
          sdshow----------서비스의 보안 설명자를 표시합니다.
          sdset-----------서비스의 보안 설명자를 설정합니다.
          showsid---------임의 이름에 해당되는 서비스 SID 문자열을 표시합니다.
          triggerinfo-----서비스의 트리거 매개 변수를 구성합니다.
          preferrednode---서비스의 기본 설정 NUMA 노드를 설정합니다.
          GetDisplayName--서비스의 DisplayName을 가져옵니다.
          GetKeyName------서비스의 ServiceKeyName을 가져옵니다.
          EnumDepend------서비스 종속성을 열거합니다.

        다음 명령에는 서비스 이름이 필요하지 않습니다.
        sc <서버> <명령> <옵션>
          boot------------(ok | bad) 마지막 부팅을 마지막으로 성공한 부팅
                          구성으로 저장할 것인지를 나타냅니다.
          Lock------------서비스 데이터베이스를 잠급니다.
          QueryLock-------SCManager 데이터베이스의 LockStatus를 쿼리합니다.
예:
        sc start MyService


QUERY 및 QUERYEX 옵션:
        쿼리 명령어 뒤에 서비스 이름이 오면, 해당 서비스의
        상태가 반환됩니다. 이 경우 다른 옵션은 적용되지
        않습니다. 쿼리 명령어 뒤에 아무 것도 오지 않거나
        아래 나열된 옵션 중의 하나가 오면, 서비스가 열거됩니다.
    type=    열거할 서비스 종류(driver, service, userservice, all)
             (기본값 = service)
    state=   열거할 서비스 상태(inactive, all)
             (기본값 = active)
    bufsize= 열거할 버퍼 크기(바이트)
             (기본값 = 4096)
    ri=      열거하기 시작할 계속 인덱스 번호
             (기본값 = 0)
    group=   열거할 서비스 그룹
             (기본값 = all groups)

구문 예제
sc query                - 활성 서비스 및 드라이버의 상태 열거
sc query eventlog       - 이벤트 로그 서비스의 상태 표시
sc queryex eventlog     - 이벤트 로그 서비스의 세부 상태 표시
sc query type= driver   - 활성 드라이버만 열거
sc query type= service  - Win32 서비스만 열거
sc query state= all     - 모든 서비스 및 드라이버 열거
sc query bufsize= 50    - 50바이트 버퍼로 열거
sc query ri= 14         - 계속 인덱스 = 14로 열거
sc queryex group= ""    - 그룹에 없는 활성 서비스 열거
sc query type= interact - 모든 인터랙티브 서비스 열거
sc query type= driver group= NDIS     - 모든 NDIS 드라이버 열거
같은 카테고리의 다른 글
윈도우 / Hyper-V / 가상 머신 1세대와 2세대 차이

윈도우 / Hyper-V / 가상 머신 1세대와 2세대 차이

Hyper-V에서 가상 컴퓨터를 만들 때 1세대와 2세대애서 선택하게 되어 있습니다. 1세대(Generation 1)와 2세대(Generation 2)는 가상 머신의 펌웨어 및 부트 방식, 하드웨어 기능 지원 방식에 차이가 있습니다.

윈도우 10 / PING 허용하는 방법

윈도우 10 / PING 허용하는 방법

네트워크에 잘 연결되어 있는지 확인하는 방법 중의 하나는 ping을 날리는 것입니다. 그런데 윈도우 10은 기본적으로 ping에 대하여 응답하지 않는 것으로 설정되어 있습니다. 그래서 네트워크에 잘 연결되어 있어도 ping으로 확인을 할 수가 없습니다. 만약 ping으로 연결 상태를 확인해야 한다면, 다음의 방법으로 응답하도록 설정합니다. 제어판을 엽니다. 을 클릭합니다. 을 클릭합니다. 을 클릭합니다. 왼쪽에서 ...

윈도우 11 / 초기화 하는 방법

윈도우 11 / 초기화 하는 방법

윈도우 11을 초기화하는 방법은 몇 가지가 있는데, 가장 편한 방법은 윈도우 11에 포함된 복구 기능을 이용하는 것입니다. 설치용 USB를 만들 필요도 없이, 몇 번의 클릭으로 초기화를 할 수 있습니다.

윈도우 11 / BitLocker로 드라이브 암호화하는 방법

윈도우 11 / BitLocker로 드라이브 암호화하는 방법

BitLocker는 Microsoft Windows 운영 체제에 포함된 드라이브 암호화 기능으로, 전체 디스크 볼륨을 암호화하여 데이터의 무단 액세스를 방지하는 도구입니다. 노트북이나 이동식 저장 장치와 같은 장치를 도난당하거나 분실했을 때, 데이터가 무단으로 접근되는 것을 방지합니다. 윈도우 11에서 BitLocker를 켜는 방법, BitLocker를 해제하는 방법에 대하여 알아봅니다. BitLocker 켜는 방법 암호화하려는 드라이브를 선택하고, 마우스 우클릭합니다. 를 클릭합니다. 잠금 해제할 ...

윈도우 / DNS 캐시 조회하는 방법, 삭제하는 방법

윈도우 / DNS 캐시 조회하는 방법, 삭제하는 방법

윈도우는 DNS 정보를 캐시한다. 캐시는 기본적으로 속도 향상을 위한 것인데, 단점은 정보가 변경되었을 때 바로바로 적용되지 않는다는 것이다. 따라서 서버 이전 작업 등을 했을 때 제대로 찾아가지 못한다면 캐시를 삭제하는 작업이 필요하다. 캐시된 DNS를 조회하는 방법과 삭제하는 방법은 다음과 같다. DNS 캐시 조회하는 방법 명령 프롬프트를 연다. 아래와 같이 명령한다. ipconfig /displaydns DNS 캐시 삭제하는 방법 명령 ...

윈도우 10 / 자동 업데이트 끄는 방법

윈도우 10 / 자동 업데이트 끄는 방법

윈도우 10을 설치한 후 별도의 설정을 하지 않았다면 업데이트를 자동으로 합니다. 업데이트를 한 후에 사용자가 컴퓨터를 사용하지 않으면 스스로 재부팅을 하기도 하죠. 잠시 자리를 비웠는데 컴퓨터가 재부팅을 하고 한참동안 업데이트를 설치하는 일이 발생할 수 있습니다. 급하게 작업할 게 있다면 아주 당황스런 상황이 되는 거죠. 중요한 업데이트를 자동으로 하는 것이 좋기는 하지만, ...

윈도우 11 / 디스크 관리 / 디스크 추가하는 방법, 볼륨 만드는 방법, 볼륨 변경하는 방법

윈도우 11 / 디스크 관리 / 디스크 추가하는 방법, 볼륨 만드는 방법, 볼륨 변경하는 방법

PC에 저장 공간이 부족하면 디스크를 추가한다. 외장 하드를 이용하는 방법도 있지만, 메인보드에 디스크를 붙이는 것이 좀 더 안정적이고 속도가 빠르다. 요즘 출시된 노트북은 디스크를 추가할 수 있는 여유 공간이 제공되는 것이 많아, 가벼운 SSD를 추가하면 저장 공간이 작다는 노트북의 단점이 사라진다. 디스크를 추가하면 몇 가지 작업이 필요한데, 윈도우 11에서 어떻게 하는지 ...

윈도우 11 / PowerShell / PowerShell 7 설치하는 방법

윈도우 11 / PowerShell / PowerShell 7 설치하는 방법

윈도우 11에 Windows 터미널이라는 것이 생겼다. 시작 메뉴에도 있고, 파일 탐색기에서 마우스 우클릭해도 있다. 내가 원하는 위치에서 터미널을 쉽게 열 수 있다는 게 장점. 기본 터미널로 PowerShell이 설정되어 있는데, 언제부턴가 최신 PowerShell을 설치해보라는 메시지가 뜬다. 특별히 불편한 점은 없지만, 그 메시지가 보기 싫어서 업그레이드를 해보았다.(정확히는 업그레이드가 아니라 새로운 PowerShell을 설치하는 것.) URL을 ...

윈도우 10 / 엑스박스 게임 바(Xbox Game Bar) 열리지 않을 때 해결 방법

윈도우 10 / 엑스박스 게임 바(Xbox Game Bar) 열리지 않을 때 해결 방법

윈도우 10의 엑스박스 게임 바(Xbox Game Bar)를 이용하여 게임을 캡쳐하거나, 녹화하거나 방송할 수 있습니다. 특별한 설정을 하지 않았다면 게임을 실행할 때 안내가 나오고, WIN + G로도 실행할 수 있습니다. 게임 실행 중이 아니어도 WIN + G를 누르면 다음과 같이 메뉴들이 나와야 합니다. 만약 WIN + G를 눌렀는데, 엑스박스 게임 바가 나오지 않는다면 ...

윈도우 10 / 작업 표시줄에서 피플 아이콘 제거하는 방법

윈도우 10 / 작업 표시줄에서 피플 아이콘 제거하는 방법

피플 앱 피플 앱은 주소록 같은 앱입니다. 구글과 스카이프에 있는 연락처를 가져와서 한 번에 관리할 수 있습니다. 사람을 선택한후 바로 메일을 보내거나 스카이프로 통화하는 것이 가능합니다. 피플 앱 작업 표시줄에서 제거 피플은 편리한 기능을 가진 앱이지만, 적극적으로 사용하는 사람을 주위에서 본 적은 없습니다. 메일은 구글의 지메일보다 네이버 메일을 더 많이 사용하고, 메시지나 통화는 스카이프보다 ...