Подключенные сетевые диски помогают пользователям быстро ориентироваться в сети. Если в системе имеются подключенные сетевые диски, достаточно просто навести на них курсор и щелкнуть кнопкой мыши, чтобы получить доступ к сетевому ресурсу, независимо от того, где ведется работа — в оболочке Windows Explorer, папке My Computer или в диалоговых окнах приложений, таких, как Open или Save.

Подключение сетевого диска — это не более чем присвоение буквы дисковода удаленному ресурсу совместного доступа. Поскольку буква дисковода является локальной, удаленный ресурс отображается в папке My Computer и в оболочке Windows Explorer, как если бы он был локальным ресурсом. Это позволяет получать доступ к удаленному ресурсу намного быстрее, чем в том случае, когда пользователь вводит имя папки удаленного доступа в формате Universal Naming Convention (UNC) или последовательно «пробирается» через сетевые каталоги.

Администраторам, обучающим пользователей способам подключения сетевых дисков или применяющим функции Windows для автоматического подключения сетевых дисков, реже приходится работать в режиме удаленной поддержки. А поскольку некоторые приложения плохо работают с именами UNC, подключение сетевых дисков иногда необходимо. Однако администраторы не всегда признают преимущества подключения сетевых дисков или не владеют специальными приемами, которые можно использовать для подключения дисков. Об этих приемах и будет рассказано в данной статье.

Используем графический интерфейс Windows

Самый простой и быстрый способ открыть ресурс общего доступа для подключения сетевого диска вручную — воспользоваться папкой My Network Places. Нужно помнить, что открыть My Network Places можно через Windows Explorer, папку My Computer, а также через ярлык My Network Places на рабочем столе. Необходимо выбрать компьютер, содержащий ресурс, которому требуется присвоить букву. Затем нужно щелкнуть правой кнопкой по ресурсу и выбрать в меню пункт Map Network Drive, открывающий диалоговое окно, показанное на Экране 1.

Экран 1. Следует указать букву дисковода и папку, к которой требуется подключиться.

По умолчанию Windows 2000 проверяет буквы, используемые для локальных дисков, и предоставляет для подключения сетевого диска следующую по алфавиту букву. Windows Server 2003 и Windows XP, наоборот, начинают с Z, когда ищут доступную букву для дисковода, а затем идут по алфавиту в обратном порядке. Можно не назначать предлагаемую букву, а указать любую другую. Настройка Reconnect at logon («Восстанавливать при входе в систему») определяет, будет ли компьютер автоматически подключать этот диск при следующем сеансе работы пользователя (подключенные диски являются пользовательскими настройками, а не настройками компьютера). Когда диск подключают в первый раз, по умолчанию флажок для этой настройки установлен. В дальнейшем Windows запоминает последнее состояние настройки и хранит его как значение по умолчанию. Желательно всегда выбирать Reconnect at logon, кроме тех случаев, когда с этим ресурсом удаленного доступа не планируется работать в будущем.

Восстановление подключения во время загрузки удлиняет загрузку на несколько секунд, и удлиняет ее еще больше, если подключаемый ресурс во время загрузки недоступен. Компьютер находит и восстанавливает подключение к сетевому диску в зависимости от того, завершена ли загрузка на удаленном компьютере. Если удаленный компьютер находится в процессе загрузки, Windows отображает ярлык подключенного диска в папке My Computer (и в Windows Explorer) с красным значком X поверх ярлыка. После того как ресурс становится доступен, достаточно выполнить двойной щелчок по ярлыку, чтобы соединиться с подключенным диском, а красный крестик исчезает.

Как и в функции Windows под названием RunAs, настройка Connect using a different user name («Подключение под другим именем») позволяет пользователям, не имеющим полномочий для работы с определенным ресурсом, подключаться к этому ресурсу через учетную запись пользователя, имеющего необходимые полномочия. Пользователи должны предоставить пароль учетной записи. Нужно указать имя пользователя и пароль, после чего щелкнуть Finish в диалоговом окне Map Network Drive. Windows запишет информацию в реестр локального компьютера, добавит новую букву дисковода в папку My Computer и откроет окно с содержимым этого ресурса.

