Задача
Разобрать и решить типовую ситуацию: Hyper-V VM зависла. Инструкция написана как рабочий чек-лист для администратора: от быстрой первичной проверки до подтверждения, что проблема устранена.
Когда применять
Используйте материал, когда симптом повторяется у пользователя, сервера или сервиса, а причина пока не очевидна. Не начинайте с переустановки и радикальных действий — сначала соберите факты.
Первичная диагностика
- Уточните масштаб: проблема у одного пользователя, группы, отдела или у всех.
- Проверьте время появления: после обновления, перезагрузки, смены пароля, изменения сети или политики.
- Проверьте базовые зависимости: сеть, DNS, права доступа, свободное место, состояние службы.
- Посмотрите журналы: Windows Event Viewer, journalctl, логи приложения, логи firewall/VPN.
- Зафиксируйте исходное состояние перед изменениями: скриншот, экспорт настроек, бэкап конфигурации.
Команды, которые пригодятся
| Команда | Что делает |
|---|---|
Get-ComputerInfo |
Выводит подробную информацию о Windows, BIOS, железе и сборке ОС. |
Get-Service |
Показывает службы Windows и их статус. |
Restart-Service Spooler |
Перезапускает службу печати. |
Get-Process | Sort CPU -Descending | Select -First 10 |
Показывает процессы, которые больше всего грузят CPU. |
Get-EventLog -LogName System -Newest 50 |
Показывает последние события системного журнала. |
Get-NetIPAddress |
Показывает IP-адреса сетевых интерфейсов. |
Get-NetRoute |
Показывает маршруты Windows. |
Test-NetConnection host -Port 443 |
Проверяет доступность узла и TCP-порта. |
Resolve-DnsName domain.local |
Проверяет DNS через PowerShell. |
Get-SmbShare |
Показывает расшаренные папки на сервере. |
Get-SmbSession |
Показывает активные SMB-сессии. |
Get-LocalUser |
Показывает локальных пользователей. |
Быстрые команды для копирования
Get-ComputerInfo
Get-Service
Restart-Service Spooler
Get-Process | Sort CPU -Descending | Select -First 10
Get-EventLog -LogName System -Newest 50
Get-NetIPAddress
Get-NetRoute
Test-NetConnection host -Port 443
Resolve-DnsName domain.local
Get-SmbShare
Get-SmbSession
Get-LocalUser
Пошаговое решение
- Проверить доступность: IP-адрес, DNS-имя, шлюз, нужный TCP/UDP-порт.
- Проверить права: локальная группа, доменная группа, ACL на папке/ресурсе, срок действия пароля.
- Проверить службу: запущена ли она, не падает ли сразу после старта, нет ли зависимости от другой службы.
- Проверить журнал: найти ошибку в момент сбоя, а не читать весь журнал подряд.
- Внести минимальное изменение: перезапуск службы, исправление DNS, обновление GPO, очистка кэша, восстановление прав.
- Проверить повторно: воспроизвести сценарий пользователя и убедиться, что ошибка ушла.
Частые причины
- Неправильный DNS или старый кэш DNS.
- Пользователь не в той группе доступа.
- Блокировка firewall или антивирусом.
- Зависшая служба или поврежденный кэш приложения.
- Недостаток места на диске или переполненные логи.
- Изменение политики безопасности после обновления.
Проверка результата
Проблема считается решенной только после проверки с учетной записью пользователя или на проблемном узле. Если администратор проверил только со своей учеткой, результат нельзя считать подтвержденным.
Как откатить
Если изменение ухудшило ситуацию, верните исходные настройки, восстановите конфигурационный файл из копии, удалите временное правило firewall или отмените изменение GPO. Радикальные действия документируйте отдельно.