Adam the Automator (Polski)
Czas pracy systemu Windows jest miarą używaną przez wielu administratorów serwerów do rozwiązywania codziennych problemów, które mogą wystąpić w środowisku. W tym artykule poznasz wszystkie sposoby sprawdzania dostępności systemów Windows Server i Windows 10. Możesz skorzystać z najłatwiejszego sposobu. Użyj tego artykułu jako odniesienia w przyszłości.
Artykuł zostanie podzielony na dwie główne części; sprawdzanie dostępności serwera i znajdowanie historycznej dostępności systemu Windows. Pierwsza część skupi się na sprawdzeniu, ile czasu komputer pracował od ostatniego ponownego uruchomienia. W tym artykule jest to nazywane „bieżącym” czasem pracy.
W drugiej części artykułu skupimy się na znalezieniu „historycznego” czasu pracy, co oznacza ponowne uruchomienie, określające, jak długo system Windows działał między kilkoma ponownymi uruchomieniami. Korzystając z PowerShell, dowiesz się, jak analizować dziennik zdarzeń systemu Windows, aby pobrać historyczne dane dotyczące czasu pracy.
Spis treści
Sprawdzanie czasu działania systemu Windows Server
Aby rozpocząć, przejdźmy teraz do kilku różnych sposobów znajdowania aktualnego czasu pracy systemu Windows.
Zobaczysz demonstrację działania polecenia lokalnie na system Windows w tej sekcji. Ale wiedz, że używając PowerShell Remoting, możesz również przeprowadzić te kontrole zdalnie (z wyjątkiem menedżera zadań).
Menedżer zadań
Jednym z najprostszych i najprostszych sposobów znalezienia czasu sprawności jest po prostu otwórz Menedżera zadań.
Aby sprawdzić dostępność systemu Windows za pomocą Menedżera zadań, kliknij prawym przyciskiem myszy pasek zadań systemu Windows i wybierz Menedżer zadań lub naciśnij klawisze Ctrl – Shift – Esc. Po otwarciu Menedżera zadań kliknij kartę Wydajność. Na karcie Wydajność zobaczysz etykietę Up Time.
Podgląd zdarzeń
Przeglądarka zdarzeń jest bardzo często używana przez większość administratorów, co sprawia, że jest to doskonała opcja dla metody pobierania czasu sprawności niezwiązanej z wierszem poleceń. Identyfikatory zdarzenia 6005 i 6006 mogą służyć do identyfikacji, kiedy usługa dziennika zdarzeń jest uruchamiana lub zatrzymywana, co ma miejsce w czasie rozruchu / zamykania. Wykonaj następujące kroki, aby zidentyfikować czas pracy za pomocą Podglądu zdarzeń:
- Otwórz menu Start i po prostu wyszukaj przeglądarkę zdarzeń, możesz również uzyskać do niej dostęp za pośrednictwem zarządzania komputerem.
- Włącz po lewej stronie rozwiń sekcję Dzienniki systemu Windows i wybierz System
- Teraz, gdy sprawdzamy tylko zdarzenia związane z systemem, kliknij „Filtruj bieżący dziennik…” po prawej stronie okna
- W polu Identyfikator zdarzenia (domyślnie zostanie to wstępnie wypełnione tekstem „Wszystkie identyfikatory zdarzeń”) musimy wyszukać odpowiednie identyfikatory zdarzeń, wpisać „6005, 6006”, a następnie kliknąć OK.
Następnie możesz porównać te dwa czasy, aby uzyskać całkowity czas działania. Ponadto, ponieważ przechowywanych jest wiele wystąpień tych zdarzeń, możemy zapytać o historię działania!
Odfiltrowałeś teraz dzienniki zdarzeń, które pokażą nie tylko ostatnim razem, ale wszystkie znane czasy, w których nastąpiło uruchomienie / zamknięcie systemu.
PowerShell
PowerShell ma kilka różnych sposobów na odzyskanie czasu pracy. może wysyłać zapytania do WMI lub korzystać z Wi Dziennik zdarzeń ndows.
Podczas odpytywania WMI można wysłać zapytanie do klasy Win32_OperatingSystem i wybrać właściwość LastBootUpTime
, jak pokazano poniżej.
Aby wysłać zapytanie do dziennika zdarzeń za pomocą programu PowerShell, użyj polecenia cmdlet Get-WinEvent
. Będziesz musiał wyszukać identyfikatory zdarzeń 6005 lub 6006, które wskazują czas ostatniego uruchomienia maszyny.
WMIC
WMIC zapewnia interfejs wiersza poleceń dla WMI i jest wypróbowaną i prawdziwa metoda stosowana od wielu lat. Aby zapytać przez uptime za pośrednictwem WMIC, należy ponownie wysłać zapytanie do klasy WMI Win32_OperatingSystem, chociaż trochę pod osłonami. Poniżej możesz zobaczyć, że możesz użyć składni WMIC os get lastbootuptime
, aby zwrócić czas ostatniego uruchomienia serwera.
Nie musisz niczego pobierać, aby korzystać z WMIC, ponieważ jest on fabrycznie zainstalowany w systemie Windows.
Narzędzie informacji o systemie
Polecenie systeminfo wyświetla szczegółowe informacje o konfiguracji komputera i może być używane do sprawdzania dostępności systemu. Korzystając z wbudowanego narzędzia wyszukiwania wiersza poleceń, możesz przeanalizować tekst w celu pobrania potrzebnych danych.
Po prostu otwórz wiersz polecenia lub PowerShell i wpisz systeminfo | find
.
Nie musisz niczego pobierać, aby wykorzystać systeminfo
, ponieważ jest on wstępnie zainstalowany z Windows.
Polecenie Net Statistics
Możesz także szybko sprawdzić czas działania poprzez Net Statistics lub bardziej znany jako net stats
. Polecenie net stats
zwraca ogólne informacje o sesji. Poniżej widać linię Statystyki od…. Ta data wskazuje, kiedy maszyna została uruchomiona.
Polecenie Uptime
Jeśli potrzebujesz małego, przenośnego narzędzia do sprawdzania czasu działania systemu Windows, nie szukaj dalej niż polecenie Uptime firmy NeoSmart Technologies dla systemu Windows. To narzędzie jest idealne do szybkiego sprawdzania dostępności w dowolnej wersji systemu Windows. Główną zaletą tego narzędzia jest wygoda. Jeśli używasz tego wiele razy dziennie, możesz rozważyć tę metodę.
Po pobraniu narzędzia wypakuj plik uptime.exe do% WinDir% \ System32. Następnie otwórz wiersz polecenia i po prostu wpisz uptime
.
Aby uruchomić to narzędzie zdalnie, musisz najpierw skopiować narzędzie do systemów Windows sprawdzasz czas pracy.
Przedstawiamy skrypt Get-ServerUptimeReport
Więc nie musisz samodzielnie pisać PowerShell, pobierz skrypt społeczności o nazwie Get-ServerUptimeReport.ps1.
Ten skrypt umożliwia podanie nazwy komputera jako parametru. Następnie przeanalizuje dziennik zdarzeń systemowych komputera i znajdzie zdarzenie rozpoczęcia i zatrzymania, aby je porównać. Następnie zwróci całkowity czas, przez jaki serwer był w trybie online, aż do zakończenia dziennika zdarzeń.
Poniżej znajduje się przykład użycia tego skryptu na serwerze. Zwróci całkowity czas pracy dla wszystkich zdarzeń, które serwer ma w dzienniku zdarzeń, w tym aktualny czas pracy.
Znajdowanie czasu pracy na wielu serwerach
Ten skrypt to szybki sposób znaleźć czas sprawności pojedynczego serwera przez wiele dni. Ale co, jeśli potrzebujesz tych informacji dla wielu serwerów jednocześnie? Aby to zrobić, możesz zebrać listę serwerów, a następnie przekazać nazwę każdego komputera, pojedynczo, do tego skryptu.
Jako przykład, zdefiniuj wszystkie swoje serwery w tablicy w konsoli PowerShell . W tym przykładzie tablica zmiennych będzie nosiła nazwę $servers
.
W rzeczywistości możesz jednak pobierać nazwy serwerów z Active Directory, Hyper-V lub plik tekstowy. Dopóki możesz zbudować tablicę nazw serwerów, wszystko w porządku.
Zdefiniuj wszystkie nazwy serwerów, a następnie wykonaj iterację po każdym z nich za pomocą pętli, jak pokazano poniżej.
Ten kod działa, ale nie można określić, do którego serwera odwołuje się każdy wiersz. Dodaj nazwę serwera do danych wyjściowych, jak poniżej, używając obliczonej właściwości.
Mamy teraz doskonałe małe narzędzie, które może dostarczyć nam szybki raport na temat czasu pracy naszych serwerów w czasie!
Podsumowanie
Znasz już wiele różnych sposobów sprawdzania czasu pracy systemu Windows. Niezależnie od wybranej opcji otrzymasz te same informacje. Wybierz najlepszy dla swojego kontekstu.
I pamiętaj, że jeśli potrzebujesz historycznego raportu z historii działania, nie zapomnij o Get-ServerUptimeReport
skrypcie PowerShell!