Нельзя подключить диск к дочерней папке каталога, подключение к которому было выполнено ранее. Команда Map Network Drive не отображается в меню быстрого доступа (при щелчке правой кнопкой) для папки, которая не является ресурсом совместного использования. Можно, однако, подключить диск из командной строки, как описано ниже. Для отключения диска от компьютера следует щелкнуть правой кнопкой по его ярлыку в папке My Computer или в Windows Explorer и выбрать Disconnect.

Используем командную строку

Для подключения диска из командной строки применяется команда Net Use. Эта команда имеет много параметров; я опишу те из них, которые используются чаще всего. Полный синтаксис команды можно найти в Windows Help. Чтобы увидеть подключенные в данный момент диски и определить, какие буквы не задействованы, следует набрать в командной строке:

net use

Как показано на Экране 2, команда возвращает текущий статус каждого подключения вместе с буквой диска, именем UNC ресурса совместного использования и типом сети. Обычно тип сети — Microsoft Windows Network, но, если на компьютере установлена другая операционная система, в колонке Network это будет отражено. Например, если пользователь работает с клиентским программным обеспечением Novell NetWare и подключает диск к серверу NetWare, в колонке Network будет стоять NetWare.

Для того чтобы подключить диск к папке совместного пользования, необходимо указать в команде Net Use букву диска и имя UNC этой папки. Например,

net use d: BigServerDataFiles

назначает ресурс DataFiles на компьютере BigServer букве D. Если одна из папок в полном имени ресурса содержит пробел, нужно заключить полное имя в кавычки, включая двойной обратный слеш () в самом начале.

Будет компьютер восстанавливать подключение к ресурсу при входе в систему или нет, зависит от настройки Reconnect at logon. Однако необязательно открывать графический интерфейс, чтобы увидеть ее текущее состояние — для выполнения нужной настройки можно задействовать параметр /persistent: в команде Net Use. Например, чтобы восстанавливать подключение к DataFiles при входе в систему, следует ввести:

net use d: BigServerDataFiles 
/persistent: yes

Для подключения диска только на один сеанс требуется ввести:

net use d: BigServerDataFiles /persistent: no

В отличие от функции подключения дисков с графическим интерфейсом, команда Net Use позволяет подключаться к дочерним папкам ресурсов совместного использования. Для того чтобы подключить папку Clients, которая не является папкой совместного использования и является вложенной для папки совместного доступа DataFiles, следует ввести:

net use d: BigServerDataFilesClients

Такая функциональность обеспечивает подключение любых папок на диске совместного доступа. Но в подобных случаях необходимо быть весьма осмотрительным в отношении безопасности. Я использую данный подход только при работе в тестовой лаборатории с контролируемой средой (т. е. в сети, не подключенной к остальной части предприятия, в которой или установлен межсетевой экран, или отключен доступ через Internet). Сделав диски c каждого компьютера в такой сети ресурсами совместного использования, я могу в удаленном режиме получать доступ ко всем папкам этих дисков. Например, чтобы получить доступ к папке LabData диска C сервера TestBox в своей лаборатории, я могу ввести:

net use d: TestBoxCLabData

Теперь я имею возможность выполнять любые задачи с участием данной удаленной папки. Например, я использую подключенные диски для архивирования в масштабе всей сети; более подробно об этом рассказано во врезке «Как применять подключенные сетевые файлы для задач архивирования».

Администраторы могут задействовать команду Net Use в пакетных файлах автозагрузки для назначения пользователям сетевых дисков, чтобы те могли получать доступ к часто используемым папкам на удаленных компьютерах. Например, для сотрудников, работающих с базой данных компании, можно составить сценарий, содержащий следующие строки:

net use g: BigServerOurDatabase
net use h: BigServerDatabaseFiles

Следует присвоить этому пакетному файлу любое имя (но обязательно с расширением .bat) и скопировать его в каталог сценария регистрации в систему на контроллере домена (DC). По умолчанию сценарии регистрации в систему расположены на контроллерах доменов Windows 2000 в папке %SystemRoot%SYSVOLsysvoldomain name.comscripts. Для Windows 2000 папкой сценариев совместного использования автоматически является специальная папка с именем Netlogon.

Я обращаю особое внимание на то, что для подключения сетевых дисков не следует брать буквы, назначенные домашним дискам пользователей. В процессе регистрации пользователя Windows подключает домашние диски перед запуском сценариев из специальной папки. Если сценарий пытается подключить диск с буквой, которая уже занята, система выдает сообщение The local device name is already in use.

Автоматическое отключение сетевых дисков

Иногда, когда пользователь открывает папку My Computer или Windows Explorer, на значке подключенного сетевого диска появляется красный крестик, означающий, что диск недоступен. Windows автоматически отключает диски после того, как они в течение некоторого времени не используются (интервал по умолчанию составляет 15 мин), и отображает красный крестик поверх значка дисковода. Когда это происходит, щелчок по значку или ввод в командной строке буквы диска с двоеточием автоматически восстанавливает соединение. Но красный крестик также появляется, если компьютер, содержащий подключенный ресурс, по какой-либо причине недоступен — в таком случае описанные действия не дают никакого результата. Поскольку пользователи не могут понять, почему появился красный крестик, они часто обращаются за помощью к администратору.

Число обращений к администратору сократилось бы, если бы можно было отменить автоматическое отключение сетевых дисков, и пользователи видели бы красный крестик, только когда удаленный компьютер отключен. Контролирует автоматическое отключение сетевых дисков параметр реестра Autodisconnect. Согласно документации Microsoft, эту функцию можно выключить, установив параметр Autodisconnect в -1. Однако реестр не позволяет вводить для этого параметра знак минуса. Некоторые специалисты технической поддержки Microsoft предлагают использовать

net config server /autodisconnect:-1

в командной строке. Хотя складывается впечатление, что эта команда вводит -1 в параметр реестра Autodisconnect, на самом деле она меняет значение параметра на максимально возможное, равное 4 294 967 295 мин (более 8000 лет) для Windows 2000 Professional и 65 535 мин (более 45 дней) для Windows 2000 Server. Оба значения достаточно велики для того, чтобы выключить функцию автоматического отключения. Однако команда Net Config также меняет два других параметра, а эти дополнительные изменения (относящиеся к работе браузера сетевых ресурсов) могут вызвать новые проблемы.

Некоторые администраторы пытаются установить значение Autodisconnect в 0. Однако значение 0 не предотвращает автоматического отключения сетевых дисков. Более того, это значение приводит к непредсказуемому и часто довольно быстрому отключению дисков.

Лучше всего явно задать для параметра Autodisconnect максимальное значение. Необходимо запустить редактор реестра (regedit.exe) на компьютере, содержащем ресурс (но не на удаленном компьютере, подключающемся к ресурсу), перейти к разделу HKEY_LOCAL_MACHINESYSTEMCurrentControlSet ServicesLanmanServerParameters и дважды щелкнуть параметр Autodisconnect. Если компьютер, на котором находится ресурс, является рабочей станцией Windows 2000 Professional, следует ввести новое десятичное значение 4 294 967 295 или новое шестнадцатеричное значение ffffffff. Если компьютер является сервером Windows 2000, нужно ввести новое десятичное значение 65 535 или шестнадцатеричное значение 0xffff.

Kerberos и подключенные диски

В домене Windows 2000 функции аутентификации Kerberos определяют, может ли пользователь получить доступ к удаленным ресурсам. В процессе аутентификации Kerberos полагается на службу Windows Time Service, и, если часы локального компьютера не показывают то же самое время (в пределах небольшой погрешности), что и часы удаленного компьютера, Kerberos не предоставит доступ к удаленному компьютеру.

В домене Windows 2000 компьютер с Windows 2000 синхронизирует свое время со временем DC каждые 45 мин. Когда время на часах совпадает, интервал синхронизации увеличивается до тех пор, пока он достигнет 8 ч или пока время перестанет совпадать. Более подробно о работе Windows Time Service рассказано в статье «Windows Time Synchronization Service», http://www.winnetmag.com, InstantDoc ID 8383. При изменении этой системы, если часы компьютера не показывают время из-за проблем соединения или если часы DC идут неправильно, настройки Kerberos вызывают отключение сетевых дисков.

