Этот пост содержит азбучную истину, которую обычно использует каждый администратор , однако при этом не знает каждый новичок. Речь пойдет о монтировании сетевых папок пользователям домена при запуске РМ.
Когда я начинал свою Ит карьеру, мне нужна была работа для студента, и я ее нашел в родном же институте, где и начинал работу с самого нуля, спустя какое то время мне понадобилось перевести крупный отдел на отдельный домен и организовать для них эффективную и удобную работу с многочисленными данными на файловом сервере.
Выбор естественно пал на использование возможностей домена Active Directory. В нем очень просто реализовать различные действия с окружением пользователя используя политики GPO и скрипты.
Вообще можно пойти двумя путями:
1. Самый простой и трудоемкий. Если вам необходимо одному из пользователей, при загрузке подключать определенный набор сетевых папок или принтеров, для этого достаточно открыть свойства пользователя домена, и на вкладке профиль указать имя скрипта, который будет выполнятся при входе в систему:
Сам скрипт необходимо положить в общедоступную папку, и указывать полный путь до него, или можно положить в папочку NETLOGON на контроллере домена. В скрипте можно использовать любые алгоритмы и задачи необходимые вам, ниже будет приведен простой пример монтирования сетевых папок.
Как можно увидеть это очень простой способ, однако он крайне неудобен при большом количестве пользователей и необходимости выполнения различных задач, именнно поэтому использование второго способа более актуально
2. Назначение скриптов на группы Подразделения, Organisation Unit или сокращенно OU. Сосбтвенно это иерархический элемент LDAP позволяющий организовывать древовидные структуры из вложенных групп пользователей. На каждую иp OU, мы можем применять самые различные политики GPO и управлять любыми мелочами в окружении пользователя или на ПК.
В моем случае мы имеем множество отделов и подоттделов у которых самые различные сетевые папки на сервере DFS и подключаемые принтеры рабочих групп. К примеру мы создаем на какое-либо OU простую политику test
Заходим в свойства OU, на вкладку Групповые политики — Group Policy и создаем новую политику кнопкой Создать. После чего, даем ей нормлаьное имя, к примеру — test :)?
Теперь необходимо изменить политику так как нам надо, мы выделяем ее и нажимаем кнопку Изменить
Нам открываться консоль mmc c оснасткой групповой политики, мы не будем углубляться в ее описание и остановимся на самом. Имеется две ветки. Одна отвечает на настройки специфические для ПК, другая за настройки специфические для пользователя. т.к. как нам надо чтобы у пользователя при входе монтировалась сетевая папка, нам соответственно нужна вторая ветка.
В ней мы перейдем в подветвь Конфигурация Windows -> Сценарии входа выхода, изменяем этот парметр и в открывшемся окне добавляем выполняемый сценарий? кнопкой Добавить, и затем мы выбираем файл самым обычным способом. Файл в нашем случае будет скрипт VBS. Скрипт не сложный, он определяет логин пользователя и монтирует папку с таким же именем с файл сервера, после чего выводит некое привественное сообщение. Базируясь на нем вы можете создать скрипты гораздо более сложные, чем это самый простой. Ну а комбинируя и возможности программирования, к примеру анализируя тот же логин пользователя, вы можете подключать не только сетевые папки. Да и забыл дабавить, что GPO из ветки пользователя выполняются с правами пользователя.
Сам скрипт:Dim objNetwork Dim strDriveLetter, strRemotePath
Set wshNetwork = WScript.CreateObject(«WScript.Network») username=wshNetwork.UsernameOn Error Resume Next
Set colDrives = WSHNetwork.EnumNetworkDrives
For i = 0 To colDrives.Count — 1 Step 2 If (colDrives(i) = «M:») then wshNetwork.RemoveNetworkDrive «M:» End IfNext
strDriveLetter = «M:» strRemotePath = «\\server\files\»&usernamewshNetwork.MapNetworkDrive strDriveLetter,strRemotePath
i=0Set colDrives = WSHNetwork.EnumNetworkDrives
If colDrives.Count = 0 ThenMsgBox «Подключенных сетевых дисков нет», _ vbInformation + vbOkOnly, _ «Работа с WSHNetwork»
Else
strMsg = strMsg & «Бла Бла Бла » & Chr(10)
strMsg = strMsg & «Текущие сетевые подключения: » & Chr(10)For i = 0 To colDrives.Count — 1 Step 2 strMsg = strMsg & Chr(10) & colDrives(i) & Chr(9) & colDrives(i + 1) Next
End If
WScript.Echo «Добро пожаловать в Бла Бла » + chr(10)+strMSG
Скачать скрипт файлом вы можете тут
test.vbs (1,1 KiB, 2 251 hits)
Один комментарий
Подключение сетевых дисков в Windows7 | Жизнь ИТшника