Файл-сервер для баз 1С под Самбой

Автор: Alex69 Дата: 16.01.2008 23:24
Буду благодарен за любую помощь.
Диспозиция. Есть самба-сервер, работающий пока в share-режиме, т.е. подключаются к нему по гостевым учётным записям.
Мне нужно положить на расшаренный ресурс базы 1С7.7. К базам подключаются клиенты, работающие под WindowsXP, всего 7 клиентов. Базы - обычные, просто папки с файлами.
Пока не нашёл нигде никаких толковых сведений о том, можно ли это сделать без бубна. По разным ресурсам копируется вот эта статья 2002 года:
[opennet.ru]
Я, к сожалению, не программист, поэтому бОльшую часть материала там не понимаю. Мне эта статья ничем не помогла. Неужели всё настолько сложно?

Есть ещё статья
[linux-75.narod.ru]
Там мне понравился вариант камлания с бубном. Цитата:
>Попробуйте поиграть в настройках Samba от
>----------------------------
>kernel oplocks = no
>oplocks = yes
>locking = yes
>---------------------------
>до
>----------------------------
>kernel oplocks = yes
>oplocks = no
>locking = no
>-------------------------------
>Промежуточный вариант может быть
>----------------------------------------------
>kernel oplocks = Yes
>locking = Yes
>oplocks = No
>---------------------------------------------
>Хотя сразу оговорюсь, что эти эксперименты не безопасны...

Короче, предлагается сделать сначала "так", потом - не так", а потом смешать "так" и "не так". И в результате угробить базы. К сожалению, у меня нет возможности особо экспериментировать, т.к. постоянно идёт процесс забивания данных в 1С со стороны пользователей.

Мои действия на данный момент. У расшаренного каталога с базами и подкаталогами установлен полный доступ для nobody:
chgrp -R nobody /home/samba/1c
chmod -R g+w /home/samba/1c

writable = yes
create mask = 0775
directory mask = 0775
browseable = no
guest ok = yes

Поскольку я понятия не имею, сколько файлов открывает одновременно 1С, я не стал мелочиться и в файл limits.conf добавил
* soft nofile 65536
* hard nofile 65536

Кстати, в другом каталоге у меня лежат базы Консультант+, всё работает.

Никаких kernel oplocks, locking и oplocks в самба-конфигурацию не добавлял. Файл конфигурации - стандартный, без изысков.

После указанных операций первый клиент загружает 1С до запроса логина-пароля 7-8 сек. (как в случае, если бы базы лежали на расшаренном Windows-ресурсе). Второй и последующие клиенты грузят программу до запроса логина-пароля 60-80 сек. Что подозрительно.
Эксперимент производился после окончания рабочего дня, поэтому не знаю, что было бы, если бы клиенты начали работать все сразу. Поскольку появилось сомнение, что эта бадяга будет работать, я сделал откат и возвратил базы снова на Windows-рабочую станцию.

Что делать? Есть ли где толковый ответ на этот вопрос? И вообще - насколько всё это реально сделать без "булевых опций" и всяких "блокировок на уровне ядра"?

Спасибо.

Re: Файл-сервер для баз 1С под Самбой 17.01.2008 12:56kompany
Инфу по сети покажите, и какие настроки на каждой рабочей станции ?
Какая САМБА у вас стоит, и какие у нее настройки ?
Причин может быть много !
Re: Файл-сервер для баз 1С под Самбой 17.01.2008 23:21Alex69
ОС - Fedora 8. Сеть из рабочих станций с WindowsXP одноранговая, настройки рабочих станций стандартные: протокол TCP/IP, выход в интернет через NAT-шлюз.
Свич 3Com на 20 портов.
Настройки Самбы стандартные, ничего сверх меры, share-режим. Воспроизвожу по памяти.

workgroup = * * *
netbios name = Expo

log file = /var/log/samba/log.%m
max log size = 50

unix charset = utf8
dos charset = cp1251
display charset = cp1251

security = share
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
hosts allow = 127. 192.168.0.
wins support = yes

preferred master = no
domain master = no
local master = no
os level = 64
wins support = yes

По зашаренному каталогу - см. выше.

С железом проблемы исключены. Не далее, как 2 месяца назад на этой машине крутился контроллер домена под Windows Server2003, на котором были и базы 1С, и антивирусный сервер, и базы Консультанта. Проблем не наблюдалось.

В общем, я так понял, что 1С-базы под Самбой нельзя сделать. Или нужно разбираться в железе и Линукс на хорошем уровне программиста.
Или пробовать шаманить с настройками, о которых шла речь выше? В этом есть смысл?

Re: Файл-сервер для баз 1С под Самбой 18.01.2008 02:19kompany
NAT-шлюз он же или другой ?
ДНС сервак в сети есть или нет ?
Как адред к базам в 1С указан ?
\\192.168.0.*\base1c
или по другому

