sccm для запуска bat файла показывает ошибку плохая среда

Вопрос или проблема

Мне нужно запустить bat-файл на клиентском компьютере и собрать данные из общей папки. Общий путь с файлами и bat-файлом, настроенный в SCCM, но не работает, показывает ошибку, как “неудача, плохая среда”. Вручную bat-файл выполняется. Содержание bat-файла простое.

@ECHO OFF
ECHO %0
Net use q: \\mfs01\Tool\Tool\Standalone /persistent:yes
cd..
q:
KPG_Tool_V1.vbe
@pause

Используйте pushd и popd, чтобы перейти к нужным путям. Что-то вроде

pushd \\mfs01\Tool\Tool\Standalone

cscript KPG_Tool_V1.vbe

popd

В свойствах программы, на вкладке “Среда” вы выбрали “Только когда пользователь вошел в систему” и установили режим выполнения на права пользователей?

Ответ или решение

Ошибка "плохая среда" (bad environment) при запуске bat-файла через SCCM может быть связана с несколькими faktоры. Давайте разберем возможные причины и предложим решения для каждой из них.

1. Неверные условия выполнения

Контекст выполнения

Убедитесь, что для программы в SCCM правильно настроены параметры выполнения. На вкладке "Среда" (Environment) выберите:

  • "Только когда пользователь вошел в систему" (Only when a user is logged on)
  • Режим выполнения (Run Mode) должен быть установлен на Права пользователей (User Rights).

Эти параметры могут повлиять на доступность сети и пользовательские разрешения, что, в свою очередь, может вызвать ошибку "плохая среда".

2. Проблемы с сетью и доступом

Проверка доступа к общему ресурсу

Если bat-файл запускается нормально вручную, это может говорить о том, что файл имеет доступ к сетевому ресурсу, но SCCM может работать в другом контексте. Убедитесь, что у учетной записи, под которой запускается SCCM, есть доступ к общей папке на сервере (\mfs01\Tool\Tool\Standalone). Попробуйте:

  • Выполнить net use в консоли с той же учетной записью, которая используется SCCM, чтобы убедиться, что доступ к ресурсу работает.

3. Улучшение кода bat-файла

Чтобы избежать проблем с изменением каталогов, используйте команды pushd и popd, как уже было предложено. Это обеспечит правильный переход в нужный каталог и возвращение обратно. Вот так выглядит модифицированный bat-файл:

@ECHO OFF
ECHO %0

REM Вход на общий ресурс
pushd \\mfs01\Tool\Tool\Standalone

REM Выполнение скрипта
cscript KPG_Tool_V1.vbe

REM Возврат в исходный каталог
popd

@pause

4. Тестирование и отладка

Для того чтобы диагностировать, где именно происходит сбой, рекомендуется добавлять отладочные сообщения. Например, после каждой важной команды можно добавить ECHO:

@ECHO OFF
ECHO Starting script...

REM Проверка доступа к сети
pushd \\mfs01\Tool\Tool\Standalone || (ECHO Failed to access network location & exit /b 1)
ECHO Accessed network location.

cscript KPG_Tool_V1.vbe || (ECHO Script execution failed & popd & exit /b 1)
ECHO Script executed successfully.

popd
ECHO Finished script.
@pause

Заключение

Ошибки среды при запуске скриптов через SCCM часто связаны с правами доступа и контекстом выполнения. Убедитесь, что настройки SCCM соответствуют требованиям, а также добавляйте дополнительно отладочные коды в скрипты для более точного определения местоположения сбоя. Эффективное применение предложенных выше решений должно помочь вам устранить проблему "плохая среда" и успешно выполнять скрипты на клиентских компьютерах.

Оцените материал
Добавить комментарий

Капча загружается...