IT에 뛰어들고 나서 훨씬 더 자주 하는 일 중 하나는 회사 전체의 컴퓨터에서 실행되는 서비스의 상태를 모니터링하고 확인하는 것입니다.
잘 알려져 있고 상당히 쉽기 때문에 대부분의 사람들이 사용하는 서비스를 관리하는 표준 방법이 있습니다. 여기에는 관리 컨트롤로 이동하거나 제어판으로 이동하여 서비스 유틸리티를 찾아 필요한 작업을 수행하는 작업이 포함됩니다.
네트워크의 다른 컴퓨터나 서버에서 실행 중인 서비스를 관리하려면 컴퓨터 관리로 이동하여 원격 컴퓨터에 연결한 다음 해당 서비스를 관리해야 합니다.
이 접근 방식을 취하는 데 전혀 문제가 없습니다. 사실 모든 곳의 시스템 관리자는 이러한 표준 Windows 유틸리티를 사용하여 기업 전체의 인프라를 관리합니다. 하지만 명령 프롬프트에 한 줄만 입력하여 서비스를 모니터링, 중지 및 시작할 수 있다면 어떨까요?
명령줄에서 서비스 제어
일부 소프트웨어를 다시 설치하려면 클라이언트 컴퓨터에서 실행 중인 서비스를 중지해야 할 수 있습니다. 또는 일부 소프트웨어가 제대로 작동하지 않아 서버에서 실행 중인 서비스를 다시 시작해야 할 수도 있습니다.
지금까지 표준 서비스 유틸리티를 사용하여 네트워크에서 실행되는 클라이언트 시스템에서 서비스를 관리했을 것입니다. 관리 도구에서 실행하는 서비스 도구입니다. 제어판의 섹션입니다.
관리 도구에서 서비스 도구로 직접 이동하거나 네트워크의 다른 컴퓨터에 액세스하려는 경우 컴퓨터 관리를 열 수 있습니다.
다른 컴퓨터에 액세스하려면 "다른 컴퓨터에 연결 작업을 클릭하세요. "를 클릭한 다음 컴퓨터의 네트워크 이름을 입력합니다.
그런 다음 서비스 도구를 열 수 있습니다.
더 쉬운 서비스 관리 방법
어쨌든, 그것은 먼 길입니다. 더 짧고 빠른 방법은 "SC" 명령을 사용하는 것입니다.
NET 명령에 익숙할 것입니다. SC 명령은 서비스를 모니터링, 중지 및 시작하는 것 외에 서비스를 생성할 수도 있다는 점을 제외하면 NET과 거의 동일합니다. 무엇보다도 네트워크를 통해 다른 컴퓨터에 대해 SC 명령을 실행할 수 있습니다(관리자 권한이 있다고 가정).
컴퓨터에 대해 SC 쿼리를 수행하면 설치된 모든 서비스와 실행 여부를 알 수 있습니다. "SC \\**computer-name** query |more" 명령을 실행하면 - 여기에 표시된 대로 출력이 표시됩니다.
보시다시피, 이것은 서비스 상태, 서비스 유형 및 기타 매개변수를 제공합니다. 여기에서의 연습을 위해 서비스 상태에만 주의를 기울이겠습니다.
현재 실행되지 않는(중지된) 서비스만 나열하려면 "SC \\**computer-name** query state="inactive" |more"
|명령의 더 많은 부분은 스크롤할 수 있도록 각 화면에서 출력을 일시 중지합니다.
보시다시피 해당 서비스는 모두 중지되었습니다. 이제 이러한 서비스를 모두 살펴보는 대신 서비스 이름을 알고 있으면 "SC \\**computer-name** query **service-name** 명령을 실행하면 됩니다. "
그러면 해당 서비스의 현재 상태만 보고되고 다른 것은 표시되지 않습니다. 서비스를 원격으로 중지하려면 중지 명령 "SC \\**computer-name** stop **service-name**"을 실행하기만 하면 됩니다.
출력에 "STOP-PENDING" 상태가 표시되지만 잠시 후 해당 서비스를 다시 쿼리하면 더 이상 실행되고 있지 않음을 알 수 있습니다. 동일한 명령을 실행하여 시작할 수 있지만 "중지"를 "시작"으로 바꿉니다.
모든 서비스를 쿼리, 중지 또는 시작하는 스크립트 만들기
자, 이제 기본 사항을 이해했으므로 정확한 명령 문자열을 기억할 필요 없이 원하는 서비스를 중지하는 스크립트를 작성할 차례입니다. 다음과 같이 신뢰할 수 있는 Windows 스크립트를 작성하여 이를 수행할 수 있습니다.
<전>
이 스크립트를 실행하면 중지하거나 시작할 서비스 이름을 묻는 메시지가 표시됩니다.
그런 다음 서비스를 중지할지 시작할지 여부를 지정합니다.
">> c:\temp\results.txt 사용" 명령을 실행하면 중지 및 시작 결과와 오류를 텍스트 파일로 출력하여 명령이 제대로 작동했는지 확인할 수 있습니다.
위의 스크립트를 실행할 때 스크립트를 실행하기 전과 실행한 후에 서비스에 대한 빠른 쿼리를 수행했습니다.
보시다시피 내가 중지한 서비스인 helpvc가 실행 중이었습니다. Windows Script를 실행하여 중지하고 쿼리했는데 중지되었습니다.
정말 멋지게 만들고 싶다면 현재 PC에 설치된 모든 서비스를 텍스트 파일로 출력하는 섹션을 스크립트에 추가하여 중지하거나 시작할 서비스를 결정하기 전에 검토할 수 있습니다. 이에 대한 명령은 "sc \\" &strComputer &" query> c:\temp\services.txt"입니다.
보시다시피 SC 명령은 모든 컴퓨터에서 서비스를 관리하는 매우 강력하고 효율적인 방법일 수 있으며 Windows 스크립팅에 재능이 있는 경우 프로세스를 자동화하여 작업을 훨씬 더 쉽게 만들 수도 있습니다.
SC 명령이 유용할 수 있다고 생각하십니까? 명령을 실행하는 자동화된 스크립트는 어떻습니까? 아래 댓글 섹션에서 아이디어와 생각을 공유하세요.
이미지 제공:Shutterstock