а вот здесь имхо намудрили
unix charset = utf8
dos charset = cp1251
display charset = cp1251

это только как пример
---
[global]
workgroup = ваша_рабочая_група
server string = PDC linux %v
netbios name = имя_которое_будет_в_сетевом_окружении
os level = 64
log level = 6
log file = /var/log/samba/log.%m
max log size = 50
dos charset = cp866
unix charset = UTF-8
display charset = UTF-8
security = user
encrypt passwords = yes
smb passwd file = /etc/samba/smbpasswd
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
large readwrite = yes
# interfaces = 192.168.0.0/24
[base_1c]
comment = base_1c
path = /mnt/ваш_путь
read only = No
create mask = 0666
directory mask = 0777
writable = yes
---
>Второй и последующие клиенты грузят программу до запроса логина-пароля 60-80 сек.
Это проблема скорей всего не в самбе, а в маршруте.
>Первый клиент загружает 1С до запроса логина-пароля 7-8 сек.
Попробуй с того клиента что 7-8 сек. загрузить несколько 1С под разными именами, если также будет быстро, то это точно не самба.

Re: Файл-сервер для баз 1С под Самбой 18.01.2008 21:28Alex69
kompany. Спасибо.

>NAT-шлюз он же или другой ?
Другой.
>ДНС сервак в сети есть или нет ?
Нет.
>Как адред к базам в 1С указан ?
Через netbios-имя.

security не могу пока делать user, т.к. сеть пока одноранговая. Если всё будет работать, в плане сделать домен. Вряд ли проблемы могут быть из-за использования гостевой учётной записи nobody?
С кодировками уж не знаю, вряд ли от этого, конечно, в данном случае проблемы, но исправлю.

>Попробуй с того клиента что 7-8 сек. загрузить несколько 1С под разными именами, если также будет быстро, то это точно не самба.
Я с разных компов делал первое подключение к базам. Всегда первый клиент на любом компьютере подключается быстро, а последующие с задержкой. Задержка именно ДО запроса логина-пароля (это когда после запуска программы в окне с логотипом пишется что-то типа "идёт загрузка базы данных программы" и подключаются всякие-разные таблицы и формы). А после запроса логина-пароля и выбора пользователя вход происходит быстро.

>Это проблема скорей всего не в самбе, а в маршруте.
Вариант - прописать этот сервер WINS на клиентах, если я сделал wins support = yes. Или прописать путь в виде IP-адреса. Это всё шаманство, однако. Но попробовать смогу только на следующей неделе.
О результатах напишу обязательно.

Re: Файл-сервер для баз 1С под Самбой 18.01.2008 21:44BigAndy
А как netbios имена разрешаются без DNS???
Через lmhosts???

Как помнится, была какая-то фича (в АСП 10 был подробный русский мануал к настройке самбы имено для 1С7.7)с запуском пере индексации баз данных после переноса на линукс сервер.

Re: Файл-сервер для баз 1С под Самбой 18.01.2008 21:55smaharbA
какая связь между lmhost и DNS ?
Re: Файл-сервер для баз 1С под Самбой 18.01.2008 22:55BigAndy
такая же как между hosts, hosts.conf и named
Re: Файл-сервер для баз 1С под Самбой 18.01.2008 23:05smaharbA
не тупи... ненадо
Re: Файл-сервер для баз 1С под Самбой 18.01.2008 23:31BigAndy
Ладно, молчу, бо опять поцапаемся...
Re: Файл-сервер для баз 1С под Самбой 21.01.2008 20:12skrond
вот мой конфиг все работает

#======================= Global Settings =====================================
[global]

# workgroup = NT-Domain-Name or Workgroup-Name
workgroup = kor
security = user
client code page = 866
character set = koi8-r
encrypt passwords = Yes
log file = /var/log/samba/log.%m
max log size = 50
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
dns proxy = no
[admin]
path = /share
valid users = <логин>
raed only = no
writable = yes

логин ДОЛЖЕН БЫТЬ ДОБАВЛЕН В linux далее
smbpasswd -a <логин>
smbpasswd -e <логин>
далее в каталоге share должно быть разрешение на запись

Re: Файл-сервер для баз 1С под Самбой 22.01.2008 08:11smaharbA
локи придется включить (как правильно не скажу)
адинес ставит лок на файлы, в частности на 1cv7.lck в каталоге базы, со смещением 2 000 000 + х-усер
(подозреваю с этим и есть проблемма)
Re: Файл-сервер для баз 1С под Самбой 23.01.2008 14:11Alex69
Сегодня попробовал шаманить с 1С.
Всё без изменений.
Быстро грузится до логина-пароля любой первый клиент, остальные думают по минуте-полторы.

