Не подключаются сетевые диски в Windows 10 после перезагрузки
В последних билдах Windows 10 встречался неприятный баг, из-за которого перестают подключаться сетевые диски после перезагрузки компьютера. После входа в систему пользователь в проводнике Windows видит красный крест на иконках всех подключенных сетевых дисков. Если в командой строке выполнить команду net use, то напротив всех подключенных дисков вы увидите статус Недоступны (Unavailable). Автоматически не переподключаются как сетевые диски, подключенные пользователем, так и диски, подключаемые через GPO.
Впервые эта проблема была обнаружена в Windows 10 1809, но она встречается и в более новых билдах, в том числе в Windows 10 2004.
Windows 10 не восстанавливает подключение к сетевым дискам
Windows 10 по какой-то причине перестает автоматически подключать сетевые диски после перезагрузки компьютера. Сетевые диски отображаются в проводнике, но подключиться к ним нельзя.
При этом в области уведомлений появляется всплывающее окно с текстом:
Could not reconnect all network drives.
Не удалось восстановить подключения ко всем сетевым дискам.
Проблема возникает как с дисками, подключенных с NAS устройств, так и с сетевыми папками на других компьютерах Windows/Linux. Этот баг впервые появился в Windows 10 1809 и по словам Microsoft исправлен обновлением KB469342 выпущенным 5 декабря 2018 года (addresses an issue that may cause mapped drives to fail to reconnect after starting and logging onto a Windows device). Но проблема встречается и в других билдах Windows 10.
Вы можете скачать и установить обновление из Microsoft Update Catalog вручную.
Также Microsoft предлагает обходное решение проблемы с восстановлением подключения к сетевым дискам (см. KB4471218 — Mapped network drive may fail to reconnect in Windows 10). Для этого при входе пользователя в систему предлагается запускать PowerShell скрипт, который должен переподключить все недоступные сетевые диски. Если сетевые диски подключаются через групповые политики, нужно изменить настройки GPO.
PowerShell скрипт для автоматического переподключения сетевых дисков
Рассмотрим, как использовать PowerShell скрипт для автоматического переподключения сетевых дисков при входе пользователя в Windows.
Откройте блокнот (notepad.exe), скопируйте в него следующий PowerShell код и сохраните файл в каталог C:\PS с именем MapDrives.ps1:
$i=3
while($True){
$error.clear()
$MappedDrives = Get-SmbMapping |where -property Status -Value Unavailable -EQ | select LocalPath,RemotePath
foreach( $MappedDrive in $MappedDrives)
{
try {
New-SmbMapping -LocalPath $MappedDrive.LocalPath -RemotePath $MappedDrive.RemotePath -Persistent $True
} catch {
Write-Host «Ошибка подключения сетевого каталога $MappedDrive.RemotePath в диск $MappedDrive.LocalPath»
}
}
$i = $i — 1
if($error.Count -eq 0 -Or $i -eq 0) {break}
Start-Sleep -Seconds 30
}
Данный скрипт выбирает все недоступные сетевые диски и пытается их переподключить в постоянном режиме (ключ Persistent).
Создайте еще один файл сценария MapDrives.cmd с кодом:
PowerShell -Command «Set-ExecutionPolicy -Scope CurrentUser Unrestricted» >> «%TEMP%\StartupLog.txt» 2>&1
PowerShell -File «%SystemDrive%\PS\MapDrives.ps1» >> «%TEMP%\StartupLog.txt» 2>&1
Данный код позволяет корректно вызвать PowerShell скрипт, описанный выше.
Вы можете поместить файл в автозагрузку пользователя, скопировав файл MapDrives.cmd в каталог %ProgramData%\Microsoft\Windows\Start Menu\Programs\StartUp.
Также вы можете создать задание планировщика, которое должно запускать файл MapDrives.cmd при входе пользователя в систему. Вы можете создать задание планировщика с помощью PowerShell или из графического интерфейса консоли планировщика Windows (Taskschd.msc).
Создайте новое задание, укажите его имя, выберите что задание должно запускаться от имени встроенной группы Пользователи (Builtin\Users).
На вкладке Триггеры выберите, что задание должно выполняться при входе в систему любого пользователя (At logon -> Any user).
На вкладке действие в поле Программа укажите путь к файлу MapDrives.cmd.
На вкладке Условие можно включить опцию Сеть -> Запускать только при подключении к следующей сети -> Любое подключение.
Перезайдите в систему или выполните перезагрузку компьютера. При входе пользователя должен запуститься PowerShell скрипт, которые пересоздаст все подключения к сетевым дискам.
Обратите внимание, что по-умолчанию сетевые диски, подключенные в привилегированном режиме недоступны в обычном и наоборот.
Подключение сетевых дисков через GPO
Если вы подключаете сетевые диски пользователям с помощью доменной GPO, то для корректного переподключения дисков нужно изменить настройки политики.
Откройте политику, подключающую диски, и в разделе User Settings -> Preferences -> Windows Settings -> Drive maps найдите вашу политику (политики) назначения сетевых дисков и измените тип действия с Update на Replace.
После обновления параметров групповых политик на клиентах при входе пользователя в систему, сетевые диски будут удалены и назначены снова.
Не подключаются сетевые диски в Windows 10 2004
Проблема с подключением сетевых дисков также наблюдается в билде Windows 10 2004. Проблема возникает с сетевыми дисками, подключенных с legacy устройств с поддержкой только протокола SMBv1 (Windows XP/2003, старые NAS устройства).
Для решения этой проблемы нужно прописать в реестре пользователя для каждого подключенного сетевого диска параметр ProviderFlags =1.
Например, если у пользователя в сессии подключен сетевой диск U:, перейдите в раздел реестра HKEY_CURRENT_USER\Network\U. Создайте параметр типа DWORD с именем ProviderFlags и значением 1.
Или выполните команду:
REG ADD «HKCU\Network\U» /v «ProviderFlags» /t REG_DWORD /d «1» /f
Настроить задержку подключения сетевых дисков в Windows через GPO
Windows может пытаться переподключить сетевые диски при входе пользователя до полноценной инициализации сетевого интерфейса. Чтобы предотвратить подключение сетевых дисков до полного включения сети, вы можете включить специальный параметр групповой политики.
Вы можете настроить этот параметр через редактор локальной групповой политики ( gpedit.msc ) или из редактора доменных GPO ( gpmc.msc ). Перейдите в раздел Computer Configuration -> Administrative Templates -> System -> Logon и включите политику Always wait for the network at computer startup and logon (Всегда ожидать инициализации сети при загрузке и входе в систему).
Перезагрузите компьютер.
Также эту проблему можно решить, если просто подождать 15 секунд после загрузки компьютера (или выхода его из режима гибернации/спящего режима), прежде чем логиниться. Этого времени будет достаточно, чтобы Windows инициализировала сеть.
Отключить уведомление “Не удалось восстановить подключение ко всем сетевым дискам”
Если ваш компьютер находится не в сети предприятия (сетевые диски не доступны по определению), и вам мешает назойливое уведомление “Не удалось восстановить подключение ко всем сетевым дискам” при каждой загрузке Windows, вы можете его отключить.
Для этого в ветке реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\NetworkProvider нужно создать параметр типа DWORD с именем RestoreConnection и значением 0.
Все способы:
- Способ 1: Проверка связи
- Способ 2: Настройка параметров общего доступа
- Способ 3: Активация протокола SMB 1.0
- Способ 4: Создание сценариев
- Вариант 1: Создание элемента автозагрузки
- Вариант 2: «Планировщик задач»
- Способ 5: «Редактор реестра»
- Способ 6: Сброс сети
- Вопросы и ответы: 1
Способ 1: Проверка связи
В первую очередь проверьте, есть ли связь между компьютерами, находящимися в одной сети. Для этого нужно узнать IP-адрес удаленного устройства. В Windows 10 существует несколько способов посмотреть данные, которые нужно переписать или запомнить, поскольку они понадобятся для проверки связи. Ознакомьтесь с нашей инструкцией и подберите для себя подходящий вариант.
Подробнее: Определение IP-адреса компьютера в Windows 10
Как только IP-адрес удаленного компьютера будет известен, на локальном устройстве воспользуйтесь встроенной утилитой для проверки доступности ПК:
- Откройте консоль «Командная строка», отыскав ее через системный поиск.
- В окне введите
ping
, а после команды IP-адрес удаленного компьютера.
Остается дождаться окончания проверки. Если все пакеты прошли успешно, значит, с подключением все в порядке, и можно смело приступать к настройке сетевого диска удаленного компьютера.
Подробнее: Подключение сетевого диска в Windows 10
Если были обнаружены потери, причиной неудачного подключения сетевого диска может стать как физическое повреждение коммуникаций, так и сбои в работе системы или локальной сети.
Не забудьте проверить, находятся ли оба устройства в одной локальной сети. Если нет, то подключиться к сетевому диску не будет возможности.
Читайте также: Создание локальной сети через Wi-Fi-роутер
Способ 2: Настройка параметров общего доступа
Вероятно, проблема с подключением сетевого диска связана с неправильными настройками общего доступа на компьютере. Во-первых, для удаленного компьютера может быть отключено сетевое обнаружение, а во-вторых, доступ защищен паролем. Попробуем исправить обе эти ситуации:
- Откройте «Панель управления», найдя это приложение через поиск по «Пуску».
- В выпадающем списке «Просмотр» выберите «Крупные значки», затем перейдите в раздел «Центр управления сетями и общим доступом».
- Кликните по строке «Изменить дополнительные параметры общего доступа» на левой панели открывшегося окна.
- Разверните текущий профиль, если этого не произошло автоматически. Затем в списке функций отметьте пункт «Включить сетевое обнаружение».
- Перейдите во «Все сети» и выберите «Отключить общий доступ с парольной защитой». Сохраните изменения, нажав на соответствующую кнопку внизу.
Все это нужно проделать на том компьютере, на котором есть папка с общим доступом. Как правило, эти действия выполняются в первую очередь при создании сетевого диска, но вы могли пропустить этот этап или же настройки сбились по одной из различных причин.
Способ 3: Активация протокола SMB 1.0
Если доступ к общим папкам осуществляется через основанный на технологии клиент-сервер сетевой протокол SMB, его потребуется активировать. В «десятке» не используется устаревший компонент версии 1.0, но иногда его включение помогает решить проблему с подключением сетевого диска:
- Через «Панель управления» перейдите в раздел «Программы и компоненты».
- На панели слева щелкните по строке «Включение или отключение компонентов Windows».
- В открывшемся списке отыщите «Поддержка общего доступа к файлам SMB 1.0/CIFS» и отметьте этот пункт, нажав на чекбокс. Разверните список компонента и убедитесь, что у пункта «Клиент SMB 1.0/CIFS» также стоит галочка. Кликните по кнопке «ОК», чтобы сохранить настройки.
После того как вы активировали сетевой компонент, попробуйте снова подключиться к удаленному диску.
Способ 4: Создание сценариев
Следующий метод предполагает создание сценариев, которые автоматически перезапускают все сетевые диски при входе в систему. Есть несколько вариантов использовать созданные вручную скрипты. Сценарий для выполнения через консоль Windows PowerShell выглядит так:
- Запустите встроенный редактор «Блокнот», отыскав его в главном меню через поисковую строку.
- В текстовое поле вставьте
$ i = 3
while ($ True) {
$ Error.clear ()
$ MappedDrives = Get-SmbMapping | where -property Status -Value Unavailable -EQ | select LocalPath, RemotePath
foreach ($ MappedDrive в $ MappedDrives)
{
try {
New-SmbMapping -LocalPath $ MappedDrive.LocalPath -RemotePath $ MappedDrive.RemotePath -Persistent $ True
} catch {
Write-Host "Ошибка подключения сетевого каталога $ MappedDrive.RemotePath с $ MappedDrive.LocalPath"
}
}
$ i = $ i - 1
if ($ error.Count -eq 0 -Or $ i -eq 0) {break}
Start-Sleep -Seconds 30
} - Нажмите на вкладку «Файл» и выберите пункт «Сохранить как».
- В новом окне в строке «Тип файла» выберите «Все файлы», задайте имя скрипту «MapDrives.ps1» и сохраните его, кликнув по соответствующей кнопке.
Созданный скрипт собирает все сетевые диски, которые недоступны, для того, чтобы их переподключать в постоянном режиме.
Теперь создадим сценарий для «Командной строки». Это делается аналогичным образом – через «Блокнот», но в окне редактора нужно вставить такой код:
PowerShell -Command "Set-ExecutionPolicy -Scope CurrentUser Unrestricted" >> "% TEMP% \ StartupLog.txt" 2> & 1
PowerShell -File "% SystemDrive% \ Scripts \ MapDrives.ps1" >> "% TEMP% \ StartupLog.txt" 2> & 1
После чего сохранить документ как «MapDrives.cmd».
Вариант 1: Создание элемента автозагрузки
Далее нужно переместить скрипт в каталог на системном диске, где хранятся элементы автозагрузки. Метод сработает при условии, что при входе в систему сразу же автоматически подключается интернет.
- Откройте «Проводник» и в адресную строку вставьте
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp
. - Скопируйте и вставьте либо перетащите с рабочего стола один из созданных скриптов в папку с элементами автозагрузки.
В системной папке с временными данными будет создан журнал «StartupLog.txt», после чего выйдите из системы и снова войдите. Таким образом, сетевые диски будут автоматически переподключены.
Вариант 2: «Планировщик задач»
Также есть вариант создать запланированное задание, которое будет выполняться после того, как вы зайдете в систему. Причем, в отличие от предыдущего способа с автозапуском, задача начнет выполняться после подключения к сети. На примере сценария для PowerShell разберем, как это сделать:
- Запустите встроенное средство «Планировщик заданий» через строку системного поиска.
- Кликните по вкладке «Действие» и выберите «Создать задачу».
- На вкладке «Общие» нажмите на кнопку «Изменить» в пункте с выбором учетной записи пользователя, если в строке нет никаких сведений.
- В новом окне добавьте локального пользователя или группу и сохраните настройки.
- В предыдущем окне отметьте пункт «Выполнять с наивысшими правами».
- Откройте вкладку «Триггеры» и нажмите на кнопку «Создать».
- В выпадающем списке «Начать задачу» выберите «При входе в систему». Кликните по кнопке «ОК» внизу.
- Переходите в раздел «Действия», затем — к созданию нового действия.
- В текстовом поле «Программа или сценарий» введите
Powershell.exe
. Ниже, в строке «Добавить аргументы», вставьте-windowsstyle hidden -command. \ MapDrives.ps1 >>% TEMP% \ StartupLog.txt 2> & 1
, а в «Рабочая папка» — местоположение файла сценария. Сохраните параметры действия. - Выберите вкладку «Условия» в окне создания задачи и в блоке «Сеть» поставьте галочку у пункта «Запускать только при подключении к следующей сети», затем из выпадающего меню выберите «Любое подключение». Кликните по кнопке подтверждения, чтобы завершить создание нового задания.
Теперь можно перезагружать компьютер, чтобы «Планировщик заданий» начал работать после повторного входа в систему.
То же самое можно проделать и со скриптом для «Командной строки», указав путь к нему и выбрав соответствующую программу для запуска.
Читайте также: Запуск «Планировщика заданий» в ОС Windows 10
Способ 5: «Редактор реестра»
Можно попробовать процессам, которые работают с правами администратора, предоставить доступ к сетевым ресурсам компьютера. Параметры, связанные с настройками безопасностями, можно изменить вручную через «Редактор реестра». Этот способ срабатывает не всегда, но если ничего больше не помогло, то стоит его попробовать.
- Одновременно нажмите клавиши «Win + R», затем в поле появившегося окна введите команду
regedit
и нажмите на кнопку «ОК». - Разверните ветку
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
в «Редакторе реестра». В подразделе «System» нужно создать новый параметр. Для этого кликните по свободной области главной части окна правой кнопкой мыши, наведите курсор на пункт «Создать», затем выберите «Параметр DWORD». - Задайте ему имя «EnableLinkedConnections» и дважды кликните по нему ЛКМ, чтобы перейти к настройке.
- В строке «Значение» введите «1» и нажмите на «ОК».
Редко, но бывает так, что подраздела «System» по указанному пути в системном реестре нет. В этом случае потребуется вручную его создать в предыдущей папке «Policies» таким же образом – через контекстное меню, а потом использовать инструкцию выше.
Читайте также: Способы открыть «Редактор реестра» в Windows 10
Способ 6: Сброс сети
В крайнем случае можно сбросить все сетевые настройки к значениям по умолчанию. Если ошибка связана с некорректными параметрами сети, то после процедуры они будут сброшены по умолчанию, что может позволить осуществить подключение к удаленному диску.
Читайте также: Подключение сетевого диска в Windows 10
- Нажмите на кнопку «Пуск» и выберите «Параметры».
- В новом окне перейдите в раздел «Сеть и Интернет».
- Оставаясь на вкладке «Состояние», отыщите строку «Сброс сети» и нажмите на нее.
- Кликните по кнопке «Сбросить сейчас».
Есть еще один способ быстро сбросить все сетевые настройки – использовать «Командную строку». Запустите консоль от имени администратора и выполните команду netsh winsock reset
, нажав на клавишу ввода – «Enter» — после нее.
Читайте также: Запуск «Командной строки» от имени администратора в Windows 10
Наша группа в TelegramПолезные советы и помощь
- Главная
- Вопрос-ответ
На windows 10 сетевой диск после входа в систему монтируется через раз.
Решение проблемы оказалось на уровне локальной политики.
Откройте gpedit.msc (нажмите win+r и наберите там или просто нжмите пуск и наберите gpedit.msc) и пройдите по пути
«Конфигурация компьютера» — «Административные шаблоны» — «Система» — «Вход в систему».
Надо включить пункт «Всегда ожидать инициализации сети при загрузке и входе в систему».
И перегрузить компьютер.
Всё, теперь диск будет монтироваться всегда.
Добрый день!
Прошу помощи!
Система Windows 10 Pro (далее — комп), подключаю сетевой диск (их несколько: три диска другая организация, находимся в одном здании, подключились без проблем; один диск (Z) наш сервер Microsoft Windows Server 2003 R2 Standard Edition (далее — сервер), диск подключаю, но после перезагрузки он присутствует, но если его открыть — все жутко висит и он не открывается).
В компе включен общий доступ, комп добавлен в рабочую группу. На сервере заведен пользователь с именем компа, добавлен в администраторы.
В организации нет сис.админа, помочь с подключением не кому.
За ранее благодарна.
Прикладываю скрины.
-
Вопрос задан
-
1695 просмотров
Как перейти от Waterfall к Agile
EggHead 06.05.2025
Каскадная модель разработки Waterfall — классический пример того, как благие намерения превращаются в организационный кошмар. Изначально созданная для упорядочивания хаоса и внесения предсказуемости. . .
Оптимизация SQL запросов — Продвинутые техники
Codd 06.05.2025
Интересно наблюдать эволюцию подходов к оптимизации. Двадцать лет назад всё сводилось к нескольким простым правилам: «Избегайте SELECT *», «Используйте индексы», «Не джойните слишком много таблиц». . . .
Создание микросервисов с gRPC и Protobuf в C++
bytestream 06.05.2025
Монолитные приложения, которые ещё недавно считались стандартом индустрии, уступают место микросервисной архитектуре — подходу, при котором система разбивается на небольшие автономные сервисы, каждый. . .
Многопоточность и параллелизм в Python: потоки, процессы и гринлеты
py-thonny 06.05.2025
Параллелизм и конкурентность — две стороны многопоточной медали, которые постоянно путают даже бывалые разработчики.
Конкурентность (concurrency) — это когда ваша программа умеет жонглировать. . .
Распределенное обучение с TensorFlow и Python
AI_Generated 05.05.2025
В машинном обучении размер имеет значение. С ростом сложности моделей и объема данных одиночный процессор или даже мощная видеокарта уже не справляются с задачей обучения за разумное время. Когда. . .
CRUD API на C# и GraphQL
stackOverflow 05.05.2025
В бэкенд-разработке постоянно возникают новые технологии, призванные решить актуальные проблемы и упростить жизнь программистам. Одной из таких технологий стал GraphQL — язык запросов для API,. . .
Распознавание голоса и речи на C#
UnmanagedCoder 05.05.2025
Интеграция голосового управления в приложения на C# стала намного доступнее благодаря развитию специализированных библиотек и API. При этом многие разработчики до сих пор считают голосовое управление. . .
Реализация своих итераторов в C++
NullReferenced 05.05.2025
Итераторы в C++ — это абстракция, которая связывает весь экосистему Стандартной Библиотеки Шаблонов (STL) в единое целое, позволяя алгоритмам работать с разнородными структурами данных без знания их. . .
Разработка собственного фреймворка для тестирования в C#
UnmanagedCoder 04.05.2025
C# довольно богат готовыми решениями – NUnit, xUnit, MSTest уже давно стали своеобразными динозаврами индустрии. Однако, как и любой динозавр, они не всегда могут протиснуться в узкие коридоры. . .
Распределенная трассировка в Java с помощью OpenTelemetry
Javaican 04.05.2025
Микросервисная архитектура стала краеугольным камнем современной разработки, но вместе с ней пришла и головная боль, знакомая многим — отслеживание прохождения запросов через лабиринт взаимосвязанных. . .