Форум системных администраторов

IT => Windows => Тема начата: Wizard от 13 декабря 2016, 12:50:09

Название: GPO сценарий автозапуска .bat
Отправлено: Wizard от 13 декабря 2016, 12:50:09
Доброго времени суток.

Прошу помощи в решении следующей задачи:
необходимо установить на все ПК в домене шрифт.

Создал для этого bat-ник:
copy code39.TTF %systemroot%\fonts
regedit /s font1.reg

Содержание font1.reg:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts]
"Code39 (TrueType)"="Code39.TTF"

Создал политику, добавил этот батник в сценарий автозагрузки ПК.

Сама политика отрабатывает корректно, без ошибок, но в самом батнике похоже ошибка - файл не копируется и в реестр значение не добавляется.

Есть подозрение, что проблема в нехватке прав на запись (в папку %systemroot% и в реестр).

Как понять от какого пользователя запускается скрипт, и как заставить его выполняться от имени определенной УЗ (админской)?
Название: GPO сценарий автозапуска .bat
Отправлено: shs от 13 декабря 2016, 13:31:53
файл не копируется
в вашем батнике не используются полные пути, вы уверены, что во время выполнения ба-файла файл reg и файл ttf находятся в текущей папке?
Название: GPO сценарий автозапуска .bat
Отправлено: Fray от 13 декабря 2016, 13:33:31
Есть подозрение, что проблема в нехватке прав на запись (в папку %systemroot% и в реестр).

Как понять от какого пользователя запускается скрипт, и как заставить его выполняться от имени определенной УЗ (админской)?
Запускать скрипт в контексте компьютера.
Название: GPO сценарий автозапуска .bat
Отправлено: Wizard от 13 декабря 2016, 14:07:34
в вашем батнике не используются полные пути, вы уверены, что во время выполнения ба-файла файл reg и файл ttf находятся в текущей папке?
Да они лежат в общей папке \\172.16.16.5\sysvol\gpma.local\scripts\Fonts1
Думаете стоит прописать полностью? Командная строка же вроде не поддерживает UNC пути.

Запускать скрипт в контексте компьютера.
Вы имеете в виду в GPO скрипт прописывать в конфигурации компьютера, а не пользователя? Если да, то я так и сделал.
Название: GPO сценарий автозапуска .bat
Отправлено: Fray от 13 декабря 2016, 14:16:31
Wizard, копировать файл проще средствами групповой политики, а не скриптом.


Updated: 13 December 2016, 14:17:19

Настройка - Конфигурация Windows - Файлы
Название: GPO сценарий автозапуска .bat
Отправлено: Wizard от 13 декабря 2016, 14:39:10
Fray, и там же выставить добавление значения в реестр?
А что там значит чекбокс Атрибут "Архивация"?
Звучит неплохо, попробую.
Название: GPO сценарий автозапуска .bat
Отправлено: Fray от 13 декабря 2016, 14:58:02
там же выставить добавление значения в реестр?
Там же можно добавлять значения в реетср: Конфигурация Windows - Реестр

А что там значит чекбокс Атрибут "Архивация"?
Это атрибут файла.
Название: GPO сценарий автозапуска .bat
Отправлено: shs от 13 декабря 2016, 15:08:04
Думаете стоит прописать полностью?
естественно


Updated: 13 December 2016, 15:10:36

172.16.16.5
используйте имя домена (в этом случае вам его имя будет разрешено в один из DC домена), а не имя контроллера и уж тем более не его IP-адрес
Название: GPO сценарий автозапуска .bat
Отправлено: Wizard от 13 декабря 2016, 15:41:58
Это атрибут файла.
Это я понял) Но что за атрибут такой? Знаю "только для чтения", "скрытый", но такого не помню...

shs, буду пробовать делать без батника, по совету выше. Но Ваши замечания учту.

Только поясните пожалуйста это:

используйте имя домена (в этом случае вам его имя будет разрешено в один из DC домена), а не имя контроллера и уж тем более не его IP-адрес

В пути вместо IP нужно использовать имя сервера? Но почему?
Название: GPO сценарий автозапуска .bat
Отправлено: Fray от 13 декабря 2016, 15:45:27
В пути вместо IP нужно использовать имя сервера? Но почему?
Имя домена, потому что контроллер может быть не один.

Но что за атрибут такой? Знаю "только для чтения", "скрытый", но такого не помню...
Цитировать
Архивный (Archive)- атрибут файла или папки, обозначающий, что данный файловый объект подлежит компрессии и его содержимое может быть сжато при помощи специальных программ.
Название: GPO сценарий автозапуска .bat
Отправлено: shs от 13 декабря 2016, 15:46:05
В пути вместо IP нужно использовать имя сервера? Но почему?
в вашем конкретном случае лучше использовать не имя DC, а имя домена (причины указал выше).

Причины, по которым не стоит использовать ip-адрес:
1) ip-адрес может быть изменен
2) если вы используете ip-адрес, то будет использована NTLM-аутентификация вместо керберос


Updated: 13 December 2016, 15:47:58

Знаю "только для чтения", "скрытый", но такого не помню...
очень плохо, срочно в гугол!
Название: GPO сценарий автозапуска .bat
Отправлено: Wizard от 13 декабря 2016, 16:54:49
Имя домена, потому что контроллер может быть не один.
в вашем конкретном случае лучше использовать не имя DC, а имя домена (причины указал выше).

Папка sysvol синхронизируется между контроллерами домена что ли?

очень плохо, срочно в гугол!
Виноват. Коллега выше уже привел выдержку... Кажется я понял о чем речь)
Название: GPO сценарий автозапуска .bat
Отправлено: Fray от 13 декабря 2016, 16:59:32
Папка sysvol синхронизируется между контроллерами домена что ли?
:facepalm2:

очень плохо, срочно в гугол!
Название: GPO сценарий автозапуска .bat
Отправлено: Wizard от 15 декабря 2016, 15:51:30
:facepalm2:
У меня есть некоторые пробелы в знаниях. Подтяну этот момент.

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

Благодарю за помощь.