Các ứng dụng đang chạy mà bạn nhìn thấy trên màn hình chỉ là một phần nhỏ của những gì đang diễn ra trong Windows. Từ việc quản lý trình điều khiển thiết bị đến đảm bảo an ninh, một loạt quy trình nền sẽ duy trì hoạt động của PC Windows.
Đối với bất kỳ quản trị viên hệ thống nào giám sát nhiều máy tính, điều quan trọng là có thể xem trạng thái của các dịch vụ quan trọng này. Cách tiếp cận Trình quản lý tác vụ quá chậm đối với việc này và bạn không thể tự động hóa nó bằng tập lệnh.
Giải pháp? Công cụ dòng lệnh. Sử dụng Dấu nhắc Lệnh hoặc PowerShell, bạn có thể nhanh chóng đọc được các dịch vụ Microsoft đang hoạt động đang chạy trên hệ thống, giúp bạn chẩn đoán nhanh chóng mọi sự cố.
Nội dung bài viết
Liệt kê các dịch vụ Windows trong dấu nhắc lệnh
Mặc dù không linh hoạt hay mạnh mẽ như Windows PowerShell nhưng Command Promt vẫn là một công cụ tuyệt vời dành cho quản trị viên hệ thống. Bạn có thể dùng truy vấn để nhận trạng thái của cả dịch vụ đang hoạt động và bị vô hiệu hóa, sau đó sử dụng lệnh taskkill để kết thúc các quá trình phiền toái.
- Để sử dụng lệnh queryex, hãy chạy Dấu nhắc Lệnh với tư cách Quản trị viên. Bạn có thể tìm thấy ứng dụng bằng cách tìm kiếm cmd trong menu bắt đầu.
- Có nhiều cách sử dụng lệnh sc queryex. Loại và Trạng thái là hai tham số được sử dụng phổ biến nhất. Ví dụ: nhập lệnh sau để xem tất cả các quy trình của Windows:
sc queryex type=trạng thái dịch vụ=tất cả
- Chế độ xem mặc định có thể hơi choáng ngợp. Bạn chỉ có thể hiển thị tên của các quy trình để giúp phân tích danh sách dễ dàng hơn:
sc queryex type=trạng thái dịch vụ=all | tìm /i “SERVICE_NAME:”
- Theo mặc định, lệnh liệt kê tất cả các tiến trình đang hoạt động. Để tìm những cái không hoạt động, hãy sửa đổi tham số trạng thái:
sc queryex type=trạng thái dịch vụ=không hoạt động
- Bạn cũng có thể truy vấn trạng thái của một quy trình cụ thể theo tên của nó. Điều này cực kỳ hữu ích đối với quản trị viên hệ thống vì họ có thể thiết lập các tệp hàng loạt để kiểm tra nhiều quy trình cùng một lúc. Đây là một ví dụ:
truy vấn sc Cài đặt thiết bị
Liệt kê các dịch vụ Windows trong PowerShell
PowerShell được coi là một shell dòng lệnh chuyên dụng cho Windows hiện đại. Như vậy, nó cung cấp quyền truy cập vào hầu hết mọi thành phần của hệ điều hành thông qua các lệnh và các dịch vụ Windows cũng không ngoại lệ.
Ưu điểm của PowerShell là bạn có thể tự động hóa nó một cách dễ dàng. Tất cả các lệnh PowerShell có thể được biên dịch thành các tập lệnh phức tạp, cho phép bạn thiết lập các tác vụ quản trị hệ thống trên nhiều PC mà không gặp rắc rối.
- Bắt đầu bằng cách mở PowerShell. Bạn có thể tìm kiếm nó trong Start Menu; chỉ cần đảm bảo chạy một phiên bản nâng cao (tức là với tư cách Quản trị viên).
- Lệnh đơn giản nhất để liệt kê các dịch vụ Windows trên PowerShell là Nhận dịch vụ. Nó hiển thị tất cả các dịch vụ trên máy tính của bạn cùng với trạng thái và tên của chúng. Vấn đề duy nhất là danh sách dịch vụ có thể khá dài.
- Khi đang sử dụng Nhận dịch vụ, tốt hơn hết bạn nên xuất danh sách sang tệp văn bản. Bạn có thể làm điều này bằng cách sử dụng các đường ống, như thế này:
Nhận-Dịch vụ | Tệp Ngoài “C:logsAll_Services.txt”
- Để tra cứu trạng thái của một dịch vụ cụ thể, hãy làm theo Nhận dịch vụ lệnh với tên của dịch vụ. Bạn có thể yêu cầu trạng thái của nhiều quy trình bằng cách phân tách tên của chúng bằng dấu phẩy.
Nhận dịch vụ CryptSvc, COMSysApp
- Ống cũng có thể được sử dụng để kết hợp các Nhận dịch vụ lệnh ghép ngắn với Đối tượng ở đâu chức năng và lọc kết quả theo Trạng thái. Lệnh sau minh họa điều này bằng cách nhận tất cả các dịch vụ Đang chạy:
Nhận-Dịch vụ | Đối tượng ở đâu {$_.Status -EQ “Đang chạy”}
Kiểm tra sự phụ thuộc của dịch vụ
Bất kỳ quy trình phức tạp nào cũng được chia thành nhiều dịch vụ phụ thuộc lẫn nhau. Đây là lý do tại sao chỉ nhận được trạng thái của một dịch vụ cụ thể thường là không đủ. Bạn cũng cần kiểm tra trạng thái của các dịch vụ mà dịch vụ đó phụ thuộc vào.
- Để xem các dịch vụ được yêu cầu bởi một dịch vụ cụ thể, hãy sử dụng -Dịch vụ bắt buộc cờ với Nhận dịch vụ lệnh ghép ngắn. Đây là một ví dụ:
Nhận dịch vụ -Tên CryptSvc –RequiredServices
- Tương tự, để có được danh sách các dịch vụ phụ thuộc vào một dịch vụ cụ thể, hãy tận dụng lợi thế của -Dịch vụ phụ thuộc lá cờ.
Nhận dịch vụ -Tên CryptSvc -Dịch vụ phụ thuộc
Hai cờ này rất quan trọng trong việc viết tập lệnh để tự động khởi động hoặc dừng các dịch vụ Windows vì chúng cung cấp cho bạn cách theo dõi tất cả các dịch vụ được kết nối với dịch vụ bị ảnh hưởng.
Liệt kê các dịch vụ Windows trên máy tính từ xa
Phương pháp PowerShell không giới hạn ở các máy tính cục bộ. Bạn cũng có thể sử dụng lệnh ghép ngắn Get-Service với cú pháp tương tự được mô tả ở trên để truy vấn các quy trình của PC từ xa. Chỉ cần nối thêm -Tên máy tính gắn cờ ở cuối để chỉ định máy tính từ xa nào sẽ lấy thông tin từ đó.
Đây là một ví dụ:
nhận dịch vụ CryptSvc -ComputerName Workstation7
Quản lý dịch vụ Windows trong PowerShell
Nhận trạng thái dịch vụ không phải là điều duy nhất bạn có thể làm trong Windows PowerShell. Là một môi trường tập lệnh chính thức, nó cung cấp các lựa chọn thay thế tập lệnh cho tất cả các tùy chọn GUI.
Lệnh ghép ngắn Powershell có thể dừng, khởi động, khởi động lại hoặc thậm chí sửa đổi dịch vụ. Được ghép nối với tự động Nhận dịch vụ lệnh, tập lệnh PowerShell có thể được viết để tự động hóa hoàn toàn các tác vụ quản lý hệ thống hàng ngày.
- Ngoài việc truy vấn trạng thái dịch vụ, bạn cũng có thể sử dụng PowerShell để quản lý chúng. Việc bắt đầu hoặc dừng dịch vụ có thể được thực hiện bằng một lệnh duy nhất, chỉ yêu cầu tên của dịch vụ. Ví dụ: đây là cách bạn có thể dừng dịch vụ:
Dừng dịch vụ -Bộ đệm tên
- Bắt đầu một dịch vụ cũng diễn ra tương tự:
Dịch vụ bắt đầu -Bộ đệm tên
- Nếu một dịch vụ không hoạt động bình thường, bạn cũng có thể chọn khởi động lại dịch vụ đó:
Khởi động lại dịch vụ -Bộ đệm tên
- Ngoài ra còn có lệnh ghép ngắn Set-Service có thể được sử dụng để thay đổi các thuộc tính của dịch vụ. Ở đây chúng tôi vô hiệu hóa tính năng tự động khởi động của dịch vụ Bộ đệm máy in:
Set-Service ‘Spooler’ -StartupType bị vô hiệu hóa
Cách tốt nhất để liệt kê các dịch vụ Windows là gì?
Cho dù bạn đang chạy Windows 10 hay Windows Server, việc có thể xem danh sách tất cả các dịch vụ Windows có thể rất hữu ích. Bạn có thể chẩn đoán sự cố với các chức năng quan trọng của hệ thống hoặc dừng các dịch vụ không cần thiết của Microsoft để cải thiện hiệu suất.
Với mục đích này, PowerShell là lựa chọn tốt nhất. Mặc dù bạn có thể lấy danh sách dịch vụ trong Dấu nhắc Lệnh, nhưng chức năng bổ sung do PowerShell cung cấp sẽ hữu ích hơn.
Bạn có thể sử dụng lệnh ghép ngắn PowerShell để nhận trạng thái dịch vụ của các quy trình Windows, lọc chúng theo trạng thái của chúng hoặc các tham số khác. Cũng dễ dàng xác định các dịch vụ phụ thuộc và bắt đầu hoặc dừng chúng theo yêu cầu.