Автоматизируем это... установка, настройка платформы и конфигурации 1С с помощью скриптов.

13.11.25

База данных - Администрирование СУБД

Несколько скриптов для автоматизации рутинных операций установки и настройки платформы 1С. Примеры bat-файла и vbs-скриптов для системных администраторов.

Нечасто, но все-таки случаются в серых буднях обычного системного администратора или администратора сервера 1С яркие деньки, непохожие на все прочие. Внезапно или запланированно компания покупает новый сервер для нужд 1С (да-да, и на улице 1С-ников случаются праздники). Вот теперь-то можно уже развернуться на новом железе – и платформу обновить, и SQL-сервер, и… и много еще чего! Да и обычным пользователям тоже станет комфортнее! Да, кстати, о них, об этих пользователях, на рабочих станциях ведь у нас настроено подключение на старый теперь уже сервер, да и версия платформы очень может быть тоже прежняя. А нам мечталось, что все теперь будет по-новому! Ладно, если пользователей у нас с десяток, а если их пара сотен или того больше?! Вот примерно так заканчиваются тихие будни и спокойная жизнь системных администраторов. Моя цель – помочь моим коллегам побыстрее снова вернуться в свою размеренно-привычную колею. Самое главное для любого специалиста ИТ - помнить твердое правило: любые рутинные операции могут и должны быть автоматизированы.   

Для начала разместим установочные файлы конфигурации в папку с общим доступом для любого пользователя нашей локальной сети. А для установки нужной платформы (в моем случае версии 24.1548) напишем простенький bat-файл, например, такой:

@echo off

chcp 65001

echo Внимание! устанавливается новая версия платформы 1С. Дождитесь окончания установки

msiexec /i "\\Путь к расшаренному каталогу с файлами установки 1С\8.3.24.1548_tc64\1CEnterprise 8 Thin client (x86-64).msi" /qn TRANSFORMS=adminstallrelogon.mst;1049.mst LANGUAGES=RU

echo Установлена версия платформы 1С 8.3.24.1548

Часть дела сделана! Вуаля! Остается нюанс, про который мы часто забываем – подкорректировать файл ibases.v8i, если мы перенесли кластер сервера на новый. Изменять файл вручную, как и изменять настройки кластера в окне подключения к базе 1С через кнопку «изменить» - не наш метод. Нам лень. Проще написать, к примеру, vbs-скрипт, который потом будет это делать за нас для каждой рабочей станции в нашей локальной сети.

Вместо одного сервера (сервер1) записывается другой (сервер2) по определенному условию для одной конкретной базы «БАЗА1С»:

Const ForReading = 1

Const ForWriting = 2

Const TristateUseDefault = -2

Set WshShell = WScript.CreateObject("WScript.Shell")

Set fso = CreateObject("Scripting.FileSystemObject")

Set WshShell = WScript.CreateObject("Wscript.Shell")

'Проверяем, что платформа 1С уже установлена

Set objFSO = CreateObject("Scripting.FileSystemObject")

If (objFSO.FolderExists("C:\Program Files\1cv8") Or objFSO.FolderExists("C:\Program Files (x86)\1cv8")) Then

 APPDATA = WshShell.ExpandEnvironmentStrings("%APPDATA%")

 v8i = APPDATA + "\1C\1CEStart\ibases.v8i"

 If fso.FileExists(v8i) Then

str2 = ""

        Set objFile = fso.OpenTextFile(v8i, ForReading, False, TristateUseDefaul)

                               Do While Not objFile.AtEndOfStream

                               str = objFile.ReadLine

                               i = InStr(str,"БАЗА1С")

                               If i >0 Then

                               str = Replace (str, "сервер1", "сервер2")

                               End If

                               str2 = str2 + str & vbCrLf

                               Loop

                objFile.Close

End If

fso.DeleteFile(v8i)

Set objFile = fso.OpenTextFile(v8i, ForWriting, True, TristateUseDefaul)

objFile.Write str2

objFile.Close

WScript.quit

End If

Всё получилось? Иногда на этом пути нас поджидают неожиданные препятствия, о которых мы и позабыли, или не знали. К примеру, уже написанный нами batник нужно запускать на рабочей станции под учетной записью администратора, а текущий пользователь такими правами и не обладает. Конец нашей автоматизации!? А ничего подобного. Можно исхитриться и написать скрипт vbs, который запустить нужный нам файл с правами администратора.

Проверим установлена ли на рабочей станции нужная платформа, если нет – запустим с правами администратора bat-файл из расшареной папки на сервере:

If NOT (objFSO.FolderExists("C:\Program Files\1cv8\8.3.24.1548") Or objFSO.FolderExists("C:\Program Files (x86)\1cv8\8.3.24.1548")) Then

shell.ShellExecute "cmd.exe", "/c ""\\Путь до расшаренной папки на сервере\имя файла.bat""", "", "runas", 1

End If

Ну и напоследок завершающий штрих – ярлык платформы на рабочем столе. Да его мы тоже создадим программно. В простейшем случае вот таким vbs-скриптом:

If Not objFSO.FileExists(strDesktop & "\1С 8.3.24.lnk") Then

                shortcutPath = WshShell.SpecialFolders("Desktop") & "\1С 8.3.24.lnk"

                Set shortcut = WshShell.CreateShortcut(shortcutPath)

                If objFSO.FolderExists("C:\Program Files\1cv8\8.3.24.1548") Then

                shortcut.TargetPath = "C:\Program Files\1cv8\8.3.24.1548\bin\1cv8c.exe"

                      shortcut.WorkingDirectory = "C:\Program Files\1cv8\common\"

                      shortcut.Description = "1C Предприятие 8.3.24"

                shortcut.Save

                End If

                If objFSO.FolderExists("C:\Program Files (x86)\1cv8\8.3.24.1548") Then

                shortcut.TargetPath = "C:\Program Files (x86)\1cv8\8.3.24.1548\bin\1cv8c.exe"

                      shortcut.WorkingDirectory = "C:\Program Files (x86)\1cv8\common\"

                      shortcut.Description = "1C Предприятие 8.3.24"

                shortcut.Save

                End If

End If

 

Конечно, мои решения не всем могут понравиться, но я уверен, что кому-то наверняка очень сильно помогут упростить и без того нелегкую жизнь простого IT-администратора.

Вступайте в нашу телеграмм-группу Инфостарт

bat-файл vbs-скрипт установка 1С автоматизация установки 1С

См. также

HighLoad оптимизация Администрирование СУБД Программист Бесплатно (free)

Продолжаем знакомить вас с улучшениями СУБД Tantor Postgres для работы с продуктами 1С. В рамках предыдущей статьи мы разобрали арсенал специализированных функций, призванных существенно ускорить выполнение типичных для 1С операций, снизить нагрузку на инфраструктуру и упростить администрирование. Сегодня мы рассмотрим, с какими проблемами можно столкнуться при высоких значениях default_statistics_target, расскажем о новых оптимизациях для ускорения выполнения запросов, и, конечно, коснемся временных таблиц.

11.11.2025    408    Tantor    10    

5

Администрирование СУБД 1С:Элемент Системный администратор Программист Бесплатно (free)

1С:Управление ландшафтом – это инструмент, способный объединить десятки разрозненных систем, серверов и баз данных в единое управляемое пространство, где установка, обновление, администрирование и контроль за инфраструктурой 1С происходят из одной точки, а рутинные задачи решаются за пару минут. Расскажем о том, как сделать свой ИТ-ландшафт управляемым.

23.10.2025    2955    user2169944    0    

12

Администрирование СУБД Системный администратор 1С:Управление ветеринарными сертификатами Развлечения, искусство, спорт Бесплатно (free)

Всем кто ложится спать - спокойного сна (с) В.Р. Цой. А ничто так не способствует спокойному сну, как чистая совесть и наличие бэкапов. Лучше всех в бэкапы postgres умеет команда из PostgresPro, которая написала pg_probackup и забесплатно(безвозмездно, то есть даром (с) - Сова) даёт его всем желающим. Низкий им за это поклон.

17.10.2025    765    Cocky_Idiot    2    

4

Администрирование СУБД Программист 1С v8.3 Россия Бесплатно (free)

Ошибка реструктуризации: "Запись не найдена в менеджере имен баз данных". Диагностика и решение проблемы.

22.08.2025    2208    a13k55    0    

17

Информационная безопасность Администрирование СУБД Системный администратор Бесплатно (free)

Рассказываем о безопасной и удобной организации доступа к кластеру 1С для всей ИТ-команды с помощью централизованного приложения управления. Автор показывает, как настроить разграничение прав, избежать типичных уязвимостей и эффективно управлять сеансами, не рискуя целостностью системы. Особое внимание уделено работе с объектной моделью 1С, прерыванию тяжелых запросов и диагностике проблем через технологический журнал.

11.08.2025    3290    evvakra    4    

9

Администрирование СУБД Программист 1С v8.3 1C:ERP Бесплатно (free)

Небольшая инструкция, откуда взять функциональную модель для системы 1С: СППР и как её загрузить.

06.08.2025    2158    Senator_I    2    

5

HighLoad оптимизация Администрирование СУБД Системный администратор Программист 1С v8.3 Бесплатно (free)

Сегодня мы проведем обзор изменений, касающихся работы с высоконагруженными системами 1С. Новый релиз предлагает не просто несколько точечных исправлений, а целый арсенал специализированных функций, призванных существенно ускорить выполнение типичных для 1С операций, снизить нагрузку на инфраструктуру и упростить администрирование. Спектр улучшений распространился на многие ключевые узлы производительности от оптимизации работы с временными таблицами и сложными запросами RLS (row-level security) до ускорения критически важных процессов наподобие «Закрытия месяца». Обо всем этом и пойдет речь в статье.

22.07.2025    4816    Tantor    9    

10
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Mi11er 101 14.11.25 10:01 Сейчас в теме
Для серверов есть GPO, для клиентской части в целом тоже есть GPO
Для ярлыков ... Есть GPO )

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