Установка 1с 8.3 в домене. Установка и обновление «1С Предприятие v8» с помощью групповых политик (GPO). Конфигурационный файл, определяющий расположение общего сетевого каталога

При установке или обновлении программы 1С Предприятие многие администраторы сталкиваются с невозможностью корректного выполнения этих заданий с помощью групповых политик. Наиболее распространена ошибка 1720:

Product: 1C:Enterprise 8.1 — Error 1720.There is a problem with this Windows Installer package. A script required for this install to complete could not be run. Contact your support personnel or package vendor. Custom action customDetectPrevVersion script error -2147467259, Msi API Error: ProductInfo,Product,Attribute Line 7, Column 5

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

Для выполнения обновления необходимо вручную отредактировать установочный файл msi до создания групповой политики. Для этого мы используем бесплатный инструмент компании Microsoft для редактирования файлов msi под названием Orca . Эта утилита входит в состав Microsoft Windows Software Development Kit (SDK) , а такжe её можно скачать отдельно .

  1. Скачиваем и устанавливаем Orca ;
  2. Открываем программой файл 1CEnterprise 8.1.msi
  3. Находим раздел «CustomAction » и в нем параметр «customDetectPrevVersion «. Удаляем этот параметр, сохраняем изменения;
  4. Копируем в общедоступную сетевую папку дистрибутив, который установлен на текущий момент (если мы обновляем билд) и новую версию с измененным нами файлом msi. Копируем, естественно, в разные папки

Теперь нам необходимо создать групповую политику и создать в разделе «Установка программм » два пакета установки — старой (например 8.1.11)и новой (8.1.13) версий (рис.2).


Затем в свойствах пакета установки новой версии 1С нам необходимо указать, что данный пакет выполняет обновление старой версии 8.1.11 (рис.3). После назначения политики может потребоваться дополнительная перезагрузка компьютера, так как не синхронизированы удаление старой и установка новой версий ПО.

Возле ректора 26 июля 2014 в 13:09

Подключение баз 1С 8 с помощью AD/GPO

  • Системное администрирование

Добрый день!

Навеяно недавним постом - , поделюсь альтернативным решением данной задачи:

  • без использования скриптов
  • без правки файлов 1С (ibases.v8i, 1CEStart.cfg)
Стоящие задачи по автоматизации схожие: существует множество баз 1С и каталог AD, необходимо пользователю, находящемуся в определенной группе AD, дать возможность запустить определенную базу 1С.

Данный способ удобен только если пользователь работает с небольшим количеством баз 1С (от одной до десяти), так как он предполагает вынесение для каждой базы отдельного ярлыка на рабочий стол.

Шаг 1.

Создадим в AD группу, включающую в себя список компьютеров, на которых установлен клиент 1С - в нее войдут серверы терминальной фермы, а так же компьютеры, на которых установлен клиент 1С. На самом деле это можно и не делать, но мы будем использовать эту группу как дополнительный фильтр:

Шаг 2.

Создадим в AD группы для пользователей баз 1С:

Можно заметить, для запуска базы с другими параметрами (в данном случае в режиме толстого клиента) создается отдельная группа.

Шаг 3.

Создаем групповую политику, управляющую ярлыками пользователя:

К сожалению, для 1С еще не существует версии клиента для платформы х64, поэтому расположение клиента по умолчанию зависит от разрядности платформы. Для версии 1С 8.3 на 32-разрядной версии Windows клиент установлен в %ProgramFiles%\1cv8\common\1cestart.exe, а на 64-разрядной Windows - %ProgramFiles(x86)%\1cv8\common\1cestart.exe

Теперь более подробно рассмотрим создание каждого элемента.

На вкладке «Общие» зададим параметры подключения к базе, расположение ярлыка (в данном случае - рабочий стол). Пример создания ярлыка для платформы Win x64

Небольшое отступление для тех, кто только планирует переход с платформы 1С 8.2 на 8.3:

Во вкладке «Общие параметры» сделаем нацеливание нашего ярлыка на сделанные ранее группы AD:

Настройка для платформы Win x86:

И для Win x64:

Добавление новой базы сводится к созданию новой группы AD, копированию ярлыка в GPO и редактированию подключения к базе.

P. S. Если у вас есть сотрудники, самостоятельно расставляющие ярлыки на рабочем столе , то этот способ доступа к базам лучше не использовать.

Спасибо за внимание, надеюсь данный пост будет вам полезен.

Теги: 1с, ad, gpo, links

И так, какие же способы развертывания совего софта нам предлагает 1с?

1. Установка с помощью logon-скрипта

2. Установка, путем размещения в общем сетевом каталоге

3. Установка с помощью групповых политик

Первые два способа мы отвергаем, т.к. в данную статью рассмотрим именно установку с помощью групповых политик (GPO).

Ивформация на страницах 1С:ИТС которую нам предлагает производитель о развертывании своего продукта при помощи групповых политик, весьма скупа:

При установке через групповые политики для указания языка установки нужно указывать соответствующий языковой файл трансформации. Имена файлов соответствуют десятичному представлению LCID Microsoft Windows (с расширением.mst). Файл трансформации для русского языка называется 1049.mst.

Кроме этого, дополнительно нужно указать файл трансформации adminstallrestart.mst. В этом случае система «1С:Предприятие» при несовпадении версий клиента и сервера будет предлагать перезагрузку компьютера для установки новой версии. Администратор должен позаботиться, чтобы новый дистрибутив уже был добавлен в групповых политиках.

С использованием групповых политик можно устанавливать несколько версий «1С:Предприятия».

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

1049.mst – очевидна, а о adminstallrestart.mst не слишком полезна. Поэтому мы создадим свой файл транформации.
В первую очередь хотелось бы понять, как можно указать установщику, какие компоненты продукта мы хотим установить, а какие – нет? Не смотря на то, что документация от 1c в основном достаточно обширна и подробна, об этом почему-то не говориться ни слова. Но выйти из положения нам поможет logon-скрипт, который мы отвергли в самом начале. В скрипте мы можем увидеть следующие строки:

CmdLine = cmdLine & " DESIGNERALLCLIENTS=1 THINCLIENT=1 WEBSERVEREXT=0 SERVER=0 CONFREPOSSERVER=0 CONVERTER77=0 SERVERCLIENT=1 LANGUAGES=RU"

Где:
DESIGNERALLCLIENTS – все клиенты и конфигуратор.
THINCLIENT – тонкий клиент для клиент-серверного варианта работы.
THINCLIENTFILE – тонкий клиент с возможностью работы с файловыми информационными базами.
SERVER – сервер «1С:Предприятия». Если программа установки запускается из программы запуска, то сервер будет установлен как приложение.
WEBSERVEREXT – компоненты расширения для веб-сервера.
CONFREPOSSERVER – сервер хранилища конфигураций «1С:Предприятия».
SERVERCLIENT – компоненты для администрирования кластера серверов «1С:Предприятия».
CONVERTER77 – конвертер информационных баз из версии «1С:Предприятия 7.7».
LANGUAGES – список языков интерфейса для установки. Если указано несколько языков, они перечисляются через «,».

В этой строке скрипта формируется командная строка, которая будет передана на обработку установщику msiexec.

Чтобы создать файл транформации нам потребуется редактор «Orca». (http://www.technipages.com/download-orca-msi-editor)
И так, после установки запускаем программу. “Файл” – “Открыть”, и выбираем “1CEnterprise 8.msi” из дистрибутива 1С. Влевой части программы появился список таблиц, вправой значения таблиц. Т.к. сам 1С не рекомендует менять msi-пакет, поэтому идем в меню “Transform” – “New Transform”.

Необходимо перейти к таблице “Property”. Вправой части ищем строку “DEFLANGUAGE”, со значением “Auto”. Значение необходимо поменять на “RU” (Без кавычек конечно).

Для большенства пользователей необходимо установить минимум компонентов, это Тонкий клиент, Толстый клиент, и язык (например русский)
Поэтому создадим новые поля (Ctrl+R), где нужно указать имя и значение.
DESIGNERALLCLIENTS = 1
THINCLIENT = 1
THINCLIENTFILE = 1
SERVER = 0
WEBSERVEREXT = 0
CONFREPOSSERVER = 0
SERVERCLIENT = 0
CONVERTER77 = 0
LANGUAGES = RU

Т.е. Должно получится как на картинках:

Далее идем в меню “Transform” – “Generate Transform…”. Сохраняем файл, можно в папку с дистрибутивом, например Client.mst
На этом генерация файла транформации закончена.
Чтобы проверить установку, необходимо открыть программу “cmd”. Перейти в папку с дистрибутивом. И выполнить команду:
setup.exe /S TRANSFORMS=Client.mst TRANSFORMS =1049.mst
или
msiexec /i "<каталог с дистрибутивом >" TRANSFORMS="<каталог с дистрибутивом >" \Client.mst TRANSFORMS="<каталог с дистрибутивом >" \1049.mst /passive

В первой команде параметр “/S” и во второй команде парамерт “/passive” означает, что установка будет прооходить в фоновом режиме.

После некоторого времени можно проверять. Должно установиться Толстый клиент, Тонкий клиент и русский интерфейс.

Далее нужно создать новую установку в групповых политиках домена.
Так же нужно создать общий каталог в вашей сети, где будут хранится установочные файлы. Проверить чтобы пользователи домена имели права чтения из этого каталога.
Открываем редактор GP. Создаем новую политику. Открываем её для редактирования. Переходим в раздел «Конфигурация компьютера» - «Установка программ».

Создаем новый пакет. Выбираем файл 1CEnterprise 8.2.msi, путь до файла необходимо указывать через сетевое окружение \\SRV\…..\1CEnterprise 8.msi, метод развертывания выбираем - особый, для того чтобы можно было внести модификации.

После создания пакета откроется окно свойств пакета.
Необходимо перейти на закладку «Модификации» и добавить файл трансформации для русского языка называется 1049.mst и файл трансформации Client.mst.

После того как нажмете «ОК» файлы модификации добавить будет не возможно.
Пакет готов. Стоит отметить, что пакет необходимо применять на группу компьютеров, для этого в AD необходимо создать такую группу и поместить туда компьютеры, для которых предполагается установка.

Что-то забросил я свой уютненький. Исправляюсь. Сегодня речь пойдет об установке 1c v8.2 в корпоративной среде при помощи групповых политик. И так, какие же способы развертывания совего софта нам предлагает 1с?

  1. Установка с помощью групповых политик

Первые два способа мы отвергаем, т.к. для того, чтобы ими воспользоваться пользователь должен обладать правами локального администратора (это же не наши методы). Можно было бы использовать скрипт в качестве startup-скрипта, небольшим допиливанием оного. Но, честно говоря, не понимаю: зачем использовать скрипт, при наличии штатной возможности развернуть приложение из msi-пакета при помощи групповых политик. Казалось бы, очередной банальный случай развертывания ПО в домене. Сейчас зайдем на сайт производителя, прочитаем о том, как настроить msi-пакет, возможно, даже скачаем какой-нибудь инструментарий для создания файла трансформации (mst-файла), как это принято у крупных производителей софта, и дело будет сделано. Однако, не тут-то было. Информация, которую нам предлагает производитель о развертывании своего продукта при помощи групповых политик, весьма скупа:

При установке через групповые политики для указания языка установки нужно указывать соответствующий языковой файл трансформации. Имена файлов соответствуют десятичному представлению LCID Microsoft Windows (с расширением.mst). Файл трансформации для русского языка называется 1049.mst.

Кроме этого, дополнительно нужно указать файл трансформации adminstallrestart.mst. В этом случае система «1С:Предприятие» при несовпадении версий клиента и сервера будет предлагать перезагрузку компьютера для установки новой версии. Администратор должен позаботиться, чтобы новый дистрибутив уже был добавлен в групповых политиках.

С использованием групповых политик можно устанавливать несколько версий «1С:Предприятия».

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

Очень странный набор информации нам предоставила фирма 1c: информация о файле трансформации (модификации) 1049.mst – очевидна, а о adminstallrestart.mst не слишком полезна. В первую очередь хотелось бы понять, как можно указать установщику, какие компоненты продукта мы хотим установить, а какие – нет? Не смотря на то, что документация от 1c в основном достаточно обширна и подробна, об этом почему-то не говориться ни слова. Но выйти из положения нам поможет logon-скрипт, который мы отвергли в самом начале. В скрипте мы можем увидеть следующие строки:

cmdLine = cmdLine & “THICKCLIENT=1 THINCLIENT=1 WEBSERVEREXT=0 SERVER=0 CONFREPOSSERVER=0 CONVERTER77=0 SERVERCLIENT=0 LANGUAGES=RU”

В этой строке скрипта формируется командная строка, которая будет передана на обработку установщику msiexec. Как мы видим, в эту строку добавляются параметры вида “Property=PropertyValue”. Разумно было бы предположить, что каждое из этих свойств должно найти свое отражение в таблице Properties msi-пакета. Заглянув в msi-пакет при помощи редактора Orca (о том, уже было написано ранее в моем блоге), я не увидел ни одного из этих свойств в пакете 1c. Поэтому, на всякий случай, .

И так, нам нужно добавить несколько строк в таблицу Properties, содержащих соответствующие свойства и их значения. Конечно же мы не будем вносить изменения непосредственно в сам пакет установки (msi-файл), а подготовим при помощи Orca трансформатор (mst-файл). На скриншоте показаны изменения, которые необходимо внести в инсталляционный пакет для того, чтобы указать, что мы хотим установить только толстого и тонкого клиента и при этом выбрать русский язык для интерфейса (не забываем, что надо не только выбрать русский язык для интерфейса, но и добавить его в инсталляционный пакет при помощи соответствующего трансформатора – файла 1049.mst). О том, как добавлять инсталляционный пакет и файлы модификации (трансформации) в групповую политику рассказывать не буду, надеюсь, что вы это знаете, а если не знаете, то можете .

Осталось рассмотреть вопрос добавления информационных баз в список, который увидит пользователь при запуске программы 1c. К счастью со времен 1c v 7.7. многое изменилось и для этого не требуется править реестр. Информация о базах теперь храниться в файле с расширением v8i. По умолчанию файл располагается на локальном компьютере в папке %APPDATA%\1C\1CEStart и имеет имя ibases.v8i . , но тут есть некоторые ограничения, связанные с тем, что файлы *.v8i – это файлы в формате unicode, а GPP с файлами в unicode кодировке работать не умеет. Поэтому приходится идти на компромиссы, о которых вы можете прочить у Сергея в блоге. Но существует другой способ создания списка информационных баз для пользователя, который лишен этого недостатка. Начиная с v8.1, в 1c появилась возможность, единожды прописав информационную базу в список “руками”, выгрузить описание каждой информационной базы в отдельный v8i-файл. Затем, эти v8i-файлы можно разместить на общем сетевом ресурсе и добавлять их пользователям в список общих информационных баз. А, зная о том, что общий список информационных баз хранится в файле 1CEStart.cfg , который располагается папке %APPDATA%\1C\1CEStart , можно для этих целей использовать GPP без проблем, с которыми столкнулся Сергей Бетке. Приведу пример содержимого простейшего файла 1CEStart.cfg (описание формата файла можете найти на сайте http://its.1c.ru , если вы счастливый обладатель подписки на ИТС).

С использованием групповых политик можно устанавливать несколько версий «1С:Предприятия».
Для установки новой версии необходимо создать новую установку в групповых политиках.

При установке через групповые политики для указания языка установки нужно указывать соответствующий языковой файл трансформации. Имена файлов соответствуют десятичному представлению LCID Microsoft Windows (с расширением.mst). Файл трансформации для русского языка называется 1049.mst.
Кроме этого, дополнительно нужно указать файл трансформации adminstallrestart.mst. В этом случае система «1С:Предприятие» при несовпадении версий клиента и сервера будет предлагать перезагрузку компьютера для установки новой версии. Администратор должен позаботиться, чтобы новый дистрибутив уже был добавлен в групповых политиках.

Нужно создать общий каталог в вашей сети, где будут хранится установочные файлы. Проверить чтобы пользователи домена имели права чтения из этого каталога.
Открываем редактор GP. Создаем новую политику. Открываем её для редактирования. Переходим в раздел «Конфигурация компьютера» — «Установка программ». Пример показан на Windows Server 2008 R2.

Создаем новый пакет. Выбираем файл 1CEnterprise 8.2.msi, путь до файла необходимо указывать через сетевое окружение \\SRV\…..\1CEnterprise 8.2.msi, метод развертывания выбираем — особый, для того чтобы можно было внести модификации.

После создания пакета, у меня примерно 30 секунд, откроется окно свойств пакета.

Необходимо перейти на закладку «Модификации» и добавить файл трансформации для русского языка называется 1049.mst и файл трансформации adminstallrestart.mst. Должно получится так:

После того как нажмете «ОК» файлы модификации добавить будет не возможно.

Пакет готов. Стоит отметить, что пакет необходимо применять на группу компьютеров, для этого в AD необходимо создать такую группу и поместить туда компьютеры, для которых предполагается установка.

Поделитесь с друзьями или сохраните для себя:

Загрузка...