Постоянно монтировать сетевой ресурс без необходимости входа в систему? (Windows)

26

На Windows 2008 R2 Server (Standard) мне нужно смонтировать сетевой диск, не имея конкретного пользователя для входа на машину. Вроде как NFSкрепление через fstabна Unix-машинах. Сетевой диск будет общим через устройство BlackArmor (Seagate) (которое, я полагаю, запускает Samba). Устройство может быть членом домена, если это необходимо.

До сих пор я пытался использовать Edit Group Policy-> Configuration-> Windows-> Scripts-> Startupгде я должен был выполнить

net use x: \\server\share /user:username password

Без успеха. При входе в систему сетевой диск в проводнике Windows рассматривался как отключенный сетевой диск.

Adamo
источник
1
Вы хотите, чтобы он был доступен любому, кто входит на этот сервер, или он должен быть указан на определенной букве диска для какой-либо системной службы?
sysadmin1138
1
Мне нужно, чтобы он был на определенной букве диска для использования приложениями, которые выполняются в качестве службы на компьютере. Я не могу заставить службу выполнить "net use" при запуске :(
adamo
Вы пытались изменить параметры политики локального компьютера и запустить сценарий при запуске из раздела «Конфигурация компьютера-> Параметры Windows-> Сценарии»?
Тэноск

Ответы:

22

Это очевидно возможно, согласно этому сообщению StackOverflow .

Однако, прежде чем публиковать содержание ответа, могу ли я сказать, что вы слишком усложняете это?

В таких ситуациях, когда для запуска какого-то дерьмового фрагмента кода требуется войти в систему пользователя (например, сервер Domino, ворчание ), я создал служебную учетную запись, которая всегда должна входить на данный сервер, и настроил сценарий автоматического входа, чтобы машина автоматически входила в указанную учетную запись при перезагрузке. Я бы предположил, что более простым и более приемлемым решением вашей проблемы было бы сделать то же самое и назначить диск для этого пользователя учетной записи службы с помощью групповой политики или сценария входа.

В любом случае, если вы решили попробовать это без пользовательского контекста, см. Ниже. Это хак, поэтому пользуйтесь на свой страх и риск и все

Для этого хакера вам понадобится SysinternalsSuite от Марка Руссиновича: http://technet.microsoft.com/en-us/sysinternals/bb842062.aspx

Шаг первый: Откройте командную строку с повышенными привилегиями cmd.exe (Запуск от имени администратора)

Шаг второй: Поднимитесь снова с правами root с помощью PSExec.exe: Перейдите в папку, содержащую SysinternalsSuite, и выполните следующую команду «psexec -i -s cmd.exe». Теперь вы находитесь в приглашении «nt полномочия \ система», и вы можете доказать это, набрав "whoami". -I необходим, потому что сопоставления дисков должны взаимодействовать с пользователем

Шаг третий: Создайте постоянный подключенный диск в качестве учетной записи SYSTEM с помощью следующей команды: «net use z: \ servername \ sharedfolder / persistent: yes»

Это так просто!

ПРЕДУПРЕЖДЕНИЕ. Вы можете удалить это сопоставление только таким же образом, каким вы его создали, из учетной записи SYSTEM. Если вам нужно удалить его, выполните шаги 1 и 2, но измените команду на шаге 3 на: «net use z: / delete»

ПРИМЕЧАНИЕ. Недавно созданный подключенный диск будет отображаться для ВСЕХ пользователей этой системы, но они будут видеть его как «Отключенный сетевой диск (Z :)». Не позволяйте имени обмануть вас. Он может претендовать на отключение, но это будет работать для всех. Вот как вы можете сказать, что этот взлом не поддерживается M $.

Из комментариев:

Чтобы заставить его работать после перезагрузки, создайте скрипт, содержащий только net use z: \ servername \ sharedfolder, и настройте его на запуск при запуске компьютера, в соответствии с technet.microsoft.com/en-us/library/cc770556.aspx. Он будет работать как системная учетная запись, поэтому нет необходимости в psexec.

HopelessN00b
источник
Использование сетевого ресурса с именем пользователя и паролем, похоже, не работает. Я вижу «Отключенный сетевой диск», но не могу получить к нему доступ «Неверное имя пользователя и пароль».
spankmaster79
1
@ spankmaster79 <shrug> Не знаю, почему вы получили эту ошибку (может быть, заблокирована учетная запись?), но если у вас есть новый или связанный вопрос, я бы рекомендовал задавать его как вопрос на основном сайте, а не комментировать здесь. ,
HopelessN00b
4

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

Это может быть полезно: Как создать службу с файлом .bat на Windows 2008 Server?

Фархан
источник
Похоже, вы приняли мое слово в буквальном смысле слова .. Как вы думаете, требуется ли вход в систему для запуска службы Windows? я сделал опечатку, которую я исправил
Фархан
2

Вы также можете попробовать добавить Sysinternals Suite в C: \ SysinternalsSuite.

  1. Запустить поднятое cmdокно
  2. cd c:\sysint*
  3. psexec -i -s cmd.exe
  4. whoami Чтобы убедиться, что вы не авторитет
  5. net use x: \\PathToDrive или share /persistent:yes

Он должен отображаться как отключенный диск и для его автоматического монтирования просто создайте сценарий запуска с шагом 5 в нем. Вы должны будете использовать шаги 1 - 5, чтобы удалить отображение, просто измените 5, чтобы отразить чистое использование x: / delete

DzSoundNirvana
источник
0

Я нашел решение для постоянной установки диска. Однако диск не установлен на каждом сеансе. Я сделал это на Windows Server 2019.

Допустим, мы хотим смонтировать каталог, target_dirрасположенный на target_server. Мое имя пользователя my_usernameи мой пароль my_passwordв домене MY_DOMAIN. Давайте смонтировать его на T:диске.

Во-первых, создайте новый текстовый файл в любом месте (например, на рабочем столе). Откройте это и проанализируйте это:

@ECHO OFF
net use s: \\target_server\target_dir /persistent:yes

Затем переименуйте его в mount_drive.batи переместите этот файл в C:\Windows\System32\GroupPolicy\Machine\Scripts\Startup.

Убедитесь, что файл больше не является .txtфайлом.

Теперь нажмите Win+R, введите gpedit.mscи запустите редактор локальной групповой политики .

Найдите Computer Configuration\Windows Settings\Scripts (Startup/Shutdown)и дважды щелкните по Startup.
Нажмите на Add...то Browse..., выберите файл , который вы только что переехали.

Затем перейдите Computer Configuration\Administrative Templates\System\Logon, установить Always wait for the network at computer startup and logonна enabled, сохранить и закрыть.

Откройте повышенный терминал, чтобы сохранить свои учетные данные. Затем настройте Windows, чтобы не отключать этот диск после истечения времени ожидания.

cmdkey /add:target_server /user:MY_DOMAIN\my_username /pass:my_password
NET CONFIG SERVER /AUTODISCONNECT:-1

Вы можете при желании проверить, что все работает, запустив C:\Windows\System32\GroupPolicy\Machine\Scripts\Startup\mount_drive.bat

перезагружать

vdsbenoit
источник