Big Andy
>как netbios имена разрешаются без DNS
Я так понимаю, что есть для этого WINS?
А вообще, даже, если прописать в строке пути к базе не нетбиос-имя, а IP-адрес, всё по-прежнему. Если прописать WINS-сервер Самбы в сетевых настройках клиентов - тоже ничего не меняется.

smaharbA
Локи. Я сейчас в отупении просто вписал вот это в конфигурацию (кстати, это ничего не изменило):
kernel oplocks = no
locking = yes
oplocks = yes
strict locking = yes
share modes = yes

Затем изменил на:
blocking locks = yes
kernel oplocks = yes
level2 oplocks = no
locking = no
oplocks = no
strict locing = no
share modes = yes
В случае второго варианта тормозит при загрузке уже и первый клиент.
Так что скрестить 1С и Самбу не получается.

skrond.
У меня доступ по nobody. С этим же не могут быть проблемы связаны?

Re: Файл-сервер для баз 1С под Самбой 23.01.2008 14:33kompany
Уменя таких проблем никогда небыло,
---
если (все правильно настроено) тогда
(САМБА) или (сетьевая) или (драйвера к сетевой
под linux)
конецесли
---
Re: Файл-сервер для баз 1С под Самбой 23.01.2008 15:03smaharbA
Хотя это старая байда с 1С, вход последующего и к венде медленнее первого, и работа замедляется (правдо не так как ты описал)
Re: Файл-сервер для баз 1С под Самбой 23.01.2008 16:39Alex69
kompany.
>если (все правильно настроено)
Ну, не знаю, что под этим подразумевается. Если всякие oplocks, то вряд ли. А так - нормальный файл-сервер. Базы Консультант+ без проблем открываются с нескольких клиентов, автоматический бэкап идёт с рабочих станций в расшаренные каталоги, по ночам tar бэкапит базы, доступ к файлопомойке тоже есть. Возвращаемся к этим самым "локам".
Сетевая. Попробую поставить другую сетевую, но слабо верится, что это поможет. т.к. посмотрел сейчас обсуждение проблемы в интернете, выглядит всё очень странно - у кого-то работает всё с первого раза и без существенных изменений настроек Самбы, у кого-то ничего не работает, причём от настроек ничего не зависит (они могут быть противоположными - см. выше). Требуется многнедельное камлание с бубном. Некоторые, как и я, после заклинаний и разнообразных проблем возвращают базы снова на виндоус-машину.

smaharbA.
>Хотя это старая байда с 1С, вход последующего и к венде медленнее первого, и работа замедляется (правдо не так как ты описал)

Ну, разница не столь заметна когда базы лежат под Виндоус (8-10 сек. против 10-14 у второго клиента). Но больше минуты загрузки, думаю, пользователи не выдержат. Кстати, я ещё не проверял, можно ли работать в реальном режиме с этими базами при таком раскладе. Думаю, что вряд ли.

Re: Файл-сервер для баз 1С под Самбой 23.01.2008 22:51Alex69
Поменял сетевую, всё без изменений Грустный
Re: Файл-сервер для баз 1С под Самбой 23.01.2008 23:12BigAndy
А для подбадривания:
[www.altlinux.ru]
Re: Файл-сервер для баз 1С под Самбой 24.01.2008 04:38aut
BigAndy
>А для подбадривания:

Это другое. Там у них Линукс-сервер 8.1 1С

Alex69
Сразу скажу, что 1с я не ставил под Линукс, ни на сервере, ни клиентов.

Но вроде, если не ошибаюсь, именно из-за проблем с блокировками в виду различий в реализации протокола CIFS - Etersoft разработала свой модуль CIFS, и он у них, если не ошибаюсь даже в свободном доступе лежит на ftp.

Может, имеет смысл попробовать? Хотя я возможно и путаю что-то, просто мне не было нужды разбираться досконально в этом вопросе.

Re: Файл-сервер для баз 1С под Самбой 30.01.2008 14:24Alex69
BigAndy.
Да, я знаю про такие варианты. Но в этом случае имеется в виду действительно 1С-сервер и SQL-базы. У меня же базы не SQL, а обычные файлы dbf. Как я понял, единственный вариант работы 1С на Линукс - только вариант баз 1С под SQL. Мне это пока не грозит.

aut. Спасибо. Правда, я пока не совсем понял, что это такое - модуль CIFS и с чем его едят? Улыбка Какие-то упоминания встречал в сети, но не более. Я пока нашёл вот эту ссылку

[etersoft.ru]

По описанию я так понял, что эта штука платная, а этот самый протокол CIFS является компонентом их эмулятора WINE. А на их сайте я не нашёл никаких намёков на прайс-лист. Думаю, эта штука не из дешёвых.

RSS-материал