WINE@Etersoft/Режим административной установки
Содержание
Режим административной установки
Обычный подход, когда каждый пользователь должен самостоятельно установить win-приложение в своём домашнем каталоге (локальном win-окружении), не очень удобен для использования, когда много пользователей работают с одним и тем же приложением.
Для упрощения администрирования в такой ситуации в WINE@Etersoft имеется режим административной установки. В этом режиме программы, установленные администратором WINE, будут сразу доступны всем пользователям.
Общая схема административного режима установки сводится к следующему:
- Специально выделенный пользователь (администратор WINE) создаёт общий логический диск
C:
(общее win-окружение) и устанавливает в него программы. - Каждый пользователь, который собирается работать с общим win-окружением, должен подключиться к нему (используя его в качестве своего логического диска
C:
). После этого вся работа происходит с win-приложениями, установленными администратором.
Изменения в рабочей WINE-среде, выполняемые администратором, будут доступны всем пользователям -- в общем win-окружении -- и у всех пользователей изменения будут согласованы. Этот режим особенно удобен при устройстве терминального сервера, когда win-приложения всех пользователей выполняются на сервере.
Ниже пошагово описан процесс настройки административного режима установки WINE.
Администратор WINE
Прежде всего потребуется определить пользователя, который будет администратором WINE. Этого пользователя нужно добавить в группу wineadmin
(такая группа создаётся при установке WINE).
Технически в группу wineadmin
могут входить несколько пользователей. В этом случае все они смогут равноправно изменять общее win-окружение. Хорошим решением будет создать отдельную учётную запись, которая будет играть роль администратора WINE.
Общее win-окружение
После того как администратор WINE определён, следует создать каталог, который будет играть роль общего win-окружения. Рекомендуется в качестве общего каталога использовать /var/lib/wine-etersoft/default
. При установке пакета wine сразу создаётся /var/lib/wine-etersoft
с необходимыми правами (root:wineadmin rw-rw-r--
), позволяющими администратору WINE создавать там каталоги.
Подготовка административной системы выполняется командой wine --admin /путь/к/общему/каталогу
. Если на момент выполнения этой команды указанного каталога ещё не существует, он будет создан. Если выполнить эту команду без указания каталога, будет использован каталог по умолчанию /var/lib/wine-etersoft/default
.
После настройки среды через wine --admin
администратор устанавливает необходимые программы обычным способом.
Обратите внимание, что при использовании SAMBA команду wine --admin
лучше выполнять на машине, где расположен сам ресурс.
Подключение к общему win-окружению
Каждому пользователю, чтобы подключиться к общему win-окружению, необходимо выполнить команду wine --attach /путь/к/общему/каталогу
. Если указан относительный путь к каталогу, он будет отсчитываться от /var/lib/wine-etersoft
, если же каталог не указан вовсе, по умолчанию используется /var/lib/wine-etersoft/default
.
После выполнения этой команды wine, запущенный этим пользователем, будет использовать в качестве win-окружения указанный каталог (вместо ~/.wine
, который используется по умолчанию). В случае подключения к общему каталогу пользователю будут доступны все программы, установленные там администратором WINE.
Отличия wine, подключённого к общему win-окружению, от стандартной настройки заключаются в следующем:
- Логический диск
C:
(системный) является ссылкой на общее win-окружение и по умолчанию доступен для записи только пользователям, входящим в группуwineadmin
. Рядовые пользователи в общем win-окружении имеют право создавать каталоги только вc:/windows/profiles
, где хранятся их личные данные, и вc:/windows/temp
, где хранятся временные файлы. - системный реестр в локальном win-окружении пользователя (
~/.wine/system.reg
) является ссылкой на файл в общем win-окружении
(там он расположен в каталоге c:/windows/inf
);
Права доступа к общему win-окружению
Чтобы пользователи могли совместно работать с общим win-окружением, по команде wine --admin
в нём производится следующая настройка прав доступа:
- На каталог общего win-окружения устанавливается атрибут SGID
(2770), чтобы все файлы, созданные в этом каталоге, принадлежали общей группе (wineadmin), а не группе создавшего пользователя. Это даёт администраторам WINE (входящим в группу wineadmin), доступ к любым файлам в этом каталоге.
- На общий временный каталог
c:/windows/temp
выставляется атрибут "sticky bit" (режим 1770), чтобы пользователи не могли удалить созданные другими файлы. - каталог общего win-окружения должен иметь атрибут SGID (режим 2770), чтобы созданные разными пользователями (администраторами, входящими в группу wineadmin) файлы принадлежали общей группе, выставленной на каталоге, а не группе пользователя.
Администратор может производить дополнительное разграничение прав обычными системными средствами. При необходимости иметь некоторые каталоги общедоступными, на них нужно исправить права или группу.
Общие замечания
Для упрощения приняты следующие умолчания: если в качестве параметра --admin
или --attach
указан относительный путь к каталогу (например, просто test
), то он отсчитывается от /var/lib/wine-etersoft
. Если каталог не указан вовсе, подразумевается /var/lib/wine-etersoft/default
Команды настройки общего win-окружения (wine --admin
) и подключения к нему (wine --attach
) предполагают, что у выполняющего их пользователя отсутствует каталог ~/.wine
. Если такой каталог уже есть, то будет выведено сообщение об ошибке. При необходимости можно переместить ~/.wine
в другой каталог или изменить переменную окружения WINEPREFIX
-- тогда wine --admin
и wine --attach
будут производить настройку в том каталоге, который указан в этой переменной.
Краткая инструкция
Режим административной установки призван упростить администрирование ПО при наличии однотипных установок программ, и очень легко реализуется на практике. Рассмотрим порядок установки с самого начала, когда пользователи в системе уже заведены, но /. wine отсутствует (инициализация не производилась).
- Вносим пользователя, который будет администрировать WINE (устанавливать программы), в группу
wineadmin
. - Заходим под пользователем-администратором и запускаем
$ wine --admin
- Устанавливаем необходимые программы и выполняем нужные настройки
- Под каждым пользователем запускаем
$ wine --attach
Всё. Пользователи разделяют системный реестр system.reg
, имеют индивидуальный реестр user.reg
, общий диск C:
, доступный на запись пользователю-администратору.
Рассмотрим на конкретном примере
На машине присутствуют пользователи admin и test, где admin - учетная запись администратора, test - учетная запись рядового пользователя
- После установки WINE@Etersoft необходимо добавить администратора (пользователя admin) в группу wineadmin:
# usermod -a -G wineadmin admin
- Запускаем под пользователем admin команду:
$ wine --admin
- После отработки команды, переходим к установке необходимой Вам программы в wine, установка не отличается от обычной. На примере КОМПАС-3D v21 необходимо перейти в каталог с распакованным дистрибутивом программы и запустить:
$ wine_install_kompas
- После установки программы, запустите её под пользователем admin и выполните все необходимые настройки (например, активация ПО или подключение лицензионных ключей защиты)
- После выполнения всех настроек в ПО, заходим в систему под тем пользователем, который будет работать с ПО, в нашем примере это пользователь test, и выполняем команду:
$ wine --attach
Готово! Теперь пользователь может пользоваться программой.
Файл конфигурации
Файл конфигурации по умолчанию расположен в /etc/wine-etersoft/wine-etersoft.conf
. Так же он может быть расположен в домашнем каталоге пользователя ~/.config/wine-etersoft.conf
и в самом префиксе ~/.wine/wine-etersoft.conf
. При этом будет сохраняться наследственность в следующем порядке etc > .config > .wine
, если были изменены какие-то значения, то они будут перезаписаны в указанном порядке.
В файле конфигурации используются следующие параметры:
-
ATTACH_MODE
— Подсоединяет пользователя к административной установке при первом запуске. -
WINEADMIN
— Название или путь к каталогу административной установки. -
WINEDISABLEETERSPLASH
— Выключение заставки при запуске с ярлыка.
Копирование ярлыков пользователю
После использования скриптов автоматической установки wine_install_*
пользователем с правами администратора WINE, ярлыки скопированы в общее win-окружение. Пользователь, использовавший wine --attach
в первый раз, автоматически скопирует все ярлыки, которые были в общем win-окружении.
Создание резервной копии
Для создания резервной копии установленных в режиме административной установки программ достаточно заархивировать каталог /var/lib/wine-etersoft/default
. В нём находится содержание диска C:
, включая файл системного реестра.