Как остановить сопоставленные сетевые диски, которые недоступны, чтобы 64-разрядная загрузка Windows 7 через KSOD?
У меня есть QNAP-сервер в моей домашней сети, в котором я сопоставил несколько папок в Windows-7×64 с помощью NFS. Это отлично работает, за исключением тех случаев, когда я отключил сервер (или отключил его от сети). Когда сервер недоступен, Windows загружается до тех пор, пока вы не наберете пароль и не нажмете enter, и в каких точках он сидит на KSOD, делая видимо ничего.
Основываясь на этом вопросе, я загрузился в безопасном режиме, «отключил» подключенные диски и теперь вернулся в нормальный режим, как и раньше.
Что я хочу знать, так это то, как я могу хранить диски, когда сервер недоступен, и все еще загружается Windows? Или, если это не так, где лучше всего выкопать, чтобы узнать?
Вероятно, он завершит загрузку на рабочий стол, это займет некоторое время, так как вы ожидаете, что период тайм-аута каждого подключенного диска истечет до того, как Explorer завершит загрузку.
В этой записи блога Ask Leo есть много хорошей информации: почему Windows Explorer так долго показывается?
Возможно, вы захотите написать пакетный файл, который будет отображать нужные вам диски, но убедитесь, что они не настроены на отображение «настойчиво», поэтому они будут убиты при выходе из системы. Затем в следующем загрузочном обозревателе должна загружаться быстро (без карт), и если вы хотите, чтобы диски могли просто запускать командный файл для их сопоставления (настроить ярлык на рабочем столе для партии).
Возможно, используйте планировщик заданий Windows, чтобы каждый раз запускать пакет отображения, но откладывать его до 30 секунд до минуты после входа в систему, таким образом он не замедлит время загрузки Проводника.
Возможно, вы также можете настроить задачу для запуска пакета, содержащего net * /del
или подобное, чтобы гарантировать, что все сопоставления будут убиты при выходе из системы, в том числе созданные как постоянные.
Изменить / Больше информации после комментария:
"Is that timeout duration value easily editable or buried?"
Кажется, что нет места, где вы можете его определить. Ознакомьтесь с http://support.microsoft.com/kb/977346 для возможного обходного пути (я не думаю, что это поможет вашему делу, но не может повредить вам попробовать).
Дополнительная информация о дозировке:
Если вы создадите пакетный файл для сопоставления дисков и не хотите задерживать его с помощью планировщика заданий, вы можете использовать Ping для проверки соединения, прежде чем пытаться его сопоставить. Ping может быть настроен на использование определенного тайм-аута, поэтому вы можете установить его на низком уровне, а если он не сможет выполнить ping, не отображайте его.
Что-то вроде этого в пакетном файле:
ping 10.3.3.3 -n 1 -w 500 | find "Reply" if errorlevel 1 echo Machine Not Found && goto :eof net use Q: \\10.3.3.3\Share
Это будет ping 10.3.3.3 один раз (-n), с тайм-аутом (-w), установленным на 500 миллисекунд. Затем он попытается найти «Ответ» в результатах. Если он не обнаружит этого (нет ответа, потому что машина не существует), то он повторяет, что он не найден и перескакивает в конец файла. В противном случае, если он найдет «Ответ», он попытается отобразить Q: на долю «Поделиться» в 10.3.3.3.
Для меня это сработало:
;### kill the long "restoring network connections" at logon (defer=ghosted connections) [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\NetworkProvider] "RestoreConnection"=dword:00000001 ;(0=no attempt, you must click it) "RestoreTimeout"=dword:00000005 ;### Ghost the connection if not responding within RestoreTimeout "DeferConnection"=dword:00000001 ;### network drive map timeout in Explorer if connection is lost (def is 60 sec) [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\LanmanWorkstation\Parameters] "ReconnectTimeout"=dword:00000005
Кроме того, я установил RestoreConnection
0, так как мне не нужны диски, готовые все время. Затем тайм-аут черного экрана исчез.
Источник: http://www.sevenforums.com/network-sharing/274680-timeout-mapping-network-drives-windows-login.html