|
Как в Linux создать папку файлового кэша для конкретной базы 1С? | ☑ | ||
---|---|---|---|---|
0
TormozIT
гуру
25.04.21
✎
11:01
|
Нашел где в Linux 1С хранит файловый кэш базы (например толстый клиент и конфигуратора хранят там метаданные).
~/.1cv8/1C/1Cv8/436a356c-54bd-4d6c-9198-ea9f92a74fa2 Решил рядом создать свой каталог СоздатьКаталог("~/.1cv8/1C/1Cv8/Srvr__localhost__Ref__testdb__"); Получил Ошибка при вызове метода контекста (СоздатьКаталог): Ошибка создания каталога: Ошибка доступа к файлу '~'. 13(0x0000000D): Permission denied Как правильно создать там каталог? |
|||
1
ДенисЧ
25.04.21
✎
11:05
|
ls -la ~/.1cv8/
ls -la ~/.1cv8/1C/ ls -la ~/.1cv8/1Cv8/ что показывают? Или "линукса нет, но делать надо"? |
|||
2
TormozIT
гуру
25.04.21
✎
11:11
|
(1) У меня линукса нет.
|
|||
3
TormozIT
гуру
25.04.21
✎
11:12
|
(1) Проверить смогу через пользователей спустя какое то время.
|
|||
4
ДенисЧ
25.04.21
✎
11:14
|
Мда... Метод дистанционного программирования...
Я так начинал... По знакомству, через отца давал свои первые программки, чтобы "девочки"-перфораторщицы их в свободное время набили и запустили в машзал... Где-то через неделю получал распечатку ответов... Поставить линух в виртбоксе - вообще никак? |
|||
5
TormozIT
гуру
25.04.21
✎
11:16
|
(4) Думаешь достаточно поставить только линукс в виртуальной машине? А всякие платформы 1С и серверы БД не нужно?
|
|||
6
mistеr
25.04.21
✎
11:18
|
(0) По-моему, "~" только в баше работает. Нужно /home/user.
|
|||
7
ДенисЧ
25.04.21
✎
11:18
|
(5) А в чём проблема-то?
Сервер 1с ставится в виртуалку и, по слухам, ключа до 12 пользователей не просит. Постгре поставить - тоже минут 10, тебе же тонкий тюнинг не нужен. Итого хватит обычной виртуалки на ГБ диска. |
|||
8
mistеr
25.04.21
✎
11:18
|
Или "./", если ты уже дома.
|
|||
9
TormozIT
гуру
25.04.21
✎
11:22
|
(6) Полный путь еще узнать надо. Может есть какая то переменная среды с именем пользователя?
|
|||
10
TormozIT
гуру
25.04.21
✎
11:23
|
(8) Это что? Можешь полный путь написать для (0)?
|
|||
11
ДенисЧ
25.04.21
✎
11:25
|
(10) Попробуй $USER
|
|||
12
TormozIT
гуру
25.04.21
✎
11:26
|
(6) Баш - это оболочка для linux со своими фичами для указания путей к файлам?
|
|||
13
TormozIT
гуру
25.04.21
✎
11:42
|
(1)
perl@astra-1:~$ ls -la ~/.1cv8/ итого 12 drwxr-xr-x 3 perl perl 4096 июл 31 2020 . drwx------ 33 perl perl 4096 апр 25 10:54 .. drwxr-xr-x 3 perl perl 4096 июл 31 2020 1C perl@astra-1:~$ ls -la ~/.1cv8/1C/ итого 12 drwxr-xr-x 3 perl perl 4096 июл 31 2020 . drwxr-xr-x 3 perl perl 4096 июл 31 2020 .. drwxr-xr-x 9 perl perl 4096 апр 25 10:39 1cv8 perl@astra-1:~$ ls -la ~/.1cv8/1Cv8/ ls: невозможно получить доступ к '/home/perl/.1cv8/1Cv8/': Нет такого файла или каталога Похоже проблема регистре буквы "C" в последней имени нижней папки "1Cv8" |
|||
14
GANR
25.04.21
✎
11:49
|
(2) Поставь в VirtualBox - реально это просто
|
|||
15
Djelf
25.04.21
✎
11:50
|
(13) Точно так! В Linux можно создать одновременно и 1Cv8 и 1сV8 и 1сv8, а правильный каталог (тот что создает 1С) ~/.1cv8/1C/1cv8/
|
|||
16
ДенисЧ
25.04.21
✎
11:53
|
"Похоже проблема регистре буквы "
О, сколько нам открытий чудных готовит просвещения дух... |
|||
17
TormozIT
гуру
25.04.21
✎
12:02
|
(15) Регистр исправил. Но при выполнении моего кода ошибка осталась прежней
Ошибка создания каталога: Ошибка доступа к файлу '~'. 13(0x0000000D): Permission denied Значит "~" нельзя использовать. Помогите познать нужный _полный_ путь. Правильно я понял, что теперь надо пробовать /home/$USER/.1cv8/1Cv8/ ? |
|||
18
TormozIT
гуру
25.04.21
✎
12:03
|
(17) точнее /home/$USER/.1cv8/1cv8/
|
|||
19
TormozIT
гуру
25.04.21
✎
12:04
|
(18) и еще точнее точнее /home/$USER/.1cv8/1C/1cv8/
|
|||
20
Biker
25.04.21
✎
12:12
|
зачем рядом?
КаталогВременныхФайлов() Там и создавай . |
|||
21
mistеr
25.04.21
✎
12:12
|
Полный путь выдаcт команда cd
|
|||
22
ДенисЧ
25.04.21
✎
12:16
|
(19) Нет. $USER - это башевская. Тебе нужно получить значение переменной USER и подставить её в путь.
|
|||
23
TormozIT
гуру
25.04.21
✎
12:20
|
(22) Как получить значение этой переменной?
Так echo USER? Так echo $USER? Так echo "USER"? Или как? |
|||
24
TormozIT
гуру
25.04.21
✎
12:23
|
(20) Затем что файловый кэш сохраняется между сеансами работы и при изменении пути к папке временных файлов и при ее очистке.
|
|||
25
ДенисЧ
25.04.21
✎
12:24
|
вариант 2
|
|||
26
TormozIT
гуру
25.04.21
✎
12:26
|
(25) Т.е. в коде 1С это будет
КомандаСистемы("echo $USER > result.txt") ? |
|||
27
Djelf
25.04.21
✎
12:29
|
(17) Проверил, да, увы, 1С не умеет так создавать каталог ~/.1cv8/1C/1cv8/
Зато это умеет КомандаСистемы("mkdir ~/.1cv8/1C/1cv8/tmpdir"); А Сообщить(РабочийКаталогДанныхПользователя()); выдает /home/addm/.1cv8/1C/1cv8/9d87b1e5-60f5-4f46-9750-2bbbd6bd234e/b008bd70-850d-4415-8cbc-6cdfd87e8c8e/App/ Можно и отсюда получить нужный каталог. |
|||
28
TormozIT
гуру
25.04.21
✎
12:38
|
(27) Спасибо. Способ через mkdir как вариант записал, но у меня в коде несколько мест, где создаются каталоги. Пока не хочется везде править. Поищу способ получения полного пути.
У меня поддержка 8.2 есть. Так что РабочийКаталогДанныхПользователя() не подойдет. |
|||
29
TormozIT
гуру
25.04.21
✎
12:39
|
Ну и получать значение переменной $USER в коде 1С в любом случае тоже хочется научиться.
|
|||
30
TormozIT
гуру
25.04.21
✎
12:48
|
Можно ли взять имя пользователя из КаталогВременныхФайлов()? Всегда ли он будет лежать внутри каталога пользователя?
|
|||
31
Djelf
25.04.21
✎
13:04
|
(29) В БСП есть обертка над запуском команд с перенаправлением потоков.
Если упростить, то получение имени пользователя выгладит так:
|
|||
32
TormozIT
гуру
25.04.21
✎
16:31
|
(31) Спасибо. С выполнение кода на клиенте задача решена.
Теперь переходим на сервер. Там уже нет переменной окружения USER. Как найти каталог там? |
|||
33
Djelf
25.04.21
✎
16:37
|
(32) Не может не быть! 1С "на сервере" запускается под пользователем usr1cv8, вот он и должен в переменной окружения.
|
|||
34
TormozIT
гуру
25.04.21
✎
16:41
|
(33) Ну у нас получился такой список командой env:
LANG=ru_RU.UTF-8 OLDPWD=/ INVOCATION_ID=baccfcf6945as8fsu0pdf8s PWD=/tmp HOME=/home/usr1cv8 JOURNAL_STREAM=9:34252 KRB5_KTNAME="/opt/1cv8/x86_64/8.3.18.891/usr1cv8.keytab" SHLVL=2 PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin _=/usr/bin/env |
|||
35
ДенисЧ
25.04.21
✎
17:21
|
(34) У тебя есть HOME=/home/usr1cv8
Для твоих целей этого мало? |
|||
36
TormozIT
гуру
25.04.21
✎
19:52
|
(35) Переменная HOME будет всегда и в ней всегда будет имя пользователя для службы сервера? Ранее ты о ней не писал.
|
|||
37
ДенисЧ
25.04.21
✎
20:21
|
(36) В линухе можно переопределить любую переменную среды. Так что это не Госстрах.
Но вряд ли кто в здравом уме станет её переделывать. |
|||
38
TormozIT
гуру
25.04.21
✎
20:24
|
Какая папка в linux будет аналогом C:\ProgramData в Windows?
|
|||
39
TormozIT
гуру
25.04.21
✎
20:26
|
(38) В частности там лежит \1C\1CEStart\1CEStart.cfg общий для всех пользователей.
|
|||
40
TormozIT
гуру
25.04.21
✎
20:36
|
1cestart.cfg
Файл 1cestart.cfg содержит настройки, которые используют программы запуска (1cestart и 1cv8s), клиентские приложения (1cv8 и 1cv8c) и внешнее соединение. Расположение файла: ● Для ОС Windows: . ● %APPDATA%\1C\1CEStart – для конкретного пользователя. Файл изменяется при выполнении настроек окна запуска (см. здесь). ● %ALLUSERSPROFILE%\Application Data\1C\1CEStart (%ALLUSERSPROFILE%\1C\1CEStart для ОС Windows Vista и выше) – для всех пользователей компьютера. Файл изменяется только во время установки системы «1С:Предприятие». ● Для ОС Linux: ~/.1C/1cestart. ● Для OS X: ~/.1C/1cestart. Получается общие настройки есть только ОС Windows, а в остальных ОС общих настроек нет? |
|||
41
TormozIT
гуру
26.04.21
✎
09:05
|
(33) Жду тебя в теме ВК http://devtool1c.ucoz.ru/forum/3-1359-1#7299
|
|||
42
Biker
26.04.21
✎
10:03
|
(40) /opt/1cv8/conf
|
|||
43
Biker
26.04.21
✎
10:09
|
+ для списка баз есть /opt/1cv8/common 1cescmn.cfg
|
|||
44
Почему 1С
26.04.21
✎
10:17
|
(0) Код вызваться с клиента или с сервера?
На папку для юзверей под которым происходит вызов метода, права есть? chmod https://losst.ru/komanda-chmod-linux |
|||
45
TormozIT
гуру
26.04.21
✎
10:55
|
(44) Код зовется с клиента и сервера.
|
|||
46
Garykom
гуру
26.04.21
✎
10:58
|
Прикольно заставляют на линукс с винды переходить однако
|
|||
47
mistеr
26.04.21
✎
11:57
|
(46) Кто заставляет?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |