- Скрипт для монтирования сетевого диска windows
- Как подключить сетевой диск из командной строки Windows?
- Подключение сетевого диска через скрипт *.bat
- Подключение сетевого диска через скрипт *.bat делается след образом:
- Для справки.
- Если вы Хотите подключить сетевую папку с русским именем то в скрипте bat необходимо сделать кодировку OEM 866. Иначе при подключение у Вас она не появится!
- Скрипт для монтирования сетевого диска windows
Скрипт для монтирования сетевого диска windows
Профиль | Отправить PM | Цитировать
Помогите разобраться новичку-скриптописателю.
Поставил перед собой задачу написать скрипт, выполняющий рутинную работу, причём, удалённо. Застрял на задаче монтирования сетевого диска на удалённом компьютере.
Суть следующая. Я выполняю скрипт на компьютере А, он подсоединяется к компьютеру Б, совершает там много всякой всячины, в числе которой и монтирование сетевого диска — шары компьютера В.
Вот такой участочек кода.
Как видите, я решил заставить WMI выполнить команду чтобы примапить шару, поскольку я не нашёл у WMI специального «инструмента» для этих целей. Этот код отрабатывает на ура на компьютере А — шара мапится. На компьютере Б он тоже отрабатывается, объект objProcess возвращает 0, что означает что ему ничто не помешало отправить команду (ясень пень, что сама утилита net нам ничего таким образом не вернёт). А вот результате на компьютере Б диск мапится, но его не видно в проводнике, в списке примапленых дисков он висит как не доступный.
Думал что дело в настройках имперсонации и аутентификации WMI. Экспериментировал с ними.
Ничего не добился — диск как мапился так и мапится не правильно.
Все 3 компьютера — члены домена. На компьютере А я авторизирован под доменной учёткой, на компьютере Б скрипт авторизируется под локальной учёткой с правами админа (потому, что моя учётка там не имеет админ. полномочий), шару В на компьютере Б мапит от имени доменной учётки (я экспериментировал со своей).
Буду рад выслушать ваши советы, ув. коллеги. А также буду благодарен если кто подскажет как ещё можно монтировать сетевые диски удалённо (logon скрипты в данном случае мне не нужны).
——-
In the name of the best among us!
объект objProcess возвращает 0, что означает что ему ничто не помешало отправить команду (ясень пень, что сама утилита net нам ничего таким образом не вернёт). » |
Не «объект objProcess», а метод «.Create()» возвращает «0», если ему удалось запустить процесс. Ничего более это не означает. Никакой связи с ErrorLevel созданного процесса этот «0» не несёт.
Для кого, для какой учётной записи должен быть смонтирован сетевой ресурс на удалённой машине?
Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.
Не «объект objProcess», а метод «.Create()» возвращает «0», если ему удалось запустить процесс. Ничего более это не означает. Никакой связи с ErrorLevel созданного процесса этот «0» не несёт. » |
Да, не объект, а метод. А по поводу остального я то же самое говорил.
Для кого, для какой учётной записи должен быть смонтирован сетевой ресурс на удалённой машине? » |
——-
In the name of the best among us!
Да, не объект, а метод. А по поводу остального я то же самое говорил. » |
Elusive87, ясно. Разобрались.
Скрипт авотризируется на машине Б под учётной записью локального администратора (не доменной, поэтому я к net use добавляю доменные credentials, чтобы шара смонтировалась), и для этой же учётной записи будет монтироваться диск, разумеется. » |
А вот результате на компьютере Б диск мапится, но его не видно в проводнике, в списке примапленых дисков он висит как не доступный. » |
net use * \\192.168.1.20\shara_name password /user:domain\username » |
Если я этого не сделаю, что диск не примонтируется вообще и в списке примонтированных дисков его видно не будет, проверено. Здесь же он монтируется, но он не доступен. Ещё раз уточню.
В проводнике его не видно среди перечня логических дисков. Но видно в перечне примонтированных дисков как недоступный (просмотриваем либо утилитой net либо с помощью «отключить сетевой диск»).
У меня такое впечатление, что сам процесс, порождаемый методом Create имеет какие-то ограничения.
Кстати, я далеко не первый кто столкнулся с этими граблями, долго рылся в инете, но никто из этих ребят, что также столкнулись с этой проблемой, ответа не получил.
Пробовал «перехитрить» ограничение — запускал команду через cmd /c start, чтобы таким образом породить новый процесс. Но результат тот же (как такое может быть — ума не приложу). Причём, если сделать то же самое руками на целевом компьютере — всё прекрасно монтируется. Экспериментировал на разных компьютерах. Вот у меня и закрались подозрения насчёт подводных камней самой конструкции класса и метода.
Сразу уточню по поводу «делал руками» чтобы не было лишних вопросов: на удалённых компьютерах я авторизировался под localhost\administartor и выполнял команду net use оттуда. И вообще всякую команду, что я передавал методу Create я сначала проверял на целевом компьютере «вручную».
——-
In the name of the best among us!
Последний раз редактировалось Elusive87, 16-12-2012 в 18:22 .
Как подключить сетевой диск из командной строки Windows?
Подключить сетевой диск к расшаренной папке из графического интерфейса Windows не составит труда. Достаточно воспользоваться проводником Windows, чтобы найти нужную папку и в главной кладке найти кнопки Подключить как диск. Но если Вы уже знаете сетевой путь для подключаемой папки, то Вы сможете еще быстрее подключить сетевой диск с помощью командной строки.
Использование сетевого ресурса как диска, означает присваивание этому ресурсу буквы диска для того, чтобы с ним было легче работать. Мы будем использовать команду net use в командной строке для подключения сетевого диска. Вы также можете использовать ту же команду и в PowerShell, если хотите.
Общий синтаксис команды, чтобы создать сетевой диск, следующий:
, где drive — это буква диска, которую Вы хотите присвоить, и path — это полный путь к общей папке. Так, например, если бы мы хотели сопоставить букву диска Z с разделом \\userello-pc\film, мы бы использовали следующую команду:
Если ресурс, к которому Вы пытаетесь подключиться, защищен с помощью аутентификации и Вы не хотите вводить учетные данные каждый раз при открытии сетевого диска, можете добавить имя пользователя и пароль в команде с помощью параметра /user: password. Например, подключим тот же самый ресурс \\userello-pc\film, но при этом добавить аутентификацию пользователя с логином и паролем. Для этого используем команду:
По умолчанию подключенные сетевые диски не являются постоянными. Если мы подключаем диски с помощью команд, перечисленных выше, подключенные диски исчезнут при первой перезапуске компьютера. Если необходимо недопустить этого, необходимо сделать подключение дисков постоянным. Для этого служит параметр /persistent, который принимает два значения: yes и no.
- /persistent:yes — создает соединение, которое позволит в течении этого же сеанса работы создавать постоянные подключения дисков. То есть, если Вам понадобится подключить не один диск и все они должны быть подключены всякий раз при загрузке компьютера, достаточно использовать параметр /persistent:yes.
- /persistent:no — делает с точностью наоборот отключает возможность создания для этого и следующих за ним подключения в течении этого сеанса работы.
Если Вам следом надобится подключить ещё пару-тройку сетевых дисков, то /persistent:yes можно не добавлять. Все диски итак будут подключены постоянно, даже после перезагрузки компьютера.
Если понадобится удалить подключенный сетевой диск, то это можно сделать просто указав удаляемую букву диска и добавив параметр /delete. Например, следующая команда удалит сопоставление диска, которые мы назначили для диска Z:
Вы также можете использовать звездочку в качестве подстановочного знака, если требуется удалить сразу все подключенные сетевые диски
Вот такая не сложная инструкция позволит Вам с легкость использовать командную строку, чтобы не менее эффективно, чем используя Проводник, подключить сетевые диски и удалять их.
Подключение сетевого диска через скрипт *.bat
В первой моей статье Подключение сетевого диска через групповые политики Windows 2008 я уже рассказал о подключение сетевых дисков через групповые политики, но есть также вариант как подключить сетевые диски через скрипты. Я использовал до недавнего времени bat файлы, но в итоге перешел на GPO т.к. через GPO можно задавать «красивые имена» для сетевых дисков. Под красивыми имена я имею ввиду след:
1) красивое имя без лишней информации (делал через GPO см. статью выше)
2) подключение сетевого диска через скрипт *.bat (как видите много лишней информации которая очень не удобно как чисто визуально так и эстетически)
Подключение сетевого диска через скрипт *.bat делается след образом:
- Создаем скрипт user.bat в папке C:\Windows\SYSVOL\domain\scripts (обязательно именно в этой папке. )
- в файл user.batпишем след строки
- Открываем оснастку AD Пуск ->Все программы ->Администрирование ->Active Directory — пользователи и компьютеры
- Ищем нужного пользователя которому хотим подключить сетевые диски из файла user.bat нажимаем на нем ПКМ , переходим на вкладку Профиль и в сценарий входа пишем user.bat далее нажимаем применить и Ок и проверяем результат.
Для справки.
Если вы Хотите подключить сетевую папку с русским именем то в скрипте bat необходимо сделать кодировку OEM 866. Иначе при подключение у Вас она не появится!
доп. слова: подключение сетевого диска bat, подключение сетевого диска bat файл , батник подключения сетевого диска.
Скрипт для монтирования сетевого диска windows
Сообщения: 226
Благодарности: 4
Это имя диска в Моём компьютере.
Диск подключается к примеру с именем files на «files fileserver (server)»
А нужно что бы подключался диск и имел имя в Моём компьютере. к примеру «Базы» «Общая».
Конфигурация компьютера |
Материнская плата: ASUS P8Z77-V LE PLUS |
HDD: Samsung SSD 850 PRO 256 Гб, WD Green WD20EZRX 2 Тб |
Звук: Realtek ALC889 HD Audio |
CD/DVD: ASUS DRW-24B5ST |
ОС: Windows 8.1 Pro x64 |
Прочее: корпус: Fractal Design Define R4 |
bombording, это особенность сетевых дисков.
Отображаемое описание сервера проводник кэширует в разделе реестра
HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\ComputerDescriptions