Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - Подключение сетевых дисков

Ответить
Настройки темы
Любой язык - Подключение сетевых дисков


Сообщения: 591
Благодарности: 5

Профиль | Отправить PM | Цитировать


Здравствуйте!
Есть батник:
---------------------------------------------------------------------------------
@echo off

net time /domain:mou102.local /set /y

rem net use m: \\server2\Metodika$ /persistent:no
rem net use r: \\server2\Biblioteka$ /persistent:no


rem if %username%==borodulya net use s: \\Server2\Shared_folder$\school\erudit /persistent:no



rem подключение пользовательского диска

net use u: /delete - это типа сначал удаляем существующий диск


if exist \\server2\Shared_folder$\%username% goto label
rem проверяем наличие папки, если есть такая папка, то идем на ок,
rem если нету папки, идем дальше

mkdir \\server2\Shared_folder$\%username%
rem создаем папку c таким же именем, с каким пользователь входит в сеть

xcacls \\server2\Shared_folder$\%username% /t /c /g Domain\%username%:c /y
rem назначаем для пользователя на папку разрешения Change

:label
net use u: \\server2\Shared_folder$\%username% /persistent:no
rem подключаем папку как сетевой диск U
---------------------------------------------------------------------------------

Батник подключает общие и персональный сетевые диски.

Есть скрипт:

---------------------------------------------------------------------------------

On Error Resume Next

Set objWshNetwork = CreateObject( "WScript.Network" )
Set objShell = CreateObject("Shell.Application")


MapDrive "U:", "\\server2\Shared_folder\school\%username%", "Пользовательский"

MapDrive "S:", "\\server2\Shared_folder\school\school", "Общий"

Sub MapDrive(strDrive, strPath, strName)
On Error Resume Next
objWshNetwork.RemoveNetworkDrive strDrive, vbTrue, vbTrue
objWshNetwork.MapNetworkDrive strDrive, strPath, vbTrue
objShell.NameSpace(strDrive).Self.Name = strName
End Sub

---------------------------------------------------------------------------------

Это скрипт мне подсказали на форуме - дает имя сетевому диску.

Хочу из скрипта и батника сделать один скрипт или батник делающий следующее: создает общие сетевые диски и дает имя им, и создает персональные диски, закрепляет права пользователя и дает имя этому диску.

Подскажите пожалуйста код.

Спасибо

Отправлено: 14:33, 20-11-2009

 

Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


Цитата YDen:
xcacls \\server2\Shared_folder$\%username% /t /c /g Domain\%username%:c /y
rem назначаем для пользователя на папку разрешения Change »
а не проще дать нужные права на корень учетке "CREATOR OWNER"?.. тогда пользователь при создании будет сразу получать нужные права на свою папку

Отправлено: 10:43, 23-11-2009 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Пользователь


Сообщения: 137
Благодарности: 24

Профиль | Отправить PM | Цитировать


Попробуй проверить такой код
Код: Выделить весь код
  

Set objWshNetwork = CreateObject( "WScript.Network" )
UsersFolderName = ucase((objNetwork.UserName))

' создаем папку пользователя, проверяя если она есть то идем дальше
     FolderUser = "\\server2\Shared_folder\school\" + UsersFolderName
     Set objFld1 = CreateObject("Scripting.FileSystemObject")
     If objFld1.FolderExists(FolderUser) Then
     Else
        ' если папки нет то создаем ее и назначаем права  
         Set objFolder1 = objFld1.CreateFolder(FolderUser)
        ' формируем строку с назначением прав на личную папку
         StrCmdRightUsers = "xcacls.exe " + FolderUser + " /g ""DOMAIN ADMINS"":F System:f " + UsersFolderName + ":с /y "
         RetVal = WshShell.Run("%COMSPEC% /c " & StrCmdRightUsers, 1, False) 
      End If


Set objShell = CreateObject("Shell.Application")

MapDrive "U:", FolderUser, "Пользовательский"
MapDrive "S:", "\\server2\Shared_folder\school\school", "Общий"

Sub MapDrive(strDrive, strPath, strName)
On Error Resume Next
objWshNetwork.RemoveNetworkDrive strDrive, vbTrue, vbTrue
objWshNetwork.MapNetworkDrive strDrive, strPath, vbTrue
objShell.NameSpace(strDrive).Self.Name = strName
End Sub

xcacls должен лежать в той же папке откуда скрипт запускаешь
Это сообщение посчитали полезным следующие участники:

Отправлено: 07:12, 30-11-2009 | #3


Пользователь


Сообщения: 145
Благодарности: 2

Профиль | Отправить PM | Цитировать


пишет требуется objNetwork, при исполнении последнего скрипта,как быть?

Отправлено: 06:37, 27-07-2010 | #4


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
Set objWshNetwork = CreateObject( "WScript.Network" )
UsersFolderName = ucase((objWshNetwork.UserName))
…

Отправлено: 14:25, 27-07-2010 | #5


Пользователь


Сообщения: 145
Благодарности: 2

Профиль | Отправить PM | Цитировать


понял,щас исправлю

Последний раз редактировалось nvhost, 28-07-2010 в 06:45.


Отправлено: 06:12, 28-07-2010 | #6


Пользователь


Сообщения: 145
Благодарности: 2

Профиль | Отправить PM | Цитировать


а как создать папку пользователя от имени админа?Надо сделать так чтобы другие юзеры не могли попасть в папку, а то при создании userfolder берет права родителя

Отправлено: 10:00, 28-07-2010 | #7


Пользователь


Сообщения: 145
Благодарности: 2

Профиль | Отправить PM | Цитировать


Ребят подскажите как это сделать,никто не знает???Скрипт почему то исполняется только при входе в терминал......как сделать чтоб при входе в домен?

Отправлено: 13:30, 30-07-2010 | #8


Старожил


Сообщения: 426
Благодарности: 108

Профиль | Отправить PM | Цитировать


1.
Цитата nvhost:
а как создать папку пользователя от имени админа?Надо сделать так чтобы другие юзеры не могли попасть в папку, а то при создании userfolder берет права родителя »
Совершенно не знаю VB (и не очень спешу его знать ), но думаю достаточно в строке
Цитата alecsandrb:
StrCmdRightUsers = "xcacls.exe " + FolderUser + " /g ""DOMAIN ADMINS"":F System:f " + UsersFolderName + ":с /y " »
надо добавить User:F (можно впихнуть между "доменными админами" и "системой"), правда из соображений безопасности "доменных админов" тут быть вообще не должно, а должна с разрешением по чтению быть учетка, которой делигированы права на бэкап пользовательских данных.
2. Имя учетки пользователя (здесь указана как User) можно взять из переменной %UserName%, особенно если скрипт запускается при входе пользователя в систему - в домене он (скрипт) должен прописываться в GPO не в "Computer configuration => Windows settings => Scripts", а в "User configuration => Windows settings => Scripts"

-------
Как сказало Дерево Дровосеку: "я - пень".


Отправлено: 15:29, 30-07-2010 | #9


Пользователь


Сообщения: 145
Благодарности: 2

Профиль | Отправить PM | Цитировать


впихнул,но ни каких изменений не увидел......может вы меня не так поняли, есть папка users есть два пользователя user1 и user2 права на папку users у пользователей домена стоит,полный доступ, иначе с ограниченными правами при выполнении скрипта вылазиет ошибка,а надо чтоб в users создалась папка user1 и пользователь имел права только на эту папку,ни в папку users ни в папку user2 пользователь user1 не мог войти

Отправлено: 08:30, 31-07-2010 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - Подключение сетевых дисков

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Подключение сетевых дисков у пользователей AD davzom Microsoft Windows NT/2000/2003 35 30-05-2013 07:53
Подключение сетевых дисков dinamitbrein Сетевые технологии 6 05-07-2012 16:33
Разное - Автоматическое подключение сетевых дисков hoho Microsoft Windows 2000/XP 5 11-06-2012 09:08
Подключение сетевых дисков (маппинг) ss777 Microsoft Windows NT/2000/2003 1 25-08-2008 08:55
подключение сетевых дисков у пользоватетей AD e v g e n Microsoft Windows NT/2000/2003 2 10-12-2007 11:21




 
Переход