Имя: Пароль:
1C
 
Сервер 1с на Centos, выгружать на FTP и обмениваться с другими файловыми базами на винде
,
0 fordiego
 
25.07.18
16:51
Добрый день, сразу скажу я на 1с-ник. так что в некоторых терминах могу ошибаться.

Стоит 1с 8.3.10.2580 на Centos 6.7 Есть задача по выгрузке и передачи на FTP сервер данных. Программист делает фоновое задание. На Centos сделал smb шару

#======================= Global Settings =====================================
[global]
workgroup = WORKGROUP
security = share
map to guest = bad user
#============================ Share Definitions ==============================
[exchange1c]
path = /mnt/exchange1c
browsable =yes
writable = yes
guest ok = yes
read only = no

Шара сделана для того что бы в ней формировались данные.

Вопрос 1. Если программист вручную через клиент 1с запускает задание (обработку) то файлы выгрузки сохраняются в \\centos1c\exchange1c, его можно открыть с ПК на windows, удалить просмотреть данные. все норм.

Если фоновым заданием то нет. Только если в обработке указать каталог /mnt/exchange1c Почему так? Служба 1с сама не умеет по самбе фоном ходить?

Вопрос 2. Когда создаются файлы в /mnt/exchange1c они имеют владельца службы 1с: группа grp1cv82 владелец usr1cv82 права 640 и соответственно не удаляются и не читаются из шары, ни че с ними нельзя сделать.

Как я только не исхитрялся: добавил в групп:

grp1cv82:x:501:nobody,usr1cv82,root

Дал на каталог /mnt/exchange1c root:root, 777. chmpd g+s ни чего не помогает. сделал umask 0002 в профиле /home/usr1cv82/.bash_profile

теперь файлы создаются с правами 660 usr1cv82:root, но в шаре они так и не открываются и не удаляются

Помогите как быть?
1 Fragster
 
гуру
25.07.18
16:53
>Есть задача по выгрузке и передачи на FTP сервер данных
Зачем тут SMB вообще?
2 fordiego
 
25.07.18
16:54
для того чтобы из винды могли выгрузку подхватить например другие базы
3 fordiego
 
25.07.18
16:55
часть данных надо выгружать на FTP частью обменеватся между другими базами
4 lodger
 
25.07.18
16:59
(3) "надо выгружать на FTP" - Зачем тут SMB вообще?
5 fordiego
 
25.07.18
17:00
ОК, сори. надо было в топике написать "выгружать на FTP и обмениваться с другими файловыми базами на винде"
6 Fragster
 
гуру
25.07.18
17:22
>Вопрос 2

это "фича"
7 Fragster
 
гуру
25.07.18
17:24
>Если фоновым заданием то нет. Только если в обработке указать каталог /mnt/exchange1c Почему так? Служба 1с сама не умеет по самбе фоном ходить?

если бы настраивал тома хранения файлов в бсп, то увидел бы, что сервером на линупсе надо именно путь примонтированной папки передавать. И мало программ умеют в самбу прозрачно.
8 Fragster
 
гуру
25.07.18
17:25
(5) проще всего разогнать веб сервис
9 fordiego
 
25.07.18
17:44
Вопрос 2 оч серьезно. из за этого не можем фоновыми заданиями обмениваться данными
10 Fragster
 
гуру
25.07.18
18:03
(9) -> (8)
ну или переведите всех на другой единый транспорт, поддерживаемый всеми платформами.

а вообще для ОБМЕНА в шару 1с должна писать так, чтобы файлы ЧИТАЛИСЬ другими. Это требование выполняется.
11 fordiego
 
25.07.18
18:04
вообще нет никакого нормального способа сохранять выгрузку с правами 644 например.

думаю как вариант может службу 1с запускать от root? не поломает это сервер?
12 fordiego
 
25.07.18
18:06
чтения нет, права файлу выдаются 660 Владелец и группа могут читать и редактировать; остальные не имеют права выполнять никаких действий
13 fordiego
 
25.07.18
18:18
а вообще раз это фича, надо написать какой нит скриптик который по крону например раз в 5 минут будет права в каталоге  /mnt/exchange1c менять, и все
14 MaxS
 
25.07.18
19:30
(12) ну а костыль приделать? демон какой-нибудь сканирует папку каждую минуту и меняет права.
15 ПегийЛунь
 
25.07.18
19:44
Это кончено же "дыра", но если попробовать umask=0000?
16 fordiego
 
25.07.18
19:48
пока пробовать нет возможности, завтра напишу чем закончилось
17 fordiego
 
25.07.18
19:50
пока варианты:
1. скриптом по крону менять права
2. опции force group/user в настройках samba

все остальное такое себе...
18 Фрэнки
 
25.07.18
20:21
(17) глубоко не копал, но попадалось на глаза, что в самба force group/user ставили - это было в вебморду для управления самбой завернуто, поэтому плохо помню как конкретно это делалось
19 fordiego
 
26.07.18
08:12
Проблема решена, всего-то надобыло в конфиг самбы дописать:
[exchange1c]
path = /mnt/exchange1c
browsable =yes
writable = yes
guest ok = yes
read only = no
force user = root
force group = root

как итог, все что создаеца в каталоге /mnt/exchange1c через самбу будет с правами root:root файлы читаются и удаляются из винды нормально, что и нужно было.
20 Фрэнки
 
26.07.18
08:21
(19) там еще где-то поищи - в настройках самбы должны быть такие фичи, что пользователям может еще установить ограничение на каталог в целом, чтоб лишние соединения в папку не лезли и безопасности не угрожали.
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.