загрузка CF на сервере Linux через командную строку
Коллеги, добрый день.
В наличии:
1С 8.3.10.2299 x32
Ubuntu 16.04.3 x32
PostgreSQL 9.3.4
С помощью команды добавил базу "s1":
Как в эту базу загрузить CF? Команда типа
Ведь есть же команда загрузки-выгрузки CF или базы на Linux-е у которого нет графического интерфейса? Или например при подключении к серверу через SSH?
В наличии:
1С 8.3.10.2299 x32
Ubuntu 16.04.3 x32
PostgreSQL 9.3.4
С помощью команды добавил базу "s1":
rac infobase create --create-database --name=s1 --dbms=PostgreSQL --db-server=1cl32 --db-name=s1 --locale=en_US
--db-user=postgres --db-pwd=pass --descr='test base for testing' --cluster=cac51206-7b70-11e7-558a-001c4281f7fc
--db-user=postgres --db-pwd=pass --descr='test base for testing' --cluster=cac51206-7b70-11e7-558a-001c4281f7fc
Как в эту базу загрузить CF? Команда типа
/opt/1C/v8.3/i386/1cv8 DESIGNER /S1cl32\s1 /LoadCfg/install/cf/UNF_1_6_10_55.cf
вызывает окно 1С с предложением добавить базу в список ИБ (выполняю команду через терминал в графическом интерфейсе).
Ведь есть же команда загрузки-выгрузки CF или базы на Linux-е у которого нет графического интерфейса? Или например при подключении к серверу через SSH?
По теме из базы знаний
- Многопоточный CI-контур для 1С c Packer, Vagrant и Jenkins. Часть 1. Описание системы и обзор инструментария
- Собираем образ виртуальной машины с PostgreSQL и платформой 1С. Цикл "Многопоточный CI для 1С c Packer, Vagrant и Jenkins", часть 2
- Jenkins: конфигурируем сервер и подключаем к нему виртуальные машины. Цикл "Многопоточный CI для 1С c Packer, Vagrant и Jenkins", часть 4
- Приемы быстрой работы в EDT/Git
- Мастер-класс SonarQube. В омут с головой
Найденные решения
(16) А в (15) по вашему что, не агент конфигуратора? Как раз показываю, что без иксов он не работает.
Вопрос в том, почему вас это так пугает? Иксы это всего лишь приложение. Их запуск не означает, что вам обязательно нужен монитор и мышка на сервере :-)
Вы хотели узнать, можно ли управлять базой через командную строку - вам показали что да. Тему можно закрывать.
Вопрос в том, почему вас это так пугает? Иксы это всего лишь приложение. Их запуск не означает, что вам обязательно нужен монитор и мышка на сервере :-)
Вы хотели узнать, можно ли управлять базой через командную строку - вам показали что да. Тему можно закрывать.
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) Как Вам уже отметили, даже без использования GUI, X для 1С обязательны.
И потом, раз у Вас уже поднят сервер 1С, что мешает управлять им через консоль управления 1С? С любой GUIшной машины под Windows или Linux подключиться к кластеру 1С, и всё сделать просто?
И потом, раз у Вас уже поднят сервер 1С, что мешает управлять им через консоль управления 1С? С любой GUIшной машины под Windows или Linux подключиться к кластеру 1С, и всё сделать просто?
(10) не совсем. на самом деле я подозревал что тут что-то неладное. и к тому времени уже прочитал про сервис конфигуратора. однако запустить его не получилось. мануалы очень скудные. примеров нигде нет.
Кто нибудь уже пробовал работать со службой конфигуратора? Есть успешные примеры? В том числе на Линуксе?
Кто нибудь уже пробовал работать со службой конфигуратора? Есть успешные примеры? В том числе на Линуксе?
(12) Со службой практически точно будут абсолютно такие же проблемы - не запустится без иксов. Хотя я не проверял.
Просто этот режим сделан для интеграции с EDT в первую очередь. Другие задачи разработчиков платформы не особо волнуют видимо.
Просто этот режим сделан для интеграции с EDT в первую очередь. Другие задачи разработчиков платформы не особо волнуют видимо.
(14) Сервер - это сервер. А у клиентского приложения без иксов ничего не работает и точка. Даже режим агента конфигуратора не запустите. Хотя при желании это все обходится заглушками легко.
Вот небольшое демо внутри docker контейнера.
В общем при желании можно и "одной" командой сделать запуск агента конфигуратора на headless linux сервере. Может на досуге к CI прикручу..
Вот небольшое демо внутри docker контейнера.
infactum@8bb673594383:~$ ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
infactum 1 0.0 0.0 5300 3752 ? Ss 19:01 0:00 bash
infactum 3032 0.0 0.0 4752 2380 ? R+ 19:04 0:00 ps aux
infactum@8bb673594383:~$ /opt/1C/v8.3/i386/1cv8 DESIGNER /F"/pwd/InfoBase/" /AgentMode /AgentSSHHostKeyAuto
infactum@8bb673594383:~$ ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
infactum 1 0.0 0.0 5300 3752 ? Ss 19:01 0:00 bash
infactum 3034 0.0 0.0 4752 2424 ? R+ 19:04 0:00 ps aux
infactum@8bb673594383:~$ xstart
infactum@8bb673594383:~$ /opt/1C/v8.3/i386/1cv8 DESIGNER /F"/pwd/InfoBase/" /AgentMode /AgentSSHHostKeyAuto &
[1] 3039
infactum@8bb673594383:~$ ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
infactum 1 0.0 0.0 5300 3752 ? Ss 19:01 0:00 bash
infactum 3036 0.3 0.4 206388 19676 ? S 19:04 0:00 Xorg -dpi 96 -noreset -nolisten tcp +extension GLX +extension RANDR +extension RE
infactum 3039 45.5 8.0 797992 324436 ? Sl 19:04 0:00 /opt/1C/v8.3/i386/1cv8 DESIGNER /F/pwd/InfoBase/ /AgentMode /AgentSSHHostKeyAuto
infactum 3044 0.0 0.0 4752 2308 ? R+ 19:04 0:00 ps aux
infactum@8bb673594383:~$ ssh admin@localhost -p 1543
Could not create directory '/home/infactum/.ssh'.
The authenticity of host '[localhost]:1543 ([127.0.0.1]:1543)' can't be established.
RSA key fingerprint is 19:a2:73:89:c5:e1:1b:80:37:ca:df:ff:e8:43:38:f1.
Are you sure you want to continue connecting (yes/no)? yes
Failed to add the host to the list of known hosts (/home/infactum/.ssh/known_hosts).
admin@localhost's password:
PTY allocation request failed on channel 0
1C:Enterprise 8.3 1C Designer Shell © 1C-Soft LLC 1996-2017
designer> common connect-ib
Операция завершена успешно
designer>
ПоказатьВ общем при желании можно и "одной" командой сделать запуск агента конфигуратора на headless linux сервере. Может на досуге к CI прикручу..
(16) А в (15) по вашему что, не агент конфигуратора? Как раз показываю, что без иксов он не работает.
Вопрос в том, почему вас это так пугает? Иксы это всего лишь приложение. Их запуск не означает, что вам обязательно нужен монитор и мышка на сервере :-)
Вы хотели узнать, можно ли управлять базой через командную строку - вам показали что да. Тему можно закрывать.
Вопрос в том, почему вас это так пугает? Иксы это всего лишь приложение. Их запуск не означает, что вам обязательно нужен монитор и мышка на сервере :-)
Вы хотели узнать, можно ли управлять базой через командную строку - вам показали что да. Тему можно закрывать.
Если запускается приложение, значит у вас ошибка в команде. Как минимум нет пробелов после опций запуска (не работает тут привычный linux подход).
Без иксов не будет работать даже командный режим конфигуратора. Нужно хотя бы заглушку вроде xdummy запускать.
Ну и в целом синтаксис командной строки пакетного режима достаточно многословный. Рекомендую вот сюда взглянуть:
Без иксов не будет работать даже командный режим конфигуратора. Нужно хотя бы заглушку вроде xdummy запускать.
Ну и в целом синтаксис командной строки пакетного режима достаточно многословный. Рекомендую вот сюда взглянуть:
Должен признаться, я "тот еще" линуксоид... Что такое Иксы?
Поднять сервак на винде или линуксе с гуи рядом можно. Ну или на крайний случай создать впн. Просто хотелось освоить именно вариант работы через командную строку (например при подключении через ssh)
Поднять сервак на винде или линуксе с гуи рядом можно. Ну или на крайний случай создать впн. Просто хотелось освоить именно вариант работы через командную строку (например при подключении через ssh)
(4) Иксы это, грубо говоря, реализация GUI в *nix системах. Вот более подробно.
В текущей реализации платформы управлять через ssh без костылей можно только кластером (при наличии RAS).
Для работы с конфигуратором я, при необходимости, использую docker . Но это прям на любителя :) Либо для CI/CD.
В текущей реализации платформы управлять через ssh без костылей можно только кластером (при наличии RAS).
Для работы с конфигуратором я, при необходимости, использую docker . Но это прям на любителя :) Либо для CI/CD.
(5) Понял, спасибо))))
Но касательно GUI, в винде же я могу через командную строку выполнять манипуляции? Или получается это просто "команды", а 1С "все выполняет по старинке", просто мы не видим открывающегося-закрывающего окна конфигуратора?
Но касательно GUI, в винде же я могу через командную строку выполнять манипуляции? Или получается это просто "команды", а 1С "все выполняет по старинке", просто мы не видим открывающегося-закрывающего окна конфигуратора?
На ИТС нашел упоминание про агент конфигуратора, вроде бы как раз то что мне нужно, выполняется из командной строки и ssh. Но блин ни одного живого примера как это в винде или линуксе использовать.
с ras разобрался, прикольная штука. если бы еще конфигуратором так рулить, если все таки окажется что для обычной 1С таки нужен запуск конфигруатора "в хз как-то там невидимом режиме в GUI"
с ras разобрался, прикольная штука. если бы еще конфигуратором так рулить, если все таки окажется что для обычной 1С таки нужен запуск конфигруатора "в хз как-то там невидимом режиме в GUI"
(7) Код платформы мало кто видел, поэтому можно только догадываться о конкретной реализации. Скорее всего проверка наличия GUI производится ранее непосредственной обработки параметров командной строки. В винде GUI - часть ядра. Там всегда будет работать. А в *nix это отдельная опциональная подсистема. Видимо разработчики 1С этот момент проигнорировали когда-то, а исправлять нужны не считают ввиду низкого спроса.
Кстати вспомнил еще про режим агента конфигуратора, который появился в 8.3.10
Честно скажу, сам не пробовал.
Анонс был вот . Остальное есть в .
Возможность редактирования сообщений, на которые уже дали ответ - зло :-)
Честно скажу, сам не пробовал.
Анонс был вот . Остальное есть в .
Возможность редактирования сообщений, на которые уже дали ответ - зло :-)
у нас вот так отрабатывает:
/opt/1C/v8.3/x86_64/1cv8 DESIGNER /S"servername/basename" /N"логин" /P"пароль" /LoadCfg "/home/update_.cf"
/opt/1C/v8.3/x86_64/1cv8 DESIGNER /S"servername/basename" /N"логин" /P"пароль" /UpdateDBCfg
/opt/1C/v8.3/x86_64/1cv8 DESIGNER /S"servername/basename" /N"логин" /P"пароль" /LoadCfg "/home/update_.cf"
/opt/1C/v8.3/x86_64/1cv8 DESIGNER /S"servername/basename" /N"логин" /P"пароль" /UpdateDBCfg
(9) будет работать, если сначала сделать
$ su export Display=:1
а потом уже без проблем вот так
/opt/1C/v8.3/x86_64/1cv8 DESIGNER /S"servername/basename" /N"логин" /P"пароль" /LoadCfg "/home/update_.cf"
/opt/1C/v8.3/x86_64/1cv8 DESIGNER /S"servername/basename" /N"логин" /P"пароль" /UpdateDBCfg
$ su export Display=:1
а потом уже без проблем вот так
/opt/1C/v8.3/x86_64/1cv8 DESIGNER /S"servername/basename" /N"логин" /P"пароль" /LoadCfg "/home/update_.cf"
/opt/1C/v8.3/x86_64/1cv8 DESIGNER /S"servername/basename" /N"логин" /P"пароль" /UpdateDBCfg
Вообщем да, готов подтвердить, что агент конфигуратора работает под линуксом только при наличии GUI.
This working for me:
************
#!/bin/bash
unpruser='unprivileged user'
su - $unpruser -c "env DISPLAY=:0.0 /opt/1C/v8.3/i386/1cv8 DESIGNER /S1cl32\s1 /LoadCfg/install/cf/UNF_1_6_10_55.cf
************
#!/bin/bash
unpruser='unprivileged user'
su - $unpruser -c "env DISPLAY=:0.0 /opt/1C/v8.3/i386/1cv8 DESIGNER /S1cl32\s1 /LoadCfg/install/cf/UNF_1_6_10_55.cf
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот