Автозагрузка, установка платформы 1С (PowerShell)

14.12.18

База данных - Инструменты администратора БД

Если у вас нет RDP, нет или не настроено AD, а обновить платформу на большом количестве ПК как-то надо, то Вам сюда.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Автозагрузка и Установка Платформы 1с (PowerShell):
.epf 865,82Kb
6 2 500 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Предыстория: 1с PostgreSQL на Centos'e, организована работа удаленных пользователей через нэтбуки (Windows 10).

Подключение: тонкий клиент, права минимальные. (что в 1с, что в ОС на пк).

Задача: автоматизировать обновление платформы на нэтбуках.

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

 

Решение: (загрузка и установка средствами 1с и Powershell)

 

В 1с создаём пользователя: "Установка платформы" с минимальными правами,  для него в конфигураторе снимаем галку

"Защита от опасных действий", чтобы не пугать пользователей лишними сообщениями.

Добавляем обработку в необходимую подсистему, всё лишнее убираем.

 

Сценарий находится в макете (сохраняем с раширением ps1, адаптируем под себя)

Изменяем следующие данные:

$Object.MapNetworkDrive( $DISK, "\\88.88.88.111\server", "true", "Пользователь", "ПарольПользователя" )

88.88.88.111\server" - адрес и имя сетевого диска с обновлениями

"Пользователь", "ПарольПользователя" -  Имя пользователя и Пароль, под которым можно подключиться к диску

$TARGET=$objShell.NameSpace("B:\1C\64Klient\")

1C\64Klient\ - Путь к папке установочных файлов платформы на сетевом диске

$secpasswd = ConvertTo-SecureString "ПарольАдминистратораПК" -AsPlainText -Force

"ПарольАдминистратораПК" - Пароль Администраторской учетной записи на ПК  (на всех нэтбуках единая учетная запись для администратора)

$mycreds = New-Object System.Management.Automation.PSCredential ("ИмяПользователяАдминистратора", $secpasswd)

"ИмяПользователяАдминистратора" - Имя администраторской учетной записи на ПК.

Сохраняем, загружаем обратно в макет.

Порядок работы обработки:

Пользователь запускает подключенную обработку, файл сценария  Powershell сохраняется в каталог на Диск С, Приложение 1с закрывается, запускается сценарий Powershell:

1) Подключение к сетевому диску

2) Копирование файлов установки платформы

3) Отключение сетевого диска

4) Установка платформы от имени администратора (тихий режим установки, от пользователя потребуется 1 раз подтвердить вносимые изменения - (контроль учетных записей Windows ( в 8 проходило без него, в 10  не удалось обойти)).

5) Удаление папки установки и файла сценария
 

Тестировалось на Платформе 8.3.11.3034 (ERP 2.4.5.129)

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

Обработка Платформа 1С установка PowerShell автозагрузка автоматизация администрирование

См. также

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку одновременно в несколько потоков. А так же автоматически, без непосредственного участия пользователя. Решение в Реестре отечественного ПО

24900 руб.

20.08.2024    63788    334    162    

298

Инструменты администратора БД Инструментарий разработчика Роли и права Программист 1С:Предприятие 8 1C:Бухгалтерия Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

17000 руб.

10.11.2023    24342    92    42    

101

Инструменты администратора БД Роли и права Системный администратор Программист Пользователь 1С 8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Документооборот 1С:Зарплата и кадры государственного учреждения 3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Роли… Вы тратите много времени и сил на подбор ролей среди около 2400 в ERP или 1500 в Рознице 2, пытаясь понять какими правами они обладают? Вы все время смотрите права в конфигураторе или отчетах чтоб создать нормальные профили доступа? Вы хотите наглядно видеть какие права дает профиль и редактировать все в простом виде? А может хотите просто указать подсистему и дать права на просмотр и добавление на объекты и не лезть в дебри прав и чтоб обработка сама подобрала нужные роли? Все это теперь стало возможно! Обновление от 17.06.2025, версия 1.3

21960 руб.

06.12.2023    21813    78    10    

110

Закрытие периода Инструменты администратора БД Корректировка данных Бухгалтер Пользователь 1С:Предприятие 8 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

14640 руб.

29.04.2020    49199    134    159    

89

Файловый обмен (TXT, XML, DBF), FTP Поиск данных Инструменты администратора БД Корректировка данных Системный администратор Программист 1С:Предприятие 8 1C:Бухгалтерия 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Данная обработка позволит Вам легко и просто, а главное - быстро, выполнить сравнение данных между ЛЮБЫМИ базами (и РИБ, по правилам конвертаций) по контрольным суммам выбранных объектов баз 1С, работающих на платформах 8.3 и выше. Удобный и понятный интерфейс в виде "мастера". Высокая скорость сравнения достигается за счет специального алгоритма расчета контрольной суммы объекта/записи и сравнения по данным суммам объектов 2х баз через файл. Имеется возможность выбора реквизитов, по которым система будет сравнивать объекты. Сравнение количества записей в движениях документов, возможность сравнивать данные по правилам конвертации и не только! Выбор объектов конфигурации для КАЖДОГО узла в отдельности с индивидуальным отбором для каждого объекта конфигурации, работа с FTP, сохранение или загрузка настроек, сохранение или загрузка результата сравнения, регистрация на обмен объекта и его движений. (Обновление от 12.11.2024, версия 2.2-2.5)

24400 руб.

27.10.2017    45013    31    13    

49

Инструменты администратора БД Системный администратор 1С:Предприятие 8 1С:Комплексная автоматизация 1.х 1С:Управление производственным предприятием Платные (руб)

Конфигурация Комплексная автоматизация 1.1 (и УПП 1.3 тоже) хранит файлы и изображения в справочнике Хранилище дополнительной информации в реквизите Хранилище типа ХранилищеЗначений. Та же история с ВложениямиЭлектроннойПочты. Но при этом присоединенные файлы в Электронном документообороте хранит в томах на диске. Эта доработка позволяет использовать стандартный механизм хранения файлов, изображений и вложений электронных писем в томах на диске. При этом можно разделить тома хранения по объектам конфигурации.

5490 руб.

10.11.2015    65959    102    59    

84
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. blackhole321 1306 14.12.18 14:42 Сейчас в теме
Я правильно понимаю, что на каждый нетбук копируется файл скрипта PowerShell, где открытым текстом вбит пароль локального администратора компьютера (в Вашем случае всех рабочих станций)?
3. login1020 150 14.12.18 14:57 Сейчас в теме
(1) Да так и есть, не самый лучший вариант в плане безопасности, но в моём случае удаленки к ним нет, как и постоянного интернет соединения, а обновлять 60 + машин, плюс заставлять людей приезжать с ними в офис не самое приятное решение.
2. blackhole321 1306 14.12.18 14:51 Сейчас в теме
И возможно имеет смысл рассмотреть вариант простого скрипта без обработок, который запускается с компьютера администратора, примерно следующего содержания:
$session = New-PSSession -ComputerName ИмяКомпьютера -Credential ВашиУчетныеДанные
Invoke-Command -Command ВашаКомандаИлиСкриптБлок -Session $session
4. login1020 150 14.12.18 15:02 Сейчас в теме
(2) Можно по-подробнее?
В моём случае эти нетбуки не в корп сети, интернет соединение у них либо модем, либо wifi местной сети, в которой они находятся, из вне к ним не подключиться.
5. blackhole321 1306 14.12.18 15:11 Сейчас в теме
(4)
из вне к ним не подключиться

Тогда приведенный мной вариант не годится.

В этом случае, можно при конфигурировании устройства создавать scheduled task со скриптом, который скажем запускается при старте компьютера и периодически опрашивает некий сервер обновлений на предмет наличия соответствующих команд, и выполняет необходимые действия.
В этом случае пароль хоть и хранится на локальной машине, однако в зашифрованном виде и добраться до него сложно.
login1020; +1 Ответить
7. login1020 150 14.12.18 15:25 Сейчас в теме
(5) Тут мы просто в планировщике указываем какой скрипт выполнить по расписанию, и т какого пользователя ( от администратора).
Да, удобно и безопаснее, подходит для настройки новых машин, старые не переделать, пока в руки не принесут.
6. blackhole321 1306 14.12.18 15:20 Сейчас в теме
(4)
Что-то типа:

while($true)
{
Start-Sleep -Seconds ВашТаймаут
$result = Invoke-WebRequest -Uri УРЛВашегоСервераОбновлений
# Удобно передавать данные через json
$jsonObject = ConvertFrom-Json -InputObject $result

if (jsonObject.UpdateFlag -eq $true)
{
# Обновляем
}
}
login1020; +1 Ответить
8. kolya_tlt 92 14.12.18 15:48 Сейчас в теме
а есть решение не палить пароль админа?
9. login1020 150 14.12.18 15:53 Сейчас в теме
(8) Оно В (5)
Но с начало руками надо забить задание в планировщик, подвязать скрипт, и его надо будет немного переписать в части запуска установки.
Планировщик
10. login1020 150 14.12.18 15:58 Сейчас в теме
(8) Как вариант можно сохранять файл сценария в Temp файлы и оттуда запускать, там его не найти хотя бы рядовому пользователю, или же через планировщик указывать напрямую от кого и что запускать
11. blackhole321 1306 14.12.18 16:04 Сейчас в теме
(10)
Как вариант можно сохранять файл сценария в Temp файлы и оттуда запускать, там его не найти хотя бы рядовому пользователю

Наверное - это не очень удачно т.к. работает до тех пор, пока кто-либо не озаботился этим вопросом.
Вообще, наверное самым перспективным, будет - развернуть AD + DirectAccess. В этом случае Вы сможете нормально управлять инфраструктурой и всяких танцев с бубном требоваться не будет.
12. login1020 150 14.12.18 16:07 Сейчас в теме
13. blackhole321 1306 14.12.18 16:11 Сейчас в теме
(12)У Вас вся инфраструктура на Linux, только клиенты Windows?
14. login1020 150 14.12.18 16:15 Сейчас в теме
(13) Сервер Линуксовый, на нём же и 1с висит. Клиенты Windows начиная от xp заканчивая 10.
15. blackhole321 1306 14.12.18 16:17 Сейчас в теме
(14)Ну если начиная с XP :), тогда наверное скрипты.
16. u_n_k_n_o_w_n 35 11.01.19 18:37 Сейчас в теме
Как я понимаю после первой установки, следующие платформы можно просто устанавливать простым копированием.

А просто скопировать можно любым пользователем из любого ресурса, лишь бы у пользователя была запись на папку, в которой хранятся установленные платформы. Если конечно КП пользуются windows.
17. login1020 150 12.01.19 14:00 Сейчас в теме
(16) Примерно так, можно сохранять во временные файлы, они всегда доступны для записи
18. RocKeR_13 1470 24.07.19 14:12 Сейчас в теме
Есть же стандартные способы у платформы: настройте автообновление через файл 1CEStart.cfg (https://infostart.ru/public/648457/), а в качестве папки с версиями платформ укажите папку из любого облака. Тот же Disk-O подключается как сетевая папка, что позволит вам на всех компьютерах унифицировать путь к каталогу с платформой
19. login1020 150 24.07.19 15:33 Сейчас в теме
(18) Все бы ничего, но читаем комментарий (2) в теме что Вы прикрепили. Установить под пользователем не получится, нужны права администратора. И GPO тоже нет, потому имеем, что имеем.
20. blackhole321 1306 24.07.19 15:43 Сейчас в теме
(19)
(19)
Все бы ничего, но читаем комментарий (2) в теме что Вы прикрепили. Установить под пользователем не получится, нужны права администратора. И GPO тоже нет, потому имеем, что имеем.

Права администратора нужны, однако в приведенном комментарии Вы устанавливаете удаленно, т.е. логин и пароль администратора у Вас и учетные данные Вы вводите на своем админском компьютере, а не в скрипте на локальной машине.
21. login1020 150 24.07.19 15:53 Сейчас в теме
(20) Это понятно, что логин и пароль администратора в этом случае не хранятся на локальной машине. Но здесь Мы рассматривали вариант, что у нас нет ни AD, ни GPO соответственно. Так как мне использую настройки CFG файла выполнить установку под пользователем без администраторских прав?

Если все это можно было бы задать в CFG на сервере, я был бы только рад.
22. blackhole321 1306 24.07.19 15:57 Сейчас в теме
(21)
Так как мне использую настройки CFG файла выполнить установку под пользователем без администраторских прав?

Почему без админских прав то?
Если на клиентской стороне есть статический ip адрес, то Вы можете подключиться со своего компьютера при помощи powershell и выполнить все необходимые действия, какие Вам нужны. Для этого не нужна AD и не нужны GPO.
24. login1020 150 24.07.19 16:18 Сейчас в теме
(22) Статических практически нет, но я все равно не пойму. Можете описать реализацию скачивания и установки, имея cfg при помощи powershell?
23. blackhole321 1306 24.07.19 16:02 Сейчас в теме
(21)В общем случае наличие статического ip не требуется, если ваши клиенты могут регистрироваться на dns сервере (который вы можете поднять и у себя), чтобы Вы знали, куда подключаться.
25. RocKeR_13 1470 24.07.19 17:00 Сейчас в теме
(19) надо попробовать в тот же планировщик запихнуть запуск 1С от админа: скорей всего запустит установку платформы также под админом
Для отправки сообщения требуется регистрация/авторизация