Оглавление |
---|
Предупреждениеinfo | |||
---|---|---|---|
| |||
Wine, как и иное программное обеспечение из расширенного репозитория, является сторонним по отношению к Astra Linux, не дорабатывается с точки зрения выполнения требований по безопасности информации и не проверяется при сертификации. Подробнее см. Использование стороннего программного обеспечения в аттестованных информационных системах, функционирующих под управлением
При использовании программного обеспечения расширенного репозитория рекомендуется для дополнительной изоляции процессов осуществлять их запуск в изолированной программной среде (контейнере) [п. 7.2 РукКСЗ1]. При использовании для этих целей Docker-контейнеров их запуск целесообразно осуществлять от имени непривилегированного пользователя в rootless-режиме, а при включенном мандатном контроле целостности (МКЦ) с применением технологии запуска контейнеров на пониженном [п. 7.2.1] или выделенном [п. 7.2.7] уровне МКЦ. |
Аннотация
special | @anonymous |
---|
Предупреждение |
---|
Данный комментарий и некоторые ссылки в статье предназначены только для внутреннего использования и не отображаются для анонимных пользователей. |
В статье собраны ответы на популярные вопросы по установке и работе Wine на компьютерах под управлением ОС Astra Linux.
Wine — свободное программное обеспечение, позволяющее пользователям UNIX-подобных операционных систем, например, GNU/Linux, Apple macOS и других UNIX-подобных с поддержкой архитектур CPU x86, AMD64 (и других архитектур CPU, при наличии совместимости с ними запускаемых приложений) исполнять 16-, 32- и 64-битные приложения, в том числе игры, созданные исключительно для Microsoft Windows, без наличия при этом установленной Microsoft Windows.
Официальный сайт Wine: https://www.winehq.org/.
Информация | ||
---|---|---|
| ||
|
|
Предупреждение | ||
---|---|---|
| ||
Wine, как и иное программное обеспечение из расширенного репозитория, является сторонним по отношению к Astra Linux, не дорабатывается с точки зрения выполнения требований по безопасности информации и не проверяется при сертификации. При использовании программного обеспечения расширенного репозитория рекомендуется для дополнительной изоляции процессов осуществлять их запуск в изолированной программной среде (контейнере) [п. 7.2 РукКСЗ1]. При использовании для этих целей Docker-контейнеров их запуск целесообразно осуществлять от имени непривилегированного пользователя в rootless-режиме, а при включенном мандатном контроле целостности (МКЦ) с применением технологии запуска контейнеров на пониженном [п. 7.2.1] или выделенном [п. 7.2.7] уровне МКЦ. |
Аннотация
Hide If | ||
---|---|---|
| ||
|
В статье собраны ответы на популярные вопросы по установке и работе Wine на компьютерах под управлением ОС Astra Linux.
Wine — свободное программное обеспечение, позволяющее пользователям UNIX-подобных операционных систем, например, GNU/Linux, Apple macOS и других UNIX-подобных с поддержкой архитектур CPU x86, AMD64 (и других архитектур CPU, при наличии совместимости с ними запускаемых приложений) исполнять 16-, 32- и 64-битные приложения, в том числе игры, созданные исключительно для Microsoft Windows, без наличия при этом установленной Microsoft Windows.
Официальный сайт Wine: https://www.winehq.org/.
Общие вопросы
Функционал Wine
wineserver
— служба, выполняющая роль ядра ОС Windows. Для каждого префикса запускается своя служба, что позволяет одновременно выполнять несколько программ из разных префиксов. Рекомендуется использовать данную команду с ключом-k
, если префикс перестал функционировать;wineboot
— служба, выполняющая инициализацию, запуск и перезагрузку префикса. Так же она выполняет симуляцию завершения работы и перезапуска для программ, запущенных в префиксе;regedit
— аналог редактора реестра Windows. Настройки, которыми можно управлять черезwinecfg
иwinetricks
, сохраняются в ветку реестраHKEY_CURRENT_USER\Software\Wine
;winecfg
— программа для настройки префикса. Наиболее часто используемые вкладки:- Приложения — выбор того, под какую версию Windows будет изменяться префикс. На данный момент по умолчанию выбрана Windows 7;
- Диски — подключение виртуальных и физических разделов, DVD-приводов, сетевых дисков. При создании префикса по умолчанию подключено два виртуальных диска — C: и Z:. Диск C: является системным каталогом префикса, а диск Z: ведет в корень файловой системы Linux.
ЯкорьHowToInstall HowToInstall
Как может быть установлен Wine в Astra Linux
HowToInstall | |
HowToInstall |
Wine в Astra Linux может быть установлен:
при использовании Astra Linux Special Edition 1.7 — из расширенного репозитория (см. Репозитории Astra Linux Special Edition x.7: структура, особенности подключения и использования и Интернет-репозитории Astra Linux Special Edition x.7).
Информация Wine, доступный в расширенном репозитории Astra Linux Special Edition 1.7, поддерживает только 64-разрядную архитектуру. - из сторонних репозиториев (например, репозиториев Debian - см. Подключение репозиториев с пакетами в ОС Astra Linux и установка пакетов);
- из загруженных файлов пакетов .deb:
- для запуска Internet Explorer в Astra Linux Special Edition 1.7 — Wine версии 7.0.1, поддерживающий 32-разрядную архитектуру, который можно скачать по ссылке: wine_7.0.1-0-astra-se17_lsb_amd64.deb;
Из подключенных репозиториев Wine может быть установлен штатным менеджером пакетов (см. Графический менеджер пакетов synaptic) или командой apt:
Command |
---|
sudo apt install wine |
Для установки из файла с пакетом .deb:
Command |
---|
sudo apt install ./<имя_файла> |
Где располагаются файлы Wine?
Получить полный список файлов установленного пакета можно командой:
Command |
---|
dpkg -L <имя_пакета> |
Отдельно следует отметить служебные каталоги:
- Для Wine 7.0.x, установленного из репозитория Astra Linux Special Edition 1.7 или из deb-пакета используется каталог
/usr/share/wine
. Исполняемые файлы располагаются в каталоге/usr/bin/;
- Для Wine, установленного из сторонних источников, используется каталог
/opt/<установленная_версия_wine> (библиотеки)
Исполняемые файлы располагаются в каталоге/opt/<установленная_версия_wine>/bin/
. Таким образом, каждая версия устанавливается в отдельный каталог, что позволяет установить одновременно несколько версий.
Пользовательские файлы Wine располагаются в пользовательских каталогах в так называемых префиксах - см. Что такое префикс? Что располагается в префиксе?.
Hide If | |||||
---|---|---|---|---|---|
| |||||
|
Якорь | ||||
---|---|---|---|---|
|
Префиксы - подкаталоги в домашнем каталоге пользователя. В префиксы Wine помещает все файлы, относящиеся к приложениям Windows, установленным пользователем: ПО Windows, библиотеки, реестр. В том числе:
dosdevices
— каталог, в котором перечислены виртуальные диски. В Windows разделы блочных устройств представлены в виде абстрактных дисков (томов), каждый из которых обозначается буквой. К примеру, системный диск по умолчанию называется "C:";drive_c
— виртуальный диск C:, на котором располагаются компоненты Windows;update-timestamp
— метка времени;system.reg
,user.reg
иuserdef.reg
— файлы реестра Windows, которые являются централизованным древовидным хранилищем настроек Windows-программ;winetricks.log
— файл, содержащий список команд использованных при настройке префикса черезwinetricks
.
Префикс общего назначения имеет название .wine
. Для некоторых приложений могут создаваться свои префиксы, например для Internet Explorer — .wine-IE8
. Используемый по умолчанию префикс можно задать в переменной окружения WINEPREFIX:
Command |
---|
export WINEPREFIX=~/.wine |
Префикс также можно указать при запуске программы, переопределив переменную окружения. Например, для запуска Internet Explorer в префиксе .wine-IE8
:
Command |
---|
WINEPREFIX=~/.wine-IE8 /opt/wine-7.13/bin/wine ~/.wine-IE8/drive_c/Program\ Files/Internet\ Explorer/iexplore.exe |
Указание префиксов и архитектур через переменные окружения
Как указано в предыдущем разделе, префикс может быть задан значением переменной окружения WINEPREFIX. Аналогично могут использоваться следующие переменные окружения:
WINE — путь к исполняемому файлу
wine
. Например:Command export WINE=/opt/wine-7.13/bin/wine WINEARCH — используемая архитектура префикса. Допустимые значения: win32 и win64. Например:
Command export WINEARCH=win32
Значения переменных окружения, заданные с помощью команды export, сохраняются до выхода из пользовательской сессии и применяются глобально ко всем командам. По необходимости для отдельных команд можно переопределить значения переменных. Например, если одновременно используются Internet Explorer и iexplore, имеющие разные префиксы и архитектуры, то команды для их запуска могут быть такими:
Internet Explorer (префикс - wine-IE8, архитектура - win32):
Command WINEPREFIX=~/.wine-IE8 WINEARCH=win32 $WINE ~/.wine-IE8/drive_c/Program\ Files/Internet\ Explorer/iexplore.exe iexplore (префикс - wine, архитектура - win64):
Command WINEPREFIX=~/.wine WINEARCH=win64 $WINE iexplore
Для того, чтобы удалить ранее заданную переменную окружения, можно использовать команду unset:
Command |
---|
unset WINEARCH |
Виды сборок и актуальные версии Wine для ОС Astra Linux
Вид сборки | Описание | Актуальная версия | ||
---|---|---|---|---|
stable | Стабильная ветка | 4.0 и 7.0.x | ||
devel | Разрабатываемая сборка | 7.13 | ||
staging | Экспериментальная ветка. Содержит набор нестабильных исправлений и функциональных возможностей. Не рекомендуется для использования без конкретных целей. | 7.13 | ||
cpro | Разрабатываемая сборка с поддержкой СКЗИ КриптоПРО
| 7.0 | ||
специализированные сборки под конкретное программное изделие | Например, T-Flex CAD, Справки БК, InnovaSystem LIS |
Запуск файлов в Wine в форматах .exe, .msi, .msp, .bat, .application
Информация |
---|
Wine, доступный в расширенном репозитории Astra Linux Special Edition 1.7, поддерживает только 64-разрядную архитектуру. |
.exe:
Command wine <имя_файла>.exe .msi:
Command wine msiexec /i <имя_файла>.msi
.msp:
Command wine msiexec /p <имя_файла>.msp
.bat:
Command wine start <имя_файла>.application
.application (для запуска требуется компонент .NET):
Command winetricks -q dotnet40
wine start <имя_файла>.application
Запуск Wine от имени суперпользователя
Предупреждение | ||
---|---|---|
Запускать Wine в сессии суперпользователя ( Если ранее осуществлялся запуск Wine с использованием
Если префикс был создан в сессии суперпользователя ( |
Gecko и Mono
Mono — проект по созданию полноценного воплощения системы .NET Framework на базе свободного программного обеспечения (ПО). В основе проекта лежат спецификации на С# и CLI, переданные Microsoft в организации по стандартизации. Но Mono — это не просто клон .Net, здесь есть свои собственные технологии и библиотеки, которых нет в MS .NET. Цель Mono — помочь в переносе написанных для Windows .Net-программ под Linux и другие ОС. В связи с отсутствием полной совместимости, использование Mono для запуска приложений Microsoft .NET невозможно.
Gecko — это свободный движок вывода веб-страниц для браузера при работе Wine в сети Интернет. Если в Wine не предполагается использование сети Интернет (в том числе для работы Справочных страниц в ПО), то использование Gecko не требуется.
Порядок установки Mono и Geko описан в статье Установка wine на Astra Linux.
Почему не работает установка/запуск ПО 32-разрядной архитектуры в Wine в Astra Linux Special Edition РУСБ.10015-01 и РУСБ.10015-10 (очередное обновление 1.7)?
Wine, доступный в расширенном репозитории Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7), поддерживает только 64-разрядную архитектуру.
Как запустить ПО 32-разрядной архитектуры в Wine в Astra Linux Special Edition РУСБ.10015-01 и РУСБ.10015-10 (очередное обновление 1.7)?
Для запуска 32-разрядных приложений в Astra Linux Special Edition 1.7 требуется:
- Использовать Wine версии 7.0.1, который можно скачать по ссылке: wine_7.0.1-0-astra-se17_lsb_amd64.deb;
- Создать 32-разрядный префикс.
Якорь | ||||
---|---|---|---|---|
|
Для создания префикса с 32-разрядной архитектурой выполнить следующие команды:
Создать переменную окружения с указанием архитектуры:
Command export WINEARCH=win32
После задания переменной окружения префиксы, которые будут создаваться в текущем сеансе "Терминала Fly", будут иметь 32-разрядную архитектуру.
Выполнить команду для создания префикса:
Command wineboot
Команду wineboot можно не выполнять, а вместо нее сразу выполнить команду winetricks с установкой необходимых пакетов. Нужный префикс (.wine
) при этом будет создан автоматически.
Internet Explorer и iexplore
Internet Explorer и iexplore - это два разных Web-браузера, которые можно использовать в среде Wine:
- Internet Explorer (IE, IE8) — приложение Microsoft Windows, которое может быть установлено и запущено в 32-битной среде Wine;
- iexplore — приложение Wine, которое устанавливается вместе с Wine работает в 64-битном префиксе;
Как запустить iexplore в Wine
Для запуска iexplore:
- Установить wine (см. Установка wine на Astra Linux) и настроить переменные окружения;
Выполнить команду:
Command $WINE iexplore Предполагается, что в переменной окружения WINE сохранен путь к исполняемому файлу wine.
Как установить и запустить Internet Explorer (IE) в Wine?
Информация |
---|
Версии IE выше версии 8 в Wine не работоспособны. Версия 8 (IE8) работает стабильно с Wine версий 7.0.1 и 7.13. Далее рассматривается работа с версий 7.13. |
Для установки IE8 требуется:
Проверить, включена ли блокировка трассировки ptrace:
Command sudo astra-ptrace-lock status и, если блокировка включена (активна), то отключить блокировку:
Command sudo astra-ptrace-lock disable и перезагрузить компьютер;
Загрузить и установить Wine 7.13. См. Установка wine на Astra Linux;
Установить пакет cabextract;
Command sudo apt install cabextract
Создать 32-разрядный префикс Wine и установить приложение:
Command export WINEPREFIX=~/.wine-IE8
export WINEARCH=win32
export WINE=/opt/wine-7.13/bin/wine
winetricks ie8
winetricks -q msxml6 win2kПри выполнении команд будет задан вопрос про необходимость установки компонента Mono. Для использования IE8 этот компонент не требуется, и от его установки можно отказаться.
Запуск IE8 осуществляется командой:
Command |
---|
$WINE ~/.wine-IE8/drive_c/Program\ Files/Internet\ Explorer/iexplore.exe |
Устранение ошибок, возникающих при работе с Wine
Ярлык не работает. Как запускать ПО Wine через рабочий стол?
Когда установщик приложения Windows пытается создать ярлык приложения, Wine вместо ярлыка создает файл file.desktop
. Чтобы откорректировать этот файл откройте Свойства — Ярлык — Команда и приведите команду к следующему виду:
Предупреждение |
---|
При указании пути, где есть спец. символы (в примере: пробелы, скобки и символы "обратная косая черта" ("\") в указании пути Windows), такие символы требуется экранировать двумя символами обратная косая черта: "\\", при этом сами символы "обратная косая черта" должны быть удвоены. То есть:
|
Так, путь "C:\Program Files (x86)\Name PO\Sl.exe" будет задан в виде:
Command |
---|
env WINEPREFIX="/home/u/.wine-name" wine C:\\\\Program\\ Files\\ \\(x86\\)\\\\Name\\ PO\\\\Sl.exe |
Wine cannot find the FreeType font library. To enable Wine to use TrueType fonts please install a version of FreeType greater than or equal to 2.0.5 Якорьia32-libs ia32-libs
ia32-libs | |
ia32-libs |
Для устранения данной ошибки требуется корректно установить пакет ia32-libs
в Astra Linux Special Edition 1.7. Для этого:
Удалить ранее установленный пакет
ia32-libs
:Command sudo apt remove ia32-libs
Удалить Wine:
Command sudo apt remove <установленный_пакет_wine>
Установить пакет
ia32-libs
из репозитория:Command sudo apt install ia32-libs
Предупреждение Для Astra Linux Special Edition РУСБ.10015-01 и РУСБ.10015-10 (очередное обновление 1.7) с установленным обновлением БЮЛЛЕТЕНЬ № 2021-1126SE17 (оперативное обновление 1) требуется обновить пакет ia32-libs, для чего загрузить пакет ia32-libs_20220330+1.7se и установить взамен установленного из репозиториев:
Command sudo apt install ./ia32-libs_20220330+1.7se_amd64.deb
- Повторно установить Wine (см. Как может быть установлен Wine в Astra Linux).
dpkg: зависимости пакетов не позволяют настроить пакет ia32-libs
Для устранения данной ошибки выполнить действия из предыдущего пункта.
X Error of failed request: GLXBadFBConfig Major opcode of failed reqiest: 151 (GLX)
Данная ошибка может возникнуть у пользователей с видеокартами AMD, NVIDIA, IGPU. Для ее решения настроить параметр MESA_GL_VERSION_OVERRIDE
:
Command |
---|
export MESA_GL_VERSION_OVERRIDE=3.3 |
Чтобы не вводить данный параметр постоянно для запуска ПО, рекомендуется внести его в ярлыки следующей командой:
Command |
---|
sed -i 's~^Exec=env \(.*\)~Exec=env "/bin/bash -c env MESA_GL_VERSION_OVERRIDE="3.3" \1"~' <имя_файла_с_ярлыком> |
libGL error: failed to load driver: swrast X Error of failed request: BadValue (integer parameter out of range for operation) Major opcode of failed request: 151 (GLX)
Данная ошибка может возникнуть у пользователей с видеокартами NVIDIA. Для ее устранения удалить символическую ссылку на библиотеку в разделе /usr/lib32/i386-linux-gnu
:
Command |
---|
sudo rm /usr/lib32/i386-linux-gnu/libGL.so.1 |
Unhandled Exception: System.ComponentModel.Win32Exception: Доступ запрещен
Для устранения данной ошибки отключить блокировку трассировки ptrace
. Отключить блокировку можно двумя способами:
В "Терминале Fly" ввести следующую команду:
Command sudo astra-ptrace-lock disable Открыть Панель управления — Безопасность — Политика безопасности — Настройки безопасности — Системные параметры. Снять отметку Блокировка трассировки ptrace для всех пользователей, включая администраторов.
Для вступления в силу изменения блокировки ptrace требуется перезагрузка системы.
warning: wineserver not found!
Данная ошибка будет возникать у пользователей только при отсутствии пути к Wine. Если Wine установлен в каталоге /opt/<версия_wine>
, то для работы winetricks
следует определить значение локальной переменной wine
:
Command |
---|
export WINE=/opt/<версия_wine>/bin/wine |
После определения переменной можно работать с "winetricks".
Winetricks
Назначение и установка
Winetricks — сценарий оболочки загружающий недостающие библиотеки (DLL) и шрифты из доверенных источников.
Предупреждение |
---|
Для корректной работы |
Для установки пакетов:
Для Astra Linux Special Edition РУСБ.10015-01 и РУСБ.10015-10 (очередное обновление 1.7) с подключенным расширенным репозиторием: Интернет-репозитории Astra Linux Special Edition x.7 и Astra Linux Common Edition 2.12 установить пакеты из репозиториев:
Command sudo apt install ca-certificates libmspack0 cabextract zenity
Для Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) загрузить с помощью web-браузера пакеты: cabextract и libmspack0. Далее предполагается, что пакеты сохранены в подкаталог "Загрузки" домашнего каталога:
Command sudo apt install ./libmspack0_*_amd64.deb ./cabextract_*_amd64.deb ca-certificates zenity
Загрузить и установить winetricks
:
Command |
---|
wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks |
Компонент dotnet
Компонент .NET Framework устанавливается для обеспечения взаимодействия .net-программ с другими компонентами ОС.Взаимодействие обеспечивается через обмен запросами, независимо от того, на каком языке программирования были созданы данные программы.
Используя winetricks, можно установить для архитектур amd32, amd64 компонент dotnet
, который будет взаимодействовать с программами, использующие данный фреймворк.
Для установки dotnet
выполнить:
Command |
---|
winetricks -q dotnet48 |
Список доступных dotnet
для установки:
Command |
---|
winetricks list-all| grep dotnet |
Компонент vcrun
Библиотеки, позволяющие запускать программы, в разработке которых была использована среда Microsoft Visual C++, известная так же как MSVC.
Используя winetricks, можно установить для архитектур amd32, amd64 компонент vcrun
, который будет взаимодействовать с программами, использующими данные библиотеки.
Для установки vcrun
выполнить команду:
Command |
---|
winetricks -q vcrun2019 |
Для получения списка доступных vcrun
для установки выполнить команду:
Command |
---|
winetricks list-all| grep vcrun |
Компонент mdac
Mdac — совокупность технологий компании Microsoft, позволяющих получить унифицированный способ доступа к данным различных реляционных и не реляционных баз данных.
Используя winetricks, можно установить для архитектуры amd32 компонент mdac
, который будет взаимодействовать с программами, связанными с базами данных.
Для архитектуры amd64 компоненту mdac
требуется создать 32-битный префикс, с установкой необходимых библиотек и изменений реестра Windows.
Для установки mdac
выполнить команды:
Command |
---|
export WINEARCH=win32 |
...