Перейти к содержимому
При работе с Remote desktop services в Windows Server 2016 или 2019 со временем возникает ситуация что не работает меню пуск, а если обобщить – не работает ничего на панели задач что открывается левой кнопкой мыши.
В моем случае вопрос возник из-за большого количества правил файрвола. При открытии внутренних приложений APPX в Windows server 2016/2019, к примеру Кортаны (поиск на панели задач) автоматически создается правило в файрволе. Если у вас много пользователей на сервере терминалов, это приводит к большому количеству правил которые будут созданы автоматически системой. Следовательно не работало меню пуск у меня из-за 76 МЕГАБАЙТ правил в одной ветке реестра. Исходя из этого при логине пользователя меню пуск не работает. Для решения вопроса c не работоспособностью кнопки пуск, нужно удалить записи с реестра с правилами файрвола. Скрипт что ниже работает на Windows Server 2016 и Windows Server 2019.
Remove-Item "HKLM:\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\RestrictedServices\AppIso\FirewallRules" New-Item "HKLM:\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\RestrictedServices\AppIso\FirewallRules" Remove-Item "HKLM:\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\RestrictedInterfaces\IfIso\FirewallRules" New-Item "HKLM:\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\RestrictedInterfaces\IfIso\FirewallRules" Remove-Item "HKLM:\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\FirewallRules" New-Item "HKLM:\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\FirewallRules" (New-Object -ComObject HNetCfg.FwPolicy2).RestoreLocalFirewallDefaults()
Будьте осторожны. Удаление правил может привести к недоступности сервера по сети. К примеру – не будет указано, что открытый порт TCP 3389, UDP 3390. В последней команде идет сброс правил файрвола к дефолтным. При потребности пересоздайте правила которые вам нужны для подключения к серверу.
Также можете просмотреть другие ветки вот здесь – HKLM:\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy на наличие большого колличества правил файрвола и удалить их.
Обратите внимание – перед работой с реестром, всегда делайте экспорт тех веток которые изменяете.
Вопросы – в комментарии.
Приятной Вам работы.
- Remove From My Forums
-
Question
-
Не работает меню Пуск, поиск и пр. у вновь созданных пользователей вин сервер 2019. У новых пользователей любых групп доступа не стартуют ShellExperienceHost и searchui, которые как раз и отвечают за вышеперечисленное. Разрешения на папки присутствуют.
У остальных всё прекрасно стартует и работает.
На сервере следующие роли AD, DNS, IIS, NPAS, Службы удалённых рабочих столов, Файловые службы.
-
Edited by
Sunday, June 21, 2020 1:25 PM
-
Edited by
Answers
-
Привет,
Посмотрите обсуждение внизу, в нем есть несколько различных вариантов решении этой проблемы:
Start menu not opening in Server 2016
Одно из решении:
Hi,
after researching for hours I found a issue in the registry with the Windows Firewall, even if the Windows Firewall was turned off.
Try to execute this commands in PowerShell, this worked for me. About 10 seconds after executing the commands the start menu should work again, if the problem is the same that I had.
Remove-Item "HKLM:\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\RestrictedServices\Configurable\System" New-Item "HKLM:\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\RestrictedServices\Configurable\System
Мнения, высказанные здесь, являются отражением моих личных взглядов, а не позиции корпорации Microsoft. Вся информация предоставляется «как есть» без каких-либо гарантий. Не забывайте помечать сообщения как ответы и полезные,
если они Вам помогли.-
Edited by
Petko KrushevMicrosoft contingent staff, Owner
Thursday, June 25, 2020 7:52 AM
url -
Marked as answer by
Petko KrushevMicrosoft contingent staff, Owner
Wednesday, July 8, 2020 7:38 AM
-
Edited by
Windows Server 2019 — мощная операционная система, широко используемая в корпоративной среде. Однако, как и любое программное обеспечение, она может столкнуться с проблемами. Одна из наиболее распространенных проблем, с которой пользователи могут столкнуться, — это неработающий пуск.
Когда пуск Windows Server 2019 не работает, это может создавать значительные неудобства и препятствовать нормальной работе с системой. Однако не стоит паниковать. Существует ряд шагов, которые можно предпринять для исправления этой проблемы и восстановления нормальной функциональности пуска.
В этой статье мы предоставим подробную инструкцию по решению проблемы с неработающим пуском Windows Server 2019. Мы рассмотрим различные причины, которые могут привести к этой проблеме, и предложим конкретные действия для ее устранения. Следуя нашим рекомендациям, вы сможете быстро вернуть пуск в рабочее состояние и продолжить безопасную и эффективную работу с вашим сервером.
Содержание
- Что делать, если не запускается Windows Server 2019?
- Проверьте аппаратные требования для Windows Server 2019
- Проверьте соединение сетевых устройств и наличие интернет-соединения
- Запустите систему в безопасном режиме и проведите диагностику
- Проверьте целостность и настройки системных файлов
- Переустановите операционную систему Windows Server 2019
Что делать, если не запускается Windows Server 2019?
Возможны ситуации, когда Windows Server 2019 отказывается запускаться. Это может быть вызвано различными причинами, от ошибок в системе до проблем с аппаратным обеспечением. В данном разделе мы рассмотрим несколько шагов, которые могут помочь исправить проблему и запустить сервер.
- Проверьте подключение питания и аппаратного обеспечения. Убедитесь, что сервер правильно подключен к источнику питания и все кабели надежно зафиксированы. Проверьте работу вентиляторов и других компонентов сервера.
- Перезагрузите сервер. Попробуйте выполнить «мягкую» перезагрузку, нажав на кнопку перезагрузки сервера или выполните «жесткую» перезагрузку, отключив и снова подключив устройство питания. Если сервер не отвечает на команды перезагрузки, перейдите к следующему шагу.
- Попробуйте запустить сервер в безопасном режиме. Удерживайте клавишу F8, пока не появится меню с выбором режима. Выберите «Безопасный режим» и нажмите «Enter». Если сервер успешно запускается в безопасном режиме, возможно проблема связана с драйверами или программным обеспечением, установленными на сервере.
- Попробуйте восстановить систему с помощью встроенной утилиты восстановления. Перезагрузите сервер и удерживайте клавишу F8, пока не появится меню с выбором режима. Выберите «Восстановление системы» и следуйте инструкциям на экране. Эта процедура может занять некоторое время, но может помочь исправить ошибки в системе.
- Проверьте журнал событий. Если сервер не запускается и вы не видите явных ошибок, попробуйте проверить журнал событий. Он может содержать информацию о том, что вызывает проблему запуска. Откройте Панель управления, перейдите в «Система и безопасность» и выберите «Просмотр событий». Здесь вы сможете просмотреть журналы системных событий и найти информацию, которая поможет вам устранить проблему.
- Переустановите операционную систему. Если все вышеперечисленные шаги не помогли решить проблему, вам может потребоваться переустановить операционную систему. Но будьте осторожны: это может привести к потере всех данных на сервере. Перед переустановкой рекомендуется создать резервные копии важных файлов или обратиться к специалисту, чтобы получить помощь.
В большинстве случаев один из вышеперечисленных шагов помогает решить проблему запуска сервера. Если же ни один из них не дает результата, рекомендуется обратиться к профессионалам, которые окажут техническую поддержку и помогут восстановить работоспособность сервера.
Проверьте аппаратные требования для Windows Server 2019
Вот основные аппаратные требования для установки и запуска Windows Server 2019:
- Процессор: 1,4 ГГц 64-битный процессор с поддержкой набора инструкций x64
- ОЗУ: не менее 2 ГБ (8 ГБ рекомендуется)
- Место на жестком диске: не менее 32 ГБ
- Сетевой адаптер: Ethernet-адаптер с поддержкой скорости 1 Гбит/с
- Графический адаптер: DirectX 9 или более поздней версии с Драйвером WDDM 1.0
Также рекомендуется использовать серверное оборудование, предназначенное для профессионального использования и отвечающее высоким требованиям по надежности и производительности.
Проверьте компоненты вашей системы на соответствие указанным требованиям. В случае несоответствия, обновите или замените аппаратную составляющую, которая не отвечает требованиям операционной системы. После этого повторите попытку запуска Windows Server 2019.
Если проблемы с запуском Windows Server 2019 сохраняются после проверки аппаратных требований, переходите к следующему шагу по поиску и исправлению ошибок.
Проверьте соединение сетевых устройств и наличие интернет-соединения
Если пуск Windows Server 2019 не работает, первым шагом следует убедиться, что все сетевые устройства подключены и работают корректно. Проверьте, что все необходимые сетевые кабели вставлены в соответствующие разъемы и не повреждены. Также удостоверьтесь, что все светодиодные индикаторы на Ethernet-порту сервера горят или мигают, указывая на активность сети.
Кроме того, следует проверить наличие интернет-соединения на сервере. Убедитесь, что сервер подключен к рабочей сети и имеет доступ к Интернету. Для этого можно открыть веб-браузер и попробовать загрузить несколько веб-страниц. Если страницы не загружаются, возможно, проблема связана с настройками сетевых параметров или провайдером интернет-соединения.
В случае отсутствия доступа к интернету, рекомендуется проверить настройки сетевых адаптеров на сервере. Убедитесь, что сетевые адаптеры правильно настроены и имеют рабочие IP-адреса, подсети, шлюзы и DNS-серверы. Если необходимо, перезагрузите сетевые устройства, роутер, модем или коммутатор, чтобы восстановить соединение.
Также стоит проверить наличие активного брандмауэра на сервере. Брандмауэр может блокировать определенные сетевые порты, что может привести к проблемам с пуском. Отключите временно брандмауэр и проверьте, работает ли пуск Windows Server 2019 после этого. Если проблема решается, то рекомендуется настроить брандмауэр на сервере таким образом, чтобы он не блокировал необходимые для работы пуска порты.
Если после всех этих шагов проблема с пуском Windows Server 2019 не решается, возможно, причина кроется в других системных или программных настройках сервера. Рекомендуется обратиться к специалистам или изучить дополнительные ресурсы для решения подобных проблем.
Запустите систему в безопасном режиме и проведите диагностику
Если ваша операционная система Windows Server 2019 не работает должным образом и пуск не открывается, то одним из способов решения проблемы может быть запуск системы в безопасном режиме. В безопасном режиме система загружается только с базовыми драйверами и службами, что позволяет исключить влияние сторонних программ и драйверов на работу пуска.
Для того чтобы запустить систему в безопасном режиме, следуйте этим шагам:
- Перезагрузите компьютер.
- После загрузки BIOS нажмите клавишу F8 несколько раз, пока не появится экран с меню загрузки в безопасном режиме.
- Выберите «Безопасный режим» или «Безопасный режим с поддержкой сети» с помощью стрелок на клавиатуре и нажмите Enter.
После запуска системы в безопасном режиме вы можете провести диагностику, чтобы выяснить причину неработающего пуска. Вот несколько шагов, которые можно предпринять:
1. Проверьте автозагрузку программ.
Сконцентрируйтесь на программных приложениях и службах, которые запускаются вместе с операционной системой. Исключите из автозагрузки программы, которые могут создавать конфликты или вызывать ошибки в пуске Windows Server 2019.
2. Проверьте системные файлы.
Ошибки в системных файлах могут быть причиной неработающего пуска. Выполните команду sfc /scannow в командной строке для проверки целостности системных файлов и восстановления поврежденных файлов.
3. Проверьте вирусы и вредоносные программы.
Иногда вредоносные программы могут повлиять на работу пуска операционной системы. Установите и запустите антивирусное программное обеспечение для проверки системы на наличие вредоносных программ.
4. Обновите драйверы.
Устаревшие или несовместимые драйверы могут вызывать проблемы с пуском Windows Server 2019. Обновите драйверы до последних версий, скачав их с сайта производителя.
После проведения вышеописанных действий попробуйте перезагрузить систему в обычном режиме и проверить, работает ли пуск Windows Server 2019 как ожидается.
Проверьте целостность и настройки системных файлов
Шаг 1: Запустите командную строку с правами администратора.
Шаг 2: Введите команду sfc /scannow
и нажмите клавишу Enter.
Шаг 3: Дождитесь завершения сканирования и исправления системных файлов.
Шаг 4: После завершения процесса проверки, выполните перезагрузку сервера.
Шаг 5: Проверьте работу пуска Windows Server 2019. Если проблема не была решена, переходите к следующему шагу.
Примечание: Если процесс проверки закончится с сообщением о невозможности исправить все ошибки или потребуется восстановление системных файлов, вам может потребоваться использовать установочный диск или образ операционной системы.
Переустановите операционную систему Windows Server 2019
Если возникли серьезные проблемы с пуском Windows Server 2019 и ни одно из предыдущих решений не помогло, может потребоваться переустановка операционной системы. Переустановка позволит восстановить стандартные настройки и исправить любые повреждения системных файлов.
Прежде чем приступить к переустановке, убедитесь, что у вас есть резервная копия всех важных данных. Переустановка операционной системы может привести к удалению данных на жестком диске, поэтому обязательно сохраните все необходимые файлы на внешний носитель или в облачное хранилище.
Чтобы переустановить Windows Server 2019, выполните следующие шаги:
Шаг 1: Подготовка установочного носителя
Загрузите оригинальный дистрибутив операционной системы Windows Server 2019 с официального сайта Microsoft или используйте установочный диск. Затем создайте загрузочный носитель, следуя инструкциям на сайте Microsoft.
Шаг 2: Запуск установки
Вставьте загрузочный носитель в компьютер и перезагрузите систему. При загрузке выберите опцию загрузки с CD/DVD или USB, в зависимости от типа носителя, который вы создали. Затем следуйте инструкциям на экране, чтобы запустить установку.
Шаг 3: Выбор языка и региональных настроек
После запуска установки выберите нужный язык установки и региональные настройки для вашего сервера.
Шаг 4: Подтверждение лицензионного соглашения
Ознакомьтесь с лицензионным соглашением Microsoft и подтвердите свое согласие с ним, чтобы продолжить установку.
Шаг 5: Выбор типа установки
Выберите тип установки операционной системы: обновление или чистая установка. Если вы хотите сохранить предыдущие настройки и данные, выберите опцию обновления. Если вы хотите выполнить чистую установку и удалить все предыдущие настройки и данные, выберите опцию чистой установки.
Шаг 6: Выбор раздела для установки
Выберите раздел на жестком диске, где будет установлена операционная система Windows Server 2019. Если у вас есть несколько разделов, выберите нужный раздел и нажмите «Далее», чтобы продолжить.
Шаг 7: Установка и настройка операционной системы
После выбора раздела для установки операционной системы нажмите «Далее» и следуйте инструкциям на экране для установки и настройки Windows Server 2019. После завершения установки введите ключ активации, если это требуется, и выполните необходимые настройки, такие как имя компьютера и пароль администратора.
Шаг 8: Восстановление данных
После переустановки операционной системы Windows Server 2019 восстановите резервную копию важных данных. Перенесите файлы с внешнего носителя или с облачного хранилища на ваш сервер.
После завершения переустановки операционной системы Windows Server 2019 восстановите нужные программы и настройки. Убедитесь, что все необходимые обновления установлены, чтобы обеспечить безопасность и стабильность работы сервера.
Переустановка операционной системы Windows Server 2019 может быть достаточно времязатратной процедурой, поэтому используйте этот метод только в случае серьезных проблем с пуском системы и после тщательного анализа других возможных решений проблемы.
A customer informed us that some users were getting a black screen after logon and others could not open the start menu after they got past the black screen. The customer restarted the RDS host but the issue was not resolved.
When checking the event logs I noticed system events with ID 10001 like the one below
This led me to think there was an issue with Appx and came across some material that suggested repairing Cortana. Trying to run the suggested PowerShell command failed and upon reviewing the AppPackage Log as suggested by the failure error I noticed that the package did not install because of insufficient resources. The system had only 6GB out of 128GB ram used and CPU (8 Cores) were at 2%
Searching further, I found this technet forum post in which the cause and solution are discussed.
Basically, every time a user logs into the RDS server, a new set of firewall rules is created and are not removed when the users log off, but new ones are re-created when they login again. This appears to happen most when using User Profile Disks (UPD). You may notice at this time that when trying to open WWindows Defender Firewall with Advanced Security to view the rules, the window would take a very long time to appear and end up in a “Not Responding” state.
This was resolved in Windows Server 2016 and 2019 by installing a Windows update, link for 2016 and 2019, and manually applying a registry key.
The updates were already installed so we proceeded to add the registry key as per below using Regedit.
Add “DeleteUserAppContainersOnLogoff” (DWORD) in “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy” and set it to 1.
We logged off and logged back in and the Start menu was working again. All the other users also reported that this resolved the issue.
At this stage it is suggested that the previously created firewall rules are also deleted. These are the registry keys were the rules are stored.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\FirewallRules (Server 2016 and 2019)
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\\RestrictedServices\AppIso\FirewallRules (Server 2019 only)
Instead of deleting the whole set of entries, we decided on taking another path and use the PowerShell script provided by user Paul Boerefijn CCS which removes the firewall rules and keeps a set of unique rules. The process was going to take over 15hrs to remove 12,000 inbound rules and we don’t know how long it was going to take to remove the outbound rules. So instead we used a different script found on stackoverflow which rather than using the “Remove-NetFirewallRule” PowerShell command it removed the rules directly from within the registry with the “Remove-ItemProperty” command which sped up the process and all 30,000 rules were deleted in 1.5Hrs. The script used is available below with some minor additions
NOTE Make sure that you change the Rule2 deletion line to match the correct registry path depending on which windows server version you are running it on. These are indicated in the script
#Script thanks to user js2010
#source https://stackoverflow.com/a/40915201
#added registry paths notes
$profiles = get-wmiobject -class win32_userprofile
Write-Host "Getting Firewall Rules"
# deleting rules with no owner would be disastrous
$Rules = Get-NetFirewallRule -All |
Where-Object {$profiles.sid -notcontains $_.owner -and $_.owner }
Write-Host "Getting Firewall Rules from ConfigurableServiceStore Store"
$rules2 = Get-NetFirewallRule -All -PolicyStore ConfigurableServiceStore |
Where-Object { $profiles.sid -notcontains $_.owner -and $_.owner }
$total = $rules.count + $rules2.count
Write-Host "Deleting" $total "Firewall Rules:" -ForegroundColor Green
$result = measure-command {
# tracking
$start = Get-Date; $i = 0.0 ;
foreach($rule in $rules){
# action
remove-itemproperty -path "HKLM:\System\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\FirewallRules" -name $rule.name
# progress
$i = $i + 1.0
$prct = $i / $total * 100.0
$elapsed = (Get-Date) - $start;
$totaltime = ($elapsed.TotalSeconds) / ($prct / 100.0)
$remain = $totaltime - $elapsed.TotalSeconds
$eta = (Get-Date).AddSeconds($remain)
# display
$prctnice = [math]::round($prct,2)
$elapsednice = $([string]::Format("{0:d2}:{1:d2}:{2:d2}", $elapsed.hours, $elapsed.minutes, $elapsed.seconds))
$speed = $i/$elapsed.totalminutes
$speednice = [math]::round($speed,2)
Write-Progress -Activity "Deleting rules ETA $eta elapsed $elapsednice loops/min $speednice" -Status "$prctnice" -PercentComplete $prct -secondsremaining $remain
}
# tracking
# $start = Get-Date; $i = 0 ; $total = $rules2.Count
foreach($rule2 in $rules2) {
# action
#change path according to the Windows Server version used:
#Windows Server 2019 Path = "HKLM:\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\RestrictedServices\AppIso\FirewallRules"
#Windows Server 2016 Path = "HKLM:\System\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\RestrictedServices\Configurable\System"
remove-itemproperty -path "HKLM:\System\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\RestrictedServices\Configurable\System" -name $rule2.name
# progress
$i = $i + 1.0
$prct = $i / $total * 100.0
$elapse = (Get-Date) - $start;
$totaltime = ($elapsed.TotalSeconds) / ($prct / 100.0)
$remain = $totaltime - $elapsed.TotalSeconds
$eta = (Get-Date).AddSeconds($remain)
# display
$prctnice = [math]::round($prct,2)
$elapsednice = $([string]::Format("{0:d2}:{1:d2}:{2:d2}", $elapsed.hours, $elapsed.minutes, $elapsed.seconds))
$speed = $i/$elapsed.totalminutes
$speednice = [math]::round($speed,2)
Write-Progress -Activity "Deleting rules2 ETA $eta elapsed $elapsednice loops/min $speednice" -Status "$prctnice" -PercentComplete $prct -secondsremaining $remain
}
}
$end = get-date
write-host end $end
write-host eta $eta
write-host $result.minutes min $result.seconds sec
Once the script completes, the rules are removed and you will notice that the Windows Defender Firewall with Advanced Security window would open normally.
Both scripts catered to avoid deleting the rules which had no owner set in the properties. Deleting these rules could case problems.
The purpose of this blog post is to try and consolidate all the information we found to resolve the issue. A big thanks goes to all the contributors in the different forums.
Hope you find it useful.
By Brian Farrugia
I am the author of Phy2Vir.com. More info can be found on the about page.
Обновлено 05.08.2021
Добрый день! Уважаемые читатели и гости одного из крупнейших IT блогов Pyatilistnik.org. В прошлый раз мы с вами научились создавать резервные копии сертификатов и копировать их в нужное вам расположение, в этом нам помогали две утилиты, robocopy и keytool. Сегодня же я с вами опять хочу заняться траблшутингом, а именно одной из неприятных ситуаций которая присутствует в операционной системе Windows Server, аж с 2012 года. Мы рассмотрим методы решения, когда у вас не работает пуск в Windows Server 2016. При попытке его открыть, просто ничего не происходит и вы лишаетесь огромного удобства связанного с этим.
Описание ситуации
В инфраструктуре предприятия есть отказоустойчивая RDS ферма на базе Windows Server 2016, на одном из RDSH серверов у пользователей возникла проблема, что при попытке открыть меню «Пуск» ничего не происходит, кнопка просто не реагирует. Это очень пагубно сказывается на работу сотрудников, так как не все из них могут запускать необходимые для них программы и не все знают, короткие команды для меню «Выполнить», через которые можно открывать кучу вещей. Как я и писал выше данный глюк еще существует со времен Windows Server 2012 и так же легко может встретиться и в Windows Server 2019, спасибо Microsoft.
Сразу хочу отметить, что в ряде случаев вам придется изрядно попотеть, чтобы восстановить работу меню пуск, и иногда быстрее просто переустановить сервер, если конечно на нем нет ничего такого экстраординарного. Хочу выделить вот такой список почему не работает пуск:
- В системе завис процесс отвечающий за меню «Пуск»
- Ваша система имеет поврежденные файлы и компоненты, например из-за вируса
- В вашей системе слетели права на папку или ветку реестра, отвечающих за открытие кнопки пуск
- Прилетело глючное обновление Windows
- Сторонние утилиты, после установки которых идет конфликт в системе
Так как на устранение этой ошибки у меня ушло уйма времени и я перепробовал кучу всего, я решил все это структурировать и записать в виде отдельной статьи, в расчете, что мой путь будет кому-то полезен
Перезапускаем процесс отвечающий за работу кнопки пуск
Логично предположить, что в операционных системах Windows за любой компонент, отвечает тот или иной процесс и кнопка пуск, тут не исключение. За ее функционал отвечают два процесса:
- Explorer.exe (Проводник)
- StartMenuExperienceHost.exe (Запустить)
Зная, это я в первую очередь всегда советую попробовать их перезапустить, так как это просто и не потребует перезагрузки сервера. Для этого нажмите одновременно три кнопки CTRL+SHIFT+ESC, это запустит диспетчер задач, через который вы сможете выполнить нашу задумку.
Сразу отмечу, что найти процессы вы можете и на вкладке «Процессы», а так же на вкладке «Подробности». Разница в том, что на первой все почти будет по русски, а на второй все чисто системными именами. Процесс Explorer.exe в русской версии называется «Проводник», щелкаем по нему правым кликом мышки и из контекстного меню выберите пункт «Перезапустить» или «Снять задачу», иногда это требуется.
Процесс StartMenuExperienceHost.exe в русской версии называется «Запустить»
Ну и на вкладке «Подробности» вы можете найти все то же самое.
Если вы именно снимите задачу «Проводника», то у вас пропадет все и останется только диспетчер задач. Далее нажмите в верхнем меню «Файл — Создать задачу» и в открывшемся окне введите explorer.exe и нажмите «Enter». Это вернет вам проводник и не потребуется перезагрузка сервера
Во многих случаях, это помогает исправить критическую ошибку, когда не работает кнопка пуск на вашем сервере, это такой лайтовый вариант.
Отсутствие прав на запуск пуска
В огромном количестве случаев бывает так, что причиной по которой вас не открывается и вообще ни как не реагирует меню псу, это отсутствие прав на компонент {316CDED5-E4AE-4B15-9113-7055D84DCC97}. Ранее мы уже встречались с вами с компонентом {316CDED5-E4AE-4B15-9113-7055D84DCC97}, когда устраняли ошибку ID 10016. Просто если кто не в курсе, то Windows видит все функции, компоненты в виде GUID номеров, и вот панель «Пуск» имеет вид {316CDED5-E4AE-4B15-9113-7055D84DCC97}, тут нет ничего сложного. Если посмотреть реестр Windows, то вы обнаружите запись:
HKEY_CLASSES_ROOTWOW6432NodeAppID{316CDED5-E4AE-4B15-9113-7055D84DCC97}
Immersive Shell — это и есть интерфейс Metro в Windows. Понимая это нужно удостовериться, есть ли у вас права на его использование или нет.
Для этого я использую скрипт DCOMPermissions.psm1.
Поместите его в доступную папку, у меня это будет C:Share.
Далее я вам советую запустить оболочку PowerShell ISE в режиме администратора, она находится по пути:
C:WindowsSystem32WindowsPowerShellv1.0
Щелкаем по значку powershell_ise.exe правым кликом и выбираем пункт «Запуск от имени администратора».
выполните команду, которая позволит запускать неподписанные скрипты:
Выберите пункт «Y».
Далее переходим в нашу папку, где лежит скрипт и импортируем данный модуль.
cd C:Share
Import-Module .DCOMPermissions.psm1
Далее даем права для группы «NT AUTHORITYПрошедшие проверку»
Grant-DCOMPermission -ApplicationID «{316CDED5-E4AE-4B15-9113-7055D84DCC97}» -Account «NT AUTHORITYПрошедшие проверку» -Type Launch -Permissions LocalLaunch,LocalActivation -OverrideConfigurationPermissions
Далее проверим, что на контейнер {316CDED5-E4AE-4B15-9113-7055D84DCC97} на значились наши права, для этого выполните:
Get-DCOMPermission -ApplicationID «{316CDED5-E4AE-4B15-9113-7055D84DCC97}» -Type Launch
Как видим NT AUTHORITYПрошедшие проверку есть в списке, по идее кнопка пуск у вас сразу должна заработать, но если не заработает, то нужно перезагрузиться или сделать выход из системы (logoff).
Перезапуск службы поиска
Если перестал работать пуск, то из быстрых решений можете проверить, что у вас запущена служба поиска и сам процесс. Перейдите в оснастку службы (services.msc) и найдите там службу «Windows Search«, убедитесь, что она запущена и что у нее тип запуска «Автоматически«.
Так же откройте «Диспетчер задач», вкладка «Подробности». Найдите там SearchUI.exe и снимите у него задачу, он будет перезапущен.
То же самое вы можете найти и на вкладке «Процессы», тут уже будет «Поиск»
Восстанавливаем работу пуск через средство диагностики
Следующим методом, я вам настоятельно рекомендую использовать разработанную в Microsoft утилиту «Средство диагностики и исправления проблем с кнопкой «Пуск (startmenu.diagcab)’».
Запускаем утилиту, она покажет, что будет искать проблемы с работой главного меню «Пуск». Нажмите далее.
Утилита начнет сканирование и обнаружение проблем.
Через некоторое время вы получите результат. Если все хорошо, то статус будет «Модуль устранения неполадок не выявил проблемы«
При желании вы можете более детально посмотреть все пройденные проверки, через пункт «Просмотреть дополнительные сведения«
Что именно проверяет средство устранения неполадок по мимо установки пакетов. Проверяет, есть ли у текущего пользователя разрешения на доступ к следующему разделу реестра, и при необходимости исправляет списки управления доступом:
HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersion DeviceAccessGlobal
Если же есть проблемы, то вы можете увидеть такие сообщения об ошибке, которые не удается исправить:
Reauired application are not installed correctly. Install the applications
Ругается, что компоненты не установлены.
Reauired application are not installed correctly “Microsoft.Windows.ShellExperienceHost” and “Microsoft.Windows.Cortana” applications are installed correctly»
Как видите, он нам тонко намекает, что хорошо бы переустановить Microsoft.Windows.ShellExperienceHost.
Как повторно зарегистрировать компоненты меню Пуск в Windows Server 2016
Очень часто меню «Пуск» может не работать из-за поврежденного или отсутствующего пакета. Никто вам не мешает заново зарегистрировать меню «Пуск» . С помощью Windows PowerShell вы можете сделать это возможным, инструкции по использованию которого упомянуты ниже. Обратите внимание, что для применения этого трюка вам необходимо войти в систему как администратор, поэтому, если ваша система является частью домена, это может не сработать, так как обычно у пользователей минимальные права на рабочей станции.
Первое, что вы должны сделать для того, чтобы заново зарегистрировать пакет отвечающий за ваше меню «Пуск», это запустить ОБЯЗАТЕЛЬНО в режиме администратора оболочку PowerShell. В окне PowerShell вам необходимо ввести вот такую команду:
Get-appxpackage -all *shellexperience* -packagetype bundle |% {add-appxpackage -register -disabledevelopmentmode ($_.installlocation + “appxmetadataappxbundlemanifest.xml”)}
После успешного выполнения команды вы можете закрыть окно PowerShell и перезагрузить компьютер. После перезапуска системы проблемы, с которыми вы столкнулись с меню «Пуск», должны быть решены.
Если вы потом по прежнему не можете взаимодействовать с кнопкой «Пуск» и средство проверки, все так же показывает отсутствие компонентов «Microsoft.Windows.ShellExperienceHost» and «Microsoft.Windows.Cortana», то причиной может быть ваш антивирус, например Comodo Internet Security или Symantec.
Удаление антивируса для ремонта кнопки «Пуск»
Бывают неприятные ситуации, когда программа, которая призвана вас защищать ломает вашу систему или ее компоненты, случаев таких полно. Если у вас в ОС есть антивирусные решения, отличные от защитника Windows, то можно попробовать их удалить (Avast, Comodo).
Удалять антивирус можно как и любую обычную программу, при желании можете скачать с сайта производителя специальную утилиту для этих вещей, обычно они есть у каждого антивируса. После удаления антивируса, обязательно перезагрузите сервер или компьютер. Далее когда система вновь загрузится, откройте PowerShell в режиме администратора и введите команды:
Get-AppxPackage Microsoft.Windows.ShellExperienceHost | Foreach {Add-AppxPackage -DisableDevelopmentMode -Register «$($_.InstallLocation)AppXManifest.xml»}
Get-AppxPackage Microsoft.Windows.Cortana | Foreach {Add-AppxPackage -DisableDevelopmentMode -Register «$($_.InstallLocation)AppXManifest.xml»}
Get-AppxPackage Microsoft.Windows.StartMenuExperienceHost | Foreach {Add-AppxPackage -DisableDevelopmentMode -Register «$($_.InstallLocation)AppXManifest.xml»}
Или перерегистрировать все сразу пакеты:
Get-AppXPackage -AllUsers | Foreach {Add-AppxPackage -DisableDevelopmentMode -Register «$($_.InstallLocation)AppXManifest.xml»}
Далее откройте реестр Windows и перейдите в раздел:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices WpnUserService
Находим тут ключ с именем «Start‘, щелкаем по нему двойным щелчком мыши и меняем значение на 4. После чего обязательно перезагрузите вашу систему. Это должно исправить ситуацию, когда не работает меню пуск в Windows.
Восстановление поврежденных компонентов в системе
Очень часто, одной из причин почему не работает пуск, является, повреждение файловой системы Windows и ее компонентов, в следствии чего вы будите получать еще и ошибку:
Критическая ошибка: Меню «Пуск» и приложение Кортана не работают. Мы попытаемся исправить эту проблему при следующем выполнении входа.
Critical Error: Start menu and Cortana aren’t working. We’ll try to fix it the next time you sign in.
В такой ситуации нужно выполнить один скрипт, который позволит вам все быстро проверить и восстановить. Про скрипт я уже рассказывал в статье, где мы ремонтировали ошибки «80244010 и C80003FB».
После того, как вы его загрузите и распакуете, вам нужно запустить от имени администратора файл ResetWUEng.cmd
В результате чего у вас будет запущен скрипт, на экране ознакомления вам нужно подтвердить, что вы его запускаете, для этого нажмите «Y».
Перед вами появятся все возможности данного скрипта Reset Windows Update Tool. Нас будут интересовать пункты с 5-го по 11.
Выбираем пятый пункт (Runs Chkdsk on the Windows Partition), чтобы проверить наш диск C: на наличие программных и физических ошибок. Вас уведомят, что это можно выполнить при следующей перезагрузке системы, подтвердите нажав клавишу «Y».
Перезагрузите вашу систему. Для этого можно выбрать 19 пункт «Restarts your PC«
Вот так будет выглядеть проверка на ошибки в Windows. После того, как загрузиться ваша система сразу проверьте, открывается ли у вас кнопка пуск или нет. Если нет, то переходим к следующему пункту скрипта.
Выбираем шестой пункт «Run the System File Cheker Tool«, по сути у вас будет запущена команда (sfc /scannow). Использование средства проверки системных файлов довольно длительный процесс, поэтому вам придется запастись терпением.
Дожидаемся завершения. Если будут найдены ошибки, то sfc попробует их исправить. Могут быть ситуации, что это не получается и вам нужно переходить к следующему пункту. Если целостность была восстановлена, то попробуйте перезагрузится и удостовериться, что ваше меню «Пуск» снова стало активным. Хочу отметить, что весь процесс сканирования будет отображен в логах, где так же можно посмотреть отдельные ошибки:
Путь к файлу логу %WinDir%LogsCBSCBS.log
Если у вас по прежнему не работает меню «Пуск», то выбираем пункт 8 «Checks the image for component store corruprion«. У вас будет выполнена команда (dism /checkhealth). В идеале повреждений не должно быть. Если оно обнаружено, то переходим к пункту 9.
Запускаем пункт «Perform repair operations automatically‘». Это аналог команды (dism /online /cleanup-image /restorehealth). Через некоторое время, все должно быть восстановлено.
Если восстановление не получилось, то необходимо открывать лог файл и смотреть ошибки. Найти их можно по пути:
C:WindowsLogsDISMdism.log
Если по каким-то причинам у вас нет возможности скачать мой скрипт, или у вас нет на сервере интернета, то просто выполните по очереди команды:
- sfc /scannow
- DISM /Online /Cleanup-Image /ScanHealth
- DISM /Online /Cleanup-Image /CheckHealth
- DISM /Online /Cleanup-Image /RestoreHealth
не забываем потом перезагрузиться.
Переходим к 11 пункту (Deletes any incorrect registry values) и постараемся удалить старые и неправильные записи в реестре.
На всякий случай на вашем рабочем столе будет создана резервная копия всего реестра. После чего начинается диагностика и очистка реестра Windows от мусорных записей. Если операция успешно завершена, я вам предлагаю перезагрузиться и проверить стал ли теперь работать «Пуск» (Постарайтесь сразу папку с резервной копией реестра не удалять, а хотя бы недельку подержать на всякий случай)
Если у вас нет возможности скачать скрипт описанный выше, то вы можете так же в командной строке выполнить код:
sfc /scannow & DISM /Online /Cleanup-Image /ScanHealth & DISM /Online /Cleanup-Image /CheckHealth & DISM /Online /Cleanup-Image /RestoreHealth
Восстановление базы данных TileDataLayer
Бывает так, что локальный профиль пользователя может быть поврежден. В частности, могут быть повреждены база данных TileDataLayer, папка пакетов и файл UsrClass.dat. Попробуем восстановить их.
У вас должна быть учетная запись, в которой нет проблем с меню «Пуск», так как вам нужны хорошие копии базы данных TileDataLayer для копирования. Это можно сделать с другого сервера с Windows Server 2016
Алгоритм действий такой.
- Вы заходите на сервер с Windows Server 2016, где работает кнопка «Пуск». Обязательно убедитесь, что у вас там есть две учетные записи с административными правами, это связано с тем, что когда сессия пользователя активна, у нее используются файлы из папки TileDataLayer , они заблокированы, поэтому вам и нужно их скопировать со второй учетной записи, которая в данный момент не активна на сервере. Папка лежит по пути «%LOCALAPPDATA%TileDataLayerDatabase«
- Далее вы заходите на сервер, где не работает кнопка пуск. Необходимо войти в систему с учетной записью администратора с правами на оба профиля пользователя. Перейдите по пути, заменив логин на имя сбойного.
C:Usersваш логинAppDataLocal
- Переименуйте или удалите папку Packages, лично я переименовал в папку Packages.old
- Удалите или переименуйте файл UsrClass.dat по пути «C:Usersлогин сбойной учеткиAppDataLocalMicrosoftWindowsUsrClass.dat». Я переименовал его в UsrClass.old
- Далее вам нужно заменить битую папку TileDataLayer на рабочую, ту что вы скопировали с другого сервера. Напоминаю, куда ее подложить «C:Usersлогин поврежденной учеткиAppDataLocalTileDataLayerDatabase»
- Перезагружаемся и проверяем работу меню «Пуск»
Проверка политики Applocker
Applocker — действительно хорошая функция, но, как и все функции безопасности, у нее есть некоторые подводные камни. Один из них заключается в том, что если вы включите Applocker в Windows 10 или Windows Server 2016, то кнопка «Пуск» больше не будет работать. Если щелкнуть левой кнопкой мыши, ничего не произойдет.
Если у вас есть контроллер домена Windows 2008 R2, то вы не увидите «Правила для упакованных приложений» в консоли управления групповой политикой. Вам нужно будет создать эту политику на сервере Windows Server 2012 или выше с GPMC. Чтобы решить эту проблему, вам необходимо создать правила для упакованных приложений в групповой политике Applocker. Для этого выполните следующие действия
- Перейдите в «Конфигурация компьютера — Политики — Конфигурация Windows — Параметры безопасности — Политики управления приложениями — Applocker»
- 2. Щелкните правой кнопкой мыши «Правила пакетных приложений» и выберите «Создать правила по умолчанию».
- После обновления групповой политики к рабочей станции Windows 10 кнопка «Пуск» снова заработает.
Создание новой учетной записи
Нужно выяснить является ли проблема на уровне сервера или же на уровне вашей учетной записи. Для это вы можете в случае с доменным компьютеров попробовать войти под другой учетной записью и проверить открывается ли пуск или нет. В случае с обычным серверов Windows Server 2016, который находится в рабочей группе, я вам советую создать новую учетную запись и проверить уже под ней. Для этого в командной строке в режиме администратора введите:
net user имя пользователя пароль /add (В моем примере net user pusk 123456 /add)
Далее пробуем зайти под новым пользователем, если вы используете удаленное подключение к рабочему, столу то не забываем дать учетной записи административные права
Отключение некоторых функций меню «Пуск»
Что еще делать если не работает пуск? Вы можете проверить не активирована ли у вас опция «Открывать начальный экран в полноэкранном режиме». Для этого вызовите окно «Выполнить» и введите в нем:
ms-settings:personalization-start
Уберите ползунок с опции «Открывать начальный экран в полноэкранном режиме».
Если у вас есть проблемы с файловой системой, то можете получить ошибку:
ms-settings:personalization-start the wait operation timed out
Нужно снова проверить ее на ошибки через утилиты sfc и DISM.
Не работает пуск из за UPD дисков
Очень часто на RDS ферме используются UPD диски, из-за которых может не работать панель пуска, казалось, что это было решено до появления Spectre patch, а затем снова вернулось. Когда это происходит, в %localappdata%Packages присутствует только 1 или 2 папки, должно быть 15. Вот пример скрипта Powershell, который вам поможет это исправить, запускать необходимо в контексте пользователя у которого не работает кнопка пуск.
$packages = Get-ChildItem -Path «$env:USERPROFILEAppDataLocalPackages»
if($packages.count -lt 14){
$apps = Get-ChildItem -Recurse -Path «C:WindowsSystemApps»,»C:WindowsImmersiveControlPanel», «C:WindowsPrintDialog»,»C:WindowsMiracastView» -Include «AppXManifest.xml»
Foreach($app in $apps){
Add-AppxPackage -DisableDevelopmentMode -Register «$app» -Verbose}
}
Else{
$null}
Скачать готовый скрипт — https://cloud.mail.ru/public/5NZx/4rrcJzqNr
Восстановление поврежденного профиля
Итак, что делать если не работает пуск даже после всех вышеописанных методов. Одной из причин может быть поврежденный профиль пользователя, как правило в реестре создается его копия с проблемами, я уже такое рассматривал в статье «Невозможно загрузить профиль пользователя». Вам нужно для начала выяснить SID пользователя у которого есть проблемы с меню «Пуск», а далее выполняем поэтапно следующие шаги:
Обязательно сохраните все данные из поврежденного профиля
- Войдите на сервер с другой учетной записью администратора.
- Удалите профиль пользователя в c:users<поврежденный профиль>
- Перейдите в реестр к ветке HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NT CurrentVersion ProfileList
- Изучите каждую запись SID для «ProfileImagePage REG_EXPAND_SZ» C:users<поврежденный профиль>»
- Удалить запись SID.
- Выйти
- Войдите как пользователь <поврежденный профиль>, чтобы создать новый профиль.
Не работает пуск из-за брандмауэра
Не знаю в чем прикол, но в ряде случаев вам потребуется выполнить удаление ключей реестра отвечающих за правила брандмауэра и заново их воссоздание. Запустите в PowerShell команды:
Remove-Item «HKLM:SYSTEMCurrentControlSetServicesSharedAccess ParametersFirewallPolicyRestrictedServicesConfigurableSystem»
New-Item «HKLM:SYSTEMCurrentControlSetServicesSharedAccess ParametersFirewallPolicyRestrictedServicesConfigurableSystem»
Remove-Item «HKLM:SYSTEMCurrentControlSetServicesSharedAccess ParametersFirewallPolicyFirewallRules»
New-Item «HKLM:SYSTEMCurrentControlSetServicesSharedAccess ParametersFirewallPolicyFirewallRules»
Remove-Item «HKLM:SOFTWAREMicrosoftWindows NTCurrentVersion Notifications» -Recurse
New-Item «HKLM:SOFTWAREMicrosoftWindows NT CurrentVersionNotifications»
Для Windows Server 2019, вот такую ветку нужно удалить и воссоздать: HKLM:SYSTEMCurrentControlSetServicesSharedAccess ParametersFirewallPolicyRestrictedServicesAppIsoFirewallRules
Скачать готовый скрипт — https://cloud.mail.ru/public/3mKR/NZtmoQS95
Делаем, мы это для того, чтобы удалить огромное количество записей в данной ветке, которые почему-то генерирует брандмауэр. Вот пример нормального содержимого, количество записей свыше 7000
А вот пример, где количество записей превышает свыше 250 00 и это не нормально, и может спокойно ломать кнопку пуск.
Удаление Dropbox
Если у вас на сервере Windows Server 2016 установлена старая версия Dropbox, то попробуйте ее удалить и если она вам нужна поставьте более свежую версию.
Отключение UAC
Если у вас были манипуляции с правами и кнопка пуск перестала открываться, то попробуйте отключить UAC, чтобы удостовериться является ли он причиной или нет.
Удаление обновления
Если у вас был установлен кумулятивный, месячный апдейт, то попробуйте удалить новую KB, после чего перезагрузите сервер и проверьте вашу кнопку пуск.
На этом у меня все, я постарался собрать все известные мне методы, которые могут помочь вам решить проблему с неработоспособностью меню «Пуск». С вами был Иван Семин, автор и создатель IT портала Pyatilistnik.org.