WINE@Etersoft/Организация совместной работы

Материал из Русский WINE
Перейти к: навигация, поиск

Организация совместной работы

Чтобы сделать возможной одновременную работу нескольких пользователей с одним ресурсом (например, с базой данных 1C), потребуется выполнить два основных этапа:

  1. настроить права доступа;
  2. организовать одновременный доступ к общему ресурсу с нескольких рабочих мест.

Настройка прав доступа

Обычно совместная работа с базой данных и подобными ресурсами требует, чтобы у каждого пользователя были права не только на чтение, но и на запись. Такой тип доступа можно организовать стандартными средствами Linux, включив всех пользователей в одну группу и соответствующим образом настроив права. При установке WINE создаётся группа wine, в простом случае -- когда все пользователи равноправны в доступе к данным -- можно воспользоваться ею. Администратор однако волен организовать сколь угодно сложную схему разделения прав с помощью произвольного количества групп. Ниже приводятся рекомендации по настройке прав доступа к каталогу с общими данными для простого случая:

Примечание: Не выставляйте права на каталог 777, т.к. это не даст результата. В первую очередь важны права на создаваемые файлы, поэтому важно правильно установить группу каталога и SGID-бит на него.


  1. Каталог должен принадлежать той группе, куда внесены все пользователи общего ресурса, например, группе wine.
  2. Права доступа на каталог -- 770 (rwxrwx---), чтобы все члены группы могли модифицировать содержимое каталога.
  3. На каталог нужно установить атрибут SetGID -- режим 2770 (rwxrws---), чтобы все создаваемые в нём файлы принадлежали той же группе, что и каталог, а не группе создавшего файл пользователя.
  4. В процессе работы с общим ресурсом umask <ref>umask определяет, какие права доступа по умолчанию будут получать файлы, создаваемые пользователям. Подробности -- в руководстве по umask.</ref> пользователя должен быть выставлен в 007, т. е. "создавать файлы с правами на чтение, запись и исполнение для владельца и группы". В сочетании с атрибутом SetGID это даёт доступ на чтение/запись всем пользователям группы ко всем файлам в общем каталоге. Для программ, запущенных в WINE, значение umask задаётся переменной UMASK в файле /etc/wine/config (по умолчанию -- 002, что необходимо для административного режима).
Примечание: WINE@Etersoft поставляется со скриптом setwineshare, который выполняет перечисленные действия для указанного в качестве параметра каталога.



Пример использования setwineshare: # setwineshare --set --group my1cusers /net/sharebase. В этом примере выполняется установка правильных прав на каталог/net/sharebase и его подкаталоги, присваивается группа my1cusers. Выполнять setwineshare следует с правами root. По умолчанию используется группа wine.

Примечание: Обратите внимание, что при случайной установке атрибута SGID на файлы базы, расположенной по сети, они могут быть недоступны из WINE. Устанавливать биты SUID и SGID на файлы не следует.



Примечание: При размещении каталога нужно учитывать, что совместный доступ к большим базам данных в типичных win-приложениях предъявляет высокие требования к жёсткому диску по скорости доступа и устойчивости к постоянной нагрузке. Крайне желательны регулярные резервные копии.



Настройка доступа через ACL

При использовании ACL для ограничения доступа к файлам базы данных имеются нюансы. Подробнее см. на http://kb.etersoft.ru/Пример_использования_1C_и_ACL

Доступ к общему ресурсу

Каталог с общими данными необходимо сделать доступным для win-приложений каждого пользователя. Делается это стандартным способом: в локальном win-окружении каждого пользователя создаётся символьная ссылка на каталог с общими данными в каталоге dosdevices. Сам этот общий каталог может располагаться где угодно, единственное требование: он должен быть доступен в файловой системе на каждом рабочем месте. y Есть две принципиальные возможности сделать общий каталог доступным одновременно с нескольких рабочих мест:

Терминальный сервер

Win-приложение установлено и выполняется на сервере, там же размещены общие ресурсы. Все пользователи получают тонкие клиенты: их приложения запускаются на сервере, а рабочие станции служат только для ввода и вывода данных.

Разделяемый сетевой ресурс

Win-приложение установлено и выполняется на рабочих станциях пользователей. Общие данные предоставляются пользователям в виде разделяемого сетевого ресурса (NFS или CIFS).

Терминальный сервер

Случай терминального сервера с точки зрения запуска win-приложений в WINE ничем не отличается от совместной работы нескольких локальных пользователей на одной машине, поэтому задача настройки сводится к правильной организации прав доступа (см. следующий раздел).

Подробнее о существующих программах для организации удалённого доступа к серверу приложений см. в разделе Организация терминального сервера.

Разделяемый сетевой ресурс

Это такая конфигурация, когда win-приложения каждый пользователь запускает локально на своей рабочей станции, а общие данные располагаются на удалённом сетевом ресурсе (сервере), смонтированном в каталог локальной файловой системы на каждой рабочей станции. С точки зрения win-приложения такая ситуация также неотличима от работы с обычным локальным ресурсом.

На настоящий момент для совместной работы по сети поддерживаются сетевые файловые системы NFS и CIFS.

При использовании NFS совместная работа возможна только между Unix-машинами (Windows-клиенты нельзя подключать). При использовании CIFS возможна гетерогенная работа (смешанная работа Linux- и Windows-клиентов).

Примечание: Важно! При использовании CIFS все клиенты, работающие с общим ресурсом, должны обращаться к файлам через смонтированный сетевой ресурс. Прямое обращение запрещено.



Подробнее о настройке файловых серверов и клиентов см. в разделах документации Настройка совместной работы по протоколу CIFS и Настройка совместной работы по NFS в Linux.

Настройка win-окружения

Последний -- и самый важный -- необходимый шаг: включить каталог с общими ресурсами в win-окружение каждого пользователя WINE. Делается это стандартным способом: созданием или изменением символьной ссылки в домашнем каталоге пользователя в .wine/dosdevices/ (также можно воспользоваться вкладкой Диски программы winecfg). К примеру, если каталог с общими данными у нас находится в /var/1c/, то можно включить его для конкретного пользователя WINE в качестве диска f::

[tester@test tester] cd .wine/dosdevices
[tester@test tester] ln -s /var/1c/ f:
[tester@test tester] ls -l f:
lrwxrwxrwx 1 tester tester 12 Ноя  1 19:21 f: -> /var/1c

Можно внести создание этого диска в сценарий в каталоге /etc/wine/script.d/, тогда он будет создаваться автоматически в каждом win-окружении пользователя при первом запуске WINE (см. подробнее в разделе Единообразие настроек пользователя).

Wine
Search.png
Программы работающие в WineСкачатьШкольный Wine
WINE@Etersoft Общие сведенияУстановка на 64-битные ОСОсобенности разработкиПатчи для WINE@EtersoftАдминистративная установкаДополнительные компонентыКак получить WINE@Etersoft?Лицензия на документациюГлоссарийИспользование аппаратных ключей защиты в LinuxДополнительная информация • [ Совместная работа | по CIFSпо NFS ] • Изменение системных ограниченийРегистрация продуктаПошаговая инструкция по установке rpm-пакетовОбращение в службу поддержкиТерминальные решенияУстановка WINE@EtersoftПодписка на обновленияНастройка WINE@EtersoftРазработчикуEnterpriseЧто такое WINE@Etersoft SQLВозможностиСреда для запуска приложений WindowsИспользование WINE@EtersoftFAQ по использованию WINE@EtersoftОсновные командыWINE@Etersoft/LocalЧто такое WINE@Etersoft Local
Программы Запуск БЭСТ 4+Запуск Консультант+ (сетевой версии)ГарантF1Инфо-Бухгалтер 8.xНалогоплательщик ЮЛ
1C Отличия от обычного WineМестоположение базы 1С1C: Предприятие 7.7 в WINEНастройка 1С 7.7 для работы с SQL-серверомУстановка 1С: Предприятия 8.1Установка 1С: Предприятия 8.1 в трёхзвенном режиме
Пользователю
Помощь Использование WinecfgИспользование RegeditПубличный префиксНесколько версийКлючи regedit
Легальность DCOM95IE5DCOMMSXML
Утилиты для работы с Wine WinetricksWineToolsQ4WinePlayOnLinuxIEs4LinuxWine-DoorsSwineWine LauncherLutris
Разработчику
Компоненты WindowsЗапрет отключения защиты программыУправление обработчиком исключенийStraceNTИзмерение скорости функций WinAPIGLУстройство чтения смарт-картПрофилированиеТесты для проверки интерфейсовНаписание тестов в системе WineАутентификация в домене ADРепозиторииПрименение Git-патчей
Помощь Создание патчейНаписание приложения под wineОтправка патчейСборка eterhackСборка wine-public
Отладка Способы отладкиWINEDEBUGWinedbg
Разработка WINE
1CODBCWinHelpКомпасМетодикаТестирование доступаЦветаФайловый диалогТестированиеЛитератураИзображенияWin32ШрифтыФайловые блокировкиСсылкиКлючи защитыRPMWineGeckoListViewУпаковка Wine
Производителю
Родственные проекты
LUKReactOSARWINSSCrossOverKernelEx
Прочее
PageSetupDlgFreeBSDWwr