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

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

Ответить
Настройки темы
WMI - Удалённое монтирование сетевых дисков посредством скрипта

Новый участник


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


Конфигурация

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


Доброго времени суток, ув. форумчане
Помогите разобраться новичку-скриптописателю.
Поставил перед собой задачу написать скрипт, выполняющий рутинную работу, причём, удалённо. Застрял на задаче монтирования сетевого диска на удалённом компьютере.

Суть следующая. Я выполняю скрипт на компьютере А, он подсоединяется к компьютеру Б, совершает там много всякой всячины, в числе которой и монтирование сетевого диска - шары компьютера В.

Вот такой участочек кода.

читать дальше »
strComputer = ""
UserName = ""
Password = ""
Set SWBemlocator = CreateObject("WbemScripting.SWbemLocator")
Set objWMIService = SWBemlocator.ConnectServer(strComputer,"root\CIMV2",UserName,Password)
Set objProcess = objWMIService.Get("Win32_Process")
errReturn = objProcess.Create("net use * \\10.40.*.*\shara_name password /user:domain\username", Null, Null, intProcessID)
WScript.Echo errReturn


Как видите, я решил заставить WMI выполнить команду чтобы примапить шару, поскольку я не нашёл у WMI специального "инструмента" для этих целей. Этот код отрабатывает на ура на компьютере А - шара мапится. На компьютере Б он тоже отрабатывается, объект objProcess возвращает 0, что означает что ему ничто не помешало отправить команду (ясень пень, что сама утилита net нам ничего таким образом не вернёт). А вот результате на компьютере Б диск мапится, но его не видно в проводнике, в списке примапленых дисков он висит как не доступный.

Думал что дело в настройках имперсонации и аутентификации WMI. Экспериментировал с ними.

читать дальше »
'SWBemlocator.Security_.ImpersonationLevel = 3
'SWBemlocator.Security_.AuthenticationLevel = 6
'SWBemlocator.Security_.Privileges.AddAsString "SeCreateTokenPrivilege"


Ничего не добился - диск как мапился так и мапится не правильно.
Все 3 компьютера - члены домена. На компьютере А я авторизирован под доменной учёткой, на компьютере Б скрипт авторизируется под локальной учёткой с правами админа (потому, что моя учётка там не имеет админ. полномочий), шару В на компьютере Б мапит от имени доменной учётки (я экспериментировал со своей).

Буду рад выслушать ваши советы, ув. коллеги. А также буду благодарен если кто подскажет как ещё можно монтировать сетевые диски удалённо (logon скрипты в данном случае мне не нужны).

-------
In the name of the best among us!


Отправлено: 18:51, 12-12-2012

 

Ветеран


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

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



Цитата Elusive87:
Iska, посмотрите внимательно на код. »
Elusive87, я сталкивался с подобным когда-то. Не аналогичным вопросом, но подобным: WshNetwork_RemoveNetworkDrive на удаленном компьютере не работает.7z. Вопрос там в итоге остался открытым.
Это сообщение посчитали полезным следующие участники:

Отправлено: 22:27, 16-12-2012 | #11



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

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


Новый участник


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

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


Цитата Kazun:
Как вариант создать задачу через schtasks »
Насколько я понял в Win32_ScheduledJob мгновенное задание создать не получится. Никаких таких параметров я не нашёл. Можно лишь задать текущую минуту для времени запуска, если уж его использовать. Слышал я что у него всё равно какая-то задержка есть, это правда? А то собственноручно проверять пока что не приходилось
Цитата Iska:
Elusive87, я сталкивался с подобным когда-то. Не аналогичным вопросом, но подобным: WshNetwork_RemoveNetworkDrive на удаленном компьютере не работает.7z. Вопрос там в итоге остался открытым. »
Судя по тому, что там пишет Русинович, получается, что создаваемый процесс не имеет сетевого доступа и это было спроектировано намеренно. Обидно получается. А что за инструмент(ы) оставили "мелкогмягкие" для доступа по сети? Ведь что выходит - даже если примонтированные диски и существуют заранее, забраться туда всё равно не сможешь - облом!

-------
In the name of the best among us!


Последний раз редактировалось Elusive87, 17-12-2012 в 23:03.


Отправлено: 20:00, 17-12-2012 | #12


Новый участник


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

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


я использую psexec для этого.

Код: Выделить весь код
@echo off 
set /p "c=Введите имя компьютера: " 
psexec.exe  -i -s  \\%c% net use l: \\server001\common  
pause

Отправлено: 12:45, 19-12-2012 | #13



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Любой язык - удалённое выполнение скрипта, с правами залогиненного пользователя vich68rus Скриптовые языки администрирования Windows 4 06-09-2011 18:11
Как соединить компьютеры по сети(посредством сетевых карт) ? zxzx Хочу все знать 1 04-01-2010 19:11
Монтирование дисков zippi Microsoft Windows NT/2000/2003 18 12-06-2007 10:03
Монтирование сетевых дисков nsergeip Общий по Linux 35 22-03-2007 21:06
Монтирование дисков с NTFS5 в RH9 NSF Общий по Linux 9 13-02-2005 02:12




 
Переход