Имя: Пароль:
1C
1С v8
Создание начального образа на samba (linux)
0 alexander-k
 
04.12.20
07:56
Добрый день!

ОС Centos 7
Платформа 8.3.14.1976

Настройки самбы
[samba_shared]
    comment = Folder for storing common files
       read only = no
       available = yes
       path = /mnt/smb
       public = yes
       valid users = @grp1cv8
       force group = grp1cv8
       write list = @grp1cv8
       create mask = 01775
       force create mode = 01775
       directory mask = 01775
       force directory mode = 01775
       writable = yes
       browseable = yes


      map acl inherit = yes
      inherit owner = no
      inherit acls = no
      inherit permissions = no
      acl check permissions = true
      acl map full control = true
      blocking locks = yes
      level2 oplocks = yes
      locking = yes
      oplocks = yes
      strict locking = no
      posix locking = yes
      browseable = yes

шара монтируется вот так
/server_share/samba_shared /mnt/file_server_share cifs rw,credentials=/root/.smbclient,uid=usr1cv8,gid=grp1cv8,file_mode=01775,dir_mode=01775 0 0

Код в 1с
    СтрокаСоединения = "File = ""/mnt/file_server_share/exchange/bgu-messages""";
    ПланыОбмена.СоздатьНачальныйОбраз(Объект.Узел, СтрокаСоединения);

где Объект.Узел - ссылка на узел плана обмена РИБ

вылетает по ошибке
{Обработка.Обработка1.Форма.Форма.Форма(10)}: Ошибка при вызове метода контекста (СоздатьНачальныйОбраз)
    ПланыОбмена.СоздатьНачальныйОбраз(Объект.Узел, СтрокаСоединения);
по причине:
Информационная база не обнаружена
Файл не обнаружен '/mnt/file_server_share/exchange/bgu-messages/1Cv8.cgr'. 2(0x00000002): No such file or directory
по причине:
Файл не обнаружен '/mnt/file_server_share/exchange/bgu-messages/1Cv8.cgr'. 2(0x00000002): No such file or directory

При этом если создавать файловую базу ручками в этом каталоге же все работает как часы.

Прошу помощь знатоков
1 alexander-k
 
04.12.20
08:35
общие настройки
[global]
    workgroup = SAMBA
    security = user
        hosts allow = 0.0.0.0/32

    passdb backend = tdbsam

    printing = cups
    printcap name = cups
    load printers = False
    cups options = raw
2 alexander-k
 
04.12.20
09:58
Версия самбы 4.10.4
3 Йохохо
 
04.12.20
10:05
hosts allow = 0.0.0.0/32 (0.0.0.0/255.255.255.255) стремно выглядит 0.0.0.0/0.0.0.0
4 Asmody
 
04.12.20
10:16
что говорит
su - usr1cv8 -c "touch /mnt/file_server_share/exchange/test"
5 alexander-k
 
04.12.20
10:56
молча создался файл
6 alexander-k
 
05.12.20
07:51
Обновил самбу до 4.0.16 - ничего не изменилось
Написал о проблеме на [email protected]
о результате, если будет, отпишусь здесь
7 Фрэнки
 
05.12.20
08:46
Очевидно, что будет какая-то путаница в именах логинов, под которыми ломится платформа 1С к созданию/чтению файлов. В порядке эксперимента - если есть возможность проверить все имена, возникшие в системе, то дать всем, что из них доступны 1С-у самые высокие права, чтоб ошибок больше не было.

Возможно, что файл создает один логин, а открывать на чтение/запись пытается уже другой, по которому права просто забыли прописать.
8 Фрэнки
 
05.12.20
08:47
Получится, что и та и другая запись логинов права имеет, а вот самому файлу прав не дали.
9 Фрэнки
 
05.12.20
08:47
И проблема не в самбе, имхо
10 ansh15
 
05.12.20
11:50
Можно попробовать изменить UID(числовой) пользователя usr1cv8 на сервере с самбой на такой же как у пользователя usr1cv8 на сервере с платформой 1С. После этого для каталога samba_shared, чтобы изменить идентификатор владельца каталога и файлов, сделать chown -R usr1cv8:grp1cv8. Самбу перезапустить после этого.
Когда-то помогло, при указании места хранения файлов в томах(в Документообороте) при аналогичной конструкции как и у автора темы.
11 alexander-k
 
07.12.20
11:32
ansh15, если у Вас под рукой есть такая конструкция - попробуйте создать начальный образ. могу прислать дт - но там "полторы" строчки кода и нет никаких объектов кроме плана обмена.
12 ansh15
 
07.12.20
16:15
Ну да, не в самбе - https://its.1c.ru/db/pubessence/content/42/hdoc
"Второй случай – это создание начального образа клиент-серверной информационной базы. Если на компьютере сервера «1С:Предприятия» установлена 64-битная операционная система Linux и сам сервер «1С:Предприятия» является 64-битным приложением, то тогда начальный образ информационной базы может быть создан только в клиент-серверном варианте работы (на этом же сервере «1С:Предприятия» или другом). Создать файловый начальный образ на компьютере клиента или на другом компьютере в локальной сети будет невозможно"
Мне выдало сообщение, что "создание начального образа файловой информационной базы на данной платформе не поддерживается",
при интерактивном создании начального образа.
13 alexander-k
 
07.12.20
18:51
мда ... случай взят из типового БТС (Создание автоматизированного рабочего места).
---
Возникает два случая.
1. Можно  задать константой путь, где создавать этот образ - налетаешь но описанный случай.
3. Если Не задавать  - создается в локальном каталоге /tmp/ (текущего сервера 1С), который оказывается недоступным с другого сервера (кластера).
---
14 Провинциальный 1сник
 
07.12.20
18:57
Файл-сервер для базы данных - ЗЛО
15 Фрэнки
 
07.12.20
18:58
а им никто и не предлагает в нем работать. Есть и альтернативные способы создания периферийных узлов :-)
16 alexander-k
 
18.12.20
20:31
1С:
Проблема скорее всего связано с ошибкой платформы 30161295, из-за чего файлы создаются с неправильными правами.
Ошибка исправлена в версиях 8.3.15 и выше. В любом случае, вам стоит обновить платформу до актуального релиза и проверить поведение.
AdBlock убивает бесплатный контент. 1Сергей