WINE@Etersoft/Режим административной установки — различия между версиями
Mais (обсуждение | вклад) (→Общие замечания) |
Mais (обсуждение | вклад) (→Создание резервной копии) |
||
Строка 105: | Строка 105: | ||
=== Создание резервной копии === | === Создание резервной копии === | ||
− | Для создания резервной копии установленных в режиме административной установки программ достаточно заархивировать каталог <code>/var/lib/wine/default</code>. В нём находится содержание диска <code>C:</code>, включая файл системного реестра. | + | Для создания резервной копии установленных в режиме административной установки программ достаточно заархивировать каталог <code>/var/lib/wine-etersoft/default</code>. В нём находится содержание диска <code>C:</code>, включая файл системного реестра. |
<noinclude>{{Wine}}</noinclude> | <noinclude>{{Wine}}</noinclude> |
Версия 15:39, 11 января 2024
Содержание
[убрать]Режим административной установки
Обычный подход, когда каждый пользователь должен самостоятельно установить 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-окружения (по умолчанию .wine
) переменной окружения WINEPREFIX
. Например:
$ WINEPREFIX=.wine-admin wine --attach /var/lib/wine-etersoft/common-dir
/etc/wine-etersoft/config
:ATTACH_MODE="yes" # включает режим общего win-окружения WINEADMIN="default" # путь к общему win-окружению
Дополнительно к файлу /etc/wine-etersoft/config
просматриваются файлы ~/.config/wine
и ~/.wine/config
, что позволяет указывать дополнительные настройки в разрезе пользователей и созданных win-окружений. Конфигурационные файлы должны быть готовы к тому, что они будут исполняться с помощью sh
.
Права доступа к общему 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
(либо добавляемATTACH_MODE="yes"
в файл/etc/wine-etersoft/config
, см. ранее описание этого конф. файла)
Всё. Пользователи разделяют системный реестр system.reg
, имеют индивидуальный реестр user.reg
, общий диск C:
, доступный на запись пользователю-администратору.
Единообразие настроек пользователя
При доступе к общему win-окружению у пользователей остаётся индивидуальной раскладка дисков (в каталоге dosdevices
) и пользовательский реестр (в файле user.reg
). Иногда эти настройки также требуется устанавливать централизованно.
Если нужно обеспечить одинаковые диски для всех пользователей, нужно создать скрипт какой-то.sh
в /etc/wine-etersoft/script.d
и разместить в нём соответствующие команды map_drive
по аналогии со /etc/wine-etersoft/script.d/map_devices.sh
, например
map_drive / z:
Скрипты с расширением .sh
применяются при первом запуске WINE и при выполнении команды wine --update
и wine --attach
после инициализации реестра, а скрипты с расширением .sh.pre
применяются до инициализации реестра.
По умолчанию при первичной инициализации создаётся диск n:
, ссылающийся на /net/sharebase
.
Для обеспечения единообразия пользовательских настроек, хранящихся в реестре user.reg
, произведите под одним пользователем нужные настройки, выгрузите с помощью regedit
нужную ветку реестра, разместите её в каталоге /etc/wine-etersoft/reg.d/
(например, под именем mytest.reg
-- важно указать расширение .reg
), и она будет применяться при обновлении или присоединении к административной установке (командах wine --update
или wine --attach
). Файлы с расширением .reg
применяются до установки сторонних компонент, файлы с расширением .reg.after
будут применяться после установки сторонних компонент.
Создание резервной копии
Для создания резервной копии установленных в режиме административной установки программ достаточно заархивировать каталог /var/lib/wine-etersoft/default
. В нём находится содержание диска C:
, включая файл системного реестра.