Я узнала это случайно, когда писала книгу по бухгалтерскому программному обеспечению. Каждое окно транзакций в бухгалтерской программе имеет дату, поэтому, чтобы обеспечить совпадение дат страниц бухгалтерских книг с датой публикации, я установила дату следующего года на том компьютере, где работает бухгалтерская программа. Я сохранила файлы на подключенном сетевом диске своего рабочего компьютера. Закончив часть книги и вернувшись на компьютер с бухгалтерской программой, я обнаружила, что он переустановил дату на текущий год. Вспомнив, что рабочая станция синхронизировала время с DC, я решила, что можно выйти из положения, если изменить системное время, а затем быстро сохранить файлы до того, как система в очередной раз сверит часы с DC. Однако когда я попыталась сохранить файлы на подключенном диске, на экране появилось сообщение об ошибке от системы безопасности, а сетевой диск оказался отключенным. Мне не удавалось восстановить подключение до тех пор, пока я не установила время правильно. В конце концов, я выполнила регистрацию на локальном компьютере, вместо регистрации в домене, сохранила файлы локально, снова выполнила регистрацию в домене, а затем с помощью Windows Explorer переместила файлы на сетевой диск.

Ошибка при подключении сетевых дисков

Когда пользователь подключает диск через графический интерфейс, Windows открывает окно для вновь подключенного ресурса сразу после нажатия кнопки Finish. В дальнейшем каждый раз при назначении той же буквы Windows открывает окно с содержимым подключенных дисков. Если потом для подключения диска используется пакетный файл, появление этого окна прерывает исполнение файла (мешая выполнению задачи).

Для того чтобы подобных ситуаций не возникало, Microsoft выпустила исправление, которое можно получить, позвонив в службу поддержки Microsoft. Технические специалисты службы поддержки укажут правильный FTP-адрес для загрузки измененного файла shell32.dll. В статье Microsoft «Mapping a Drive from a Command Prompt May Open a New Windows Explorer Window» (http://support.microsoft.com/?kbid=290703) эта проблема рассматривается и предлагается способ исправления ошибки через реестр. Однако предложенное изменение реестра не работает.

Один из способов предотвратить появление этой ошибки состоит в том, чтобы пользоваться для подключения дисков только командой Net Use и никогда не применять графический интерфейс. Или же можно при использовании графического интерфейса нажимать и удерживать клавишу Shift, щелкая кнопку Finish, и продолжать удерживать ее нажатой не менее 10 с.

Мощная комбинация

Подключенные сетевые диски сочетают в себе вычислительную мощь с простотой использования — весьма многообещающая комбинация. Рекомендуется создать пакетные файлы и сценарии подключения, чтобы в полной мере задействовать возможности этого инструмента вместе с пользователями, или научить их подключать сетевые диски самостоятельно — и администраторы, и пользователи будут вознаграждены.


Как применять подключенные сетевые файлы для задач архивирования

Восстановление даже одного файла из резервной копии на магнитной ленте отнимает невероятно много времени. Примерно на третий раз, когда мне нужно было восстановить отдельный файл, я решила избавиться от системы резервного копирования на ленте. Теперь я архивирую данные рабочих станций на системных серверах с помощью пакетных файлов, что позволяет воспользоваться преимуществами команд Net Use и Xcopy.

Архивирование данных я выполняю с помощью планировщика задач. Для выполнения регулярных задач использую встроенную программу резервного копирования Windows 2000, а в роли хранилища архива выступает несколько компьютеров. Я запускаю пакетные файлы с нескольких серверов и рабочих станций для архивирования данных во всей сети.

Пакетный файл резервного копирования показан в Листинге 1. На самом деле файл не такой большой, как кажется на первый взгляд, потому что многие строки являются комментариями. Этот файл привязывает диск сервера к диску рабочей станции, а затем копирует папки с рабочей станции обратно на сервер. Есть и другой способ, при котором я могла бы назначить каждой папке, подлежащей резервному копированию, различные буквы дисководов, сделав затем ссылки на буквы в каждой команде Xcopy.

Листинг 1. Образец пакетного файла для резервного копирования, использующий команду Xcopy.

Нужно помнить о том, что в конце пакетного файла необходимо удалить букву подключенного сетевого диска. Если этого не сделать, то в следующий раз при запуске пакетного файла система выдаст сообщение об ошибке The local device name is already in use («Локальное устройство уже используется»).

Кэти Ивенс — редактор Windows 2000 Magazine. Участвовала в написании более 40 книг по компьютерной тематике, включая «Windows 2000: The Complete Reference» (Osborne/McGraw-Hill). С ней можно связаться по адресу: kivens@win2000mag.com.