Wine linux как пользоваться
Wine не всегда лучший вариант для запуска программ Windows в Linux. Вы также можете использовать инструмент виртуализации, такой как VirtualBox или VMware , но для них требуется больше системных ресурсов и установочный файл Windows.
В этой статье описывается, как установить Wine на Ubuntu 20.04. Мы покажем вам, как установить дистрибутив по умолчанию версии 5.0 и последней версии 6.x из репозиториев WineHQ. Те же инструкции применимы для любого дистрибутива на основе Ubuntu, включая Zorin OS, Linux Mint и Elementary OS.
Установка Wine 5.0 на Ubuntu
Пакеты Wine включены в репозитории Ubuntu по умолчанию и могут быть легко установлены с помощью диспетчера пакетов apt Это самый простой способ установить Wine на Ubuntu. Однако версия дистрибутива может отставать от последней версии Wine.
После завершения установки проверьте это, распечатав версию Wine:
Вот и все. Wine установлен на ваш компьютер, и вы можете начать его использовать.
Установка Wine 6.0 на Ubuntu
В этом разделе мы предоставим пошаговые инструкции о том, как установить Wine версии 6 на Ubuntu 20.04.
Если вы используете 64-битную систему Ubuntu, включите 32-битную архитектуру и обновите список пакетов:
Импортируйте GPG-ключ репозитория WineHQ:
Добавьте репозиторий WineHQ в вашу систему:
Установите Wine, набрав:
Это установит кучу пакетов. После завершения проверьте установку Wine, набрав:
На момент написания этой статьи последним основным выпуском Wine была версия 6.0:
Wine установлен и готов к использованию.
Настройка Wine
Чтобы начать настройку Wine, запустите команду winecfg в своем терминале. Команда устанавливает Mono и Gecko и устанавливает среду Wine:
Появится диалоговое окно с вопросом, хотите ли вы установить пакет wine-mono:
Когда установка будет завершена, отобразится диалоговое окно конфигурации Wine. Здесь вы можете настроить различные параметры Wine. В большинстве случаев достаточно настроек по умолчанию. По завершении закройте диалоговое окно.
Установка Notepad ++ в Ubuntu
Теперь, когда Wine установлен и настроен, мы объясним, как устанавливать приложения Windows на вашу Ubuntu.
В этом руководстве мы покажем вам, как установить Notepad ++, один из самых популярных текстовых редакторов Windows. Запустите браузер и загрузите установочный файл со страницы загрузки Notepad ++ .
После завершения загрузки запустите установку, щелкнув правой кнопкой мыши .exe и выбрав «Открыть с помощью Wine Windows Program Loader».
Мастер установки запустится, выберет язык и установит Notepad ++ так же, как и любое приложение на компьютере с Windows.
Приложения Windows устанавливаются в
Чтобы запустить редактор Notepad ++, перейдите в
/.wine/drive_c/Program Files (x86)/Notepad++ и дважды щелкните файл notepad++.exe
Вы также можете запустить приложение из панели поиска Действия.
Вывод
Мы показали вам, как установить Wine на рабочий стол Ubuntu 20.04 и как устанавливать приложения Windows.
Если вы столкнулись с проблемой или хотите оставить отзыв, оставьте комментарий ниже.
Этичный хакинг и тестирование на проникновение, информационная безопасность
Оглавление
Для чего Wine
Эта инструкция расскажет об использовании Wine. Данные советы по использованию применимы как к Kali Linux, так и к любому другому дистрибутиву Linux.
Итак, Wine — это набор программ и библиотек, которые позволяют запускать Windows приложения в Linux без использования виртуализации. Конечно, Windows программы можно запустить в Linux с использованием VirtualBox, но такой вариант потребует запуска полноценной операционной системы с соответствующими затратами ресурсов, особенно оперативной памяти — для работы Windows необходимо несколько гигабайт памяти, а также место на диске для установки — несколько десятков гигабайт. При этом важным требованием для работы VirtualBox и аналогичных виртуальных компьютеров является то, чтобы ваш центральный процессор поддерживал виртуализацию.
Wine позволяет обойти все эти ограничения — для запуска программ Windows не нужно устанавливать эту операционную систему и приложениям для работы требуется всего несколько десятков мегабайт оперативной памяти.
Но у Wine есть и недостатки — не все приложения работают хорошо или вообще работают. Тем не менее огромное количество Windows программ прекрасно запускаются и работают в Linux благодаря Wine.
Помните, что многие бесплатные программы являются кроссплатформенными и вы можете их установить из стандартных репозиториев вашего дистрибутива. Для таких программ не нужен Wine. Примеры популярных кроссплатформенных программ: LibreOffice, Google Chrome, Firefox, Double Commander, VirtualBox, Etcher, VLC, DeadBeef, GIMP, OBS Studio, Viber, Wireshark, Apache, PHP, MySQL, Calibre, Netbeans, Burp Suite, Visual Studio Code, KeePass, KeePassXC, OpenShot Dropbox, Python, Ruby, Perl, PowerShell, SSH, Vuse BitTorrent Client, FileZilla, Tor Browser, JDownloader и очень многие другие. Всем этим программам не нужен Wine, поскольку они имеют «родные» установочные пакеты для Linux.
Прежде чем пытаться установить и запустить программу через Wine, поищите её с помощью менеджера пакетов, например:
Возможности и ограничения Wine
Программа способна запускать 64-битные, 32-битные, 16-битные программы и библиотеки Windows 9x/NT/2000/XP/Vista/7/8/10 и Windows 3.x
Поддержка Win32 API:
- Поддержка игр и приложений на основе DirectX (поддержка Direct3D до DirectX 12)
- Поддержка игр и приложений на основе OpenGL и Vulkan
- Поддержка DirectShow с использованием GStreamer для кодеков
- Direct2D, поддержка DirectWrite
- Поддерживаются MMDevice API, XAudio, WinMM, DirectSound audio API.
- Печать через драйвер PostScript в главную систему печати (обычно CUPS)
- Драйвер расширенного метафайла (EMF) и метафайла Windows (WMF)
- Desktop-in-a-box или смешанные окна
Позволяет программе Windows взаимодействовать с:
- Графикой на основе X11, которая позволяет удалённо отображать на любом X-терминале
- Графикой на базе macOS и Android
- Шрифты X11, TrueType (.ttf/.ttc) и Windows Bitmap (.fon)
- Звуковыми устройствами через ALSA, OSS, PulseAudio, Core Audio и т. д.
- Многоязычной клавиатурой и поддержка метода ввода CJK через XIM
- Модемами, последовательными устройствами
- Сетями (TCP/IP и IPX)
- Сканерами ASPI
- Планшетами Windows через XInput (например, Wacom)
- Устройствами видеозахвата через v4l2
- Устройствами HID через IOHid (MacOS), evdev (Linux), hidraw (Linux), SDL2
Как вы можете увидеть, список впечатляющий и позволяет, к примеру, запускать игры для которых требуется DirectX и при этом выводить звук. Приложения из Wine могут работать с сетью и даже имеют доступ к некоторым аппаратным возможностям (принтеры, сканеры).
Если для работы приложения необходимы дополнительные библиотеки, например, Visual C++ Redistributable for Visual Studio, то их возможно установить в Wine и запускать приложение в среде с установленной этой библиотекой.
При этом нужно помнить о таком ограничении, как невозможность работать с устройствами напрямую, например, если для устройства требуется драйвер, то бессмысленно устанавливать Windows драйвер в Wine — вам нужно найти версию драйвер для Linux и установить её.
64-битный или 32-битный Wine?
В этой инструкции для установки Wine мы включим поддержку репозиториев для 32-битных платформ (i386) для того, чтобы скачать необходимые библиотеки. Может возникнуть вопрос, существует ли 64-битный Wine и если да, зачем нам подключать репозитории для i386 и скачивать 32-битную версию?
Да. 64-битный Wine доступен в Linux начиная с версии 1.2. Бинарные пакеты WineHQ доступны для 64-битных версий, и большинство основных дистрибутивов упаковывают их для пользователей. Обычно установка должна быть такой же простой, как установка пакета Wine для вашего дистрибутива через менеджер пакетов.
Но имеется несколько очень важных замечаний:
- 32-битный Wine работает как в 32-битных, так и в 64-битных версиях Linux/Unix. На нём будут работать 16-битные и 32-битные приложения Windows.
- 64-битный Wine работает только на 64-битных установках и пока что был тщательно протестирован только в Linux. Для запуска 32-битных приложений Windows требуется установка 32-битных библиотек. И 32-битные, и 64-битные приложения Windows (должны) работать с ним; однако есть ещё много ошибок.
- Текущий Wine включает поддержку 64-битного Wine в Mac OS X; однако это не было тщательно проверено, и некоторые приложения могут никогда не работать из-за несовместимости ABI между Win64 и OS X.
Главное, что из этого следует — даже при установке 64-битного Wine необходимо активировать 32-битные репозитории, поскольку многие приложения Windows по-прежнему являются 32-битными и в любом случае необходимо установить 32-битные библиотеки, иначе многие программы просто не будут работать.
При установке можно явно выбрать пакет wine64, но даже если вы установите wine, то им будет 64-битная версия, если у вас 64-битный Linux.
Как установить Wine
Установка Wine в Debian, Kali Linux, Linux Mint, Ubuntu и их производные
Выполните следующие команды:
После установки запустите Wine — возможно, он предложит скачать необходимые шрифты и другие компоненты:
Чтобы проверить версию Wine выполните команду:
Установка Wine в Arch Linux
Откройте текстовый файл /etc/pacman.conf:
В нём найдите и раскомментируйте строки (убедитесь, что раскомментировали обе строки, иначе изменения не вступят в силу):
Обновите информацию о пакетах:
Как запустить программу в Wine
Запуск двойным кликом по исполнимому файлу
Для запуска Windows приложений в Linux обычно достаточно дважды кликнуть по ним. Но может быть так, что .exe файл будет открываться менеджером архивов или другим приложением (обычно менеджером архивов).
В этом случае кликните по файлу правой кнопкой мыши, выберите пункт «Открыть с помощью» и выберите Wine.
Если у вас в контекстном меню не появился Wine, то сделайте так:
- нажмите правой кнопкой на приложение, которое хотите запустить
- выберите «Открыть с помощью», а затем «Другое»
- поставьте галочку «Пользовательская команда» и там, где строка для ввода, введите wine. Поставьте галочку «Сохранить ассоциацию» и «Установить как приложение по умолчанию», нажмите ОК. Теперь все .exe файлы будут открываться двойным кликом.
В Ubuntu ( GNOME 3) в контекстном меню отсутствует Wine и невозможно добавить пользовательскую команду. Для исправления выполните следующее:
Если столкнётесь с ошибкой, что файл wine.desktop отсутствует, то найдите его с помощью следующей команды и отредактируйте приведённую выше команду:
Кликните правой кнопкой мыши по .exe файлу и выберите пункт, который называется «Открыть в другом приложении».
Затем выберите «Посмотреть все приложения».
Нажмите на «Wine — загрузчик Windows программ» и затем нажмите кнопку «Выбрать».
Запуск в командной строке
Поскольку программы Windows часто ищут файлы относительного того места, откуда они были запущены, при использовании командной строки вы должны запускать их очень специфическим способом: «сменить каталог» на папку, в которой расположена программа, и запустить файл .exe, используя только его имя файла. Например:
Использование wine start
В некоторых случаях может потребоваться указать полный путь к исполняемому файлу. Например, если вам нужно установить программу с нескольких компакт-дисков, ввод каталога в терминале не позволит вам извлечь компакт-диск.
Вам нужно использовать wine start, если вы укажете полный путь к .exe, потому что это позволяет Wine установить рабочий каталог для программы, если он ей нужен.
Вы можете указать Wine путь в стиле DOS или Windows в одинарных кавычках, например:
Вы также можете использовать двойные кавычки, но вам нужны две обратные косые черты вместо одной:
Если вы предпочитаете использовать путь в стиле Unix, используйте параметр /unix для запуска, например:
Передача аргументов командной строки Windows
Если вы используете программу с аргументами в Windows, например:
То вы можете сделать то же самое в Wine, запустив:
То есть командная строка идентична, за исключением wine перед ней. Обратите внимание, однако, что вам может потребоваться экранировать некоторые специальные символы обратной косой чертой из-за того, как они обрабатываются в оболочке Linux. Например:
Запуск файлов .msi
Файлы MSI нельзя запускать напрямую; вам нужно использовать либо программу Wine msiexec, либо запуск Wine с терминала:
Графическая среда Wine в стиле Explorer
Если вы предпочитаете использовать графический интерфейс для управления файлами, возможно, вам стоит рассмотреть возможность использования winefile. Это приложение Winelib поставляется с Wine и может быть найдено с другими программами Wine. Это полезный способ просмотреть конфигурацию вашего диска и найти файлы, а также вы можете запускать программы прямо из Winefile. Обратите внимание, что многие функции ещё не реализованы.
Чтобы его открыть выполните:
Как в Wine запустить файл .bat
Вы можете запустить файл .bat разными способами:
1. Выполните команду
Найдите файл .bat и запустите его двойным кликом.
2. Выполните команду
И найдите в окне Проводника нужный вам файл.
чтобы сразу попасть в нужную папку.
Когда найдёте файл .bat, то дважды кликните на него.
3. Вы можете запустить файл .bat в командной строке, используя конструкцию вида:
Если вы используете путь до файла в файловой системе Linux, то обязательно нужно указать опцию /unix.
Как установить программу в Wine и создать ярлык
Если программа является портативной, то вы можете поместить её в любое место на диске - необязательно в папку Wine. Кстати, по умолчанию диском C: в Wine является папка
Как уже сказано, вам необязательно помещать файлы с программой именно туда. Вы можете запускать портативные программы показанными выше способами.
Если программа распространяется в виде установщика (инсталлятора), то просто запустите этот установщик с помощью Wine. В большинстве случаев всё пройдёт как в Windows, будет выполнена обычная установка и на рабочем столе вашей Linux и в меню появится ярлык для запуска программы.
Для портативной программой вы также можете сделать ярлык. Для этого кликните правой кнопкой мыши по рабочему столу и выберите пункт «Создать кнопку запуска здесь» (в Cinnamon), «Создать значок запуска» (в XFCE) или аналогичный пункт.
Обычно есть возможность установить иконку, в том числе присутствуют иконки программ, когда-либо запускаемых в Wine.
Даже если «мастер значка запуска» позволяет указать рабочий каталог, то лучше не полагаться на него. В качестве команды запуска укажите команду вида:
То есть команда для выполнения включает в себя две подкоманды — переход в нужный каталог и запуска исполнимого файла.
К примеру, исполнимый файл находится в папке /home/mial/.wine/drive_c/Program Files (x86)/foobar2000/ и называется foobar2000.exe, тогда команда запуска следующая:
Обратите внимание, что:
- указан абсолютный, а не относительный путь до папки
- если в пути содержатся пробелы или другие специальные для оболочки символы (например, скобки), то они должны быть обязательно экранированы или путь должен быть помещён в кавычки.
Другой пример, когда файл находится не на диске Wine: нужно создать ярлык для запуска файла /mnt/disk_d/Share/Conses/ConsFed/cons.exe, тогда команда запуска следующая:
Если для работы программы необходима специальная версия Wine или дополнительные компоненты, то можно найти скрипты, которые упрощают их установку, о них будет позже в разделах, посвящённых PlayOnLinux и winetricks.
Встроенные в Wine программы
В Wine имеется несколько встроенных «стандартных программ Windows».
Wine — слой совместимости, позволяющий запускать приложения Microsoft Windows в Unix-подобных операционных системах. Программы, запущенные в Wine, работают так же, как и "родные" — без потерь производительности и увеличения потребления памяти, характерных для эмуляторов.
Contents
Установка
Сторонние приложения
Перечисленные ниже приложения являются отдельными проектами, с собственными сообществами и веб-сайтами, и не поддерживаются основным сообществом Wine. Подробности можно найти в Wine Wiki.
Настройка
Настройка Wine обычно выполняется следующими инструментами:
-
— графический настройщик Wine, запускается командой winecfg . — утилита Wine для редактирования реестра, запускается командой regedit . См. статью Useful Registry Keys на сайте WineHQ. — реализация Панели управления Windows для Wine, запускается командой wine control .
- Полный список команд можно найти в статье List of Commands на WineHQ.
WINEPREFIX
По умолчанию Wine хранит файлы настроек и установленные программы Windows в каталоге
/.wine . Этот каталог обычно называют "префикс Wine" или "бутылка Wine" (wine bottle - "бутылка вина"). Каталог создаётся/обновляется каждый раз, когда вы запускаете программу Windows или одну из связанных с Wine программ вроде winecfg. Каталог префикса содержит дерево, которое ваши программы будут видеть как диск C: .
С помощью переменной окружения WINEPREFIX можно задать произвольный каталог для префикса. Это удобно, если вы хотите использовать разные настройки для разных Windows-программ. Когда программа впервые запускается с новым префиксом, Wine автоматически создает каталог с чистым диском C и реестром.
Например, если вы запустите одну программу командой $ env WINEPREFIX=
/.win-a wine program-a.exe , а другую — командой $ env WINEPREFIX=
/.win-b wine program-b.exe , то у каждой программы будет отдельный диск С и отдельный реестр.
Примечание: Префикс Wine не является песочницей! Программа, запущенная в Wine, всё ещё имеет доступ к остальной файловй системе. Например, диск Z: будет отображаться на / вне зависимости от текущего префикса.Чтобы создать нужный префикс без запуска Windows-программы или графического инструмента, выполните:
WINEARCH
Wine по умолчанию запускает 64-битное окружение. Это поведение можно изменить переменной окружения WINEARCH . Переименуйте каталог
/.wine и создайте новое окружение Wine командой $ WINEARCH=win32 winecfg . Это окружение будет 32-битным. Если переменная WINEARCH не указана, то создаётся 64-битное окружение.
WINEARCH можно совместить с WINEPREFIX , чтобы создать отдельные окружения для win32 и win64 :
Также WINEARCH можно совместить с другими программами Wine вроде winetricks (Steam взят для примера):
Узнать архитектуру существующего префикса можно в файле реестра. Следующая команда считывает системный реестр префикса
Графические драйвера
Примечание: После установки нужной библиотеки необходимо перезагрузить X.При запуске приложений в Wine могут возникнуть некоторые проблемы со звуком. Убедитесь, что в winecfg выбрано только одно звуковое устройство.
Установите необходимые вашему аудиодрайверу пакеты:
- Для ALSA установите lib32-alsa-lib и lib32-alsa-plugins .
- Для PulseAudio установите lib32-libpulse .
- Для OSS установите lib32-alsa-oss .
- Играм, в которых используется продвинутая звуковая система (например, TESV: Skyrim), может потребоваться пакет lib32-openal .
Если winecfg по-прежнему не может обнаружить звуковой драйвер (Selected driver: (none)), настройте его через реестр. Например, если не работает микрофон в 32-битном приложении Windows на 64-битной базовой установке wine-1.9.7, получить полный доступ к звуковому аппаратному обеспечению можно следующим образом: откройте regedit, найдите HKEY_CURRENT_USER → Software → Wine → Drivers, добавьте строку с названием Audio и задайте ей значение alsa. Возможно, также поможет пересоздание префикса.
Поддержка MIDI
MIDI — довольно популярная музыкальная система видеоигр 90-х. Если вы пытаетесь запустить старую игру, то "из коробки" звук скорее всего работать не будет.
В Wine имеется отличная поддержка MIDI. Тем не менее, в первую очередь она должна работать на вашей хостовой системе, как объяснено в статье MIDI. Кроме того, убедитесь, что Wine использует правильный MIDI-разъём.
Прочие зависимости
Некоторым приложениям могут потребоваться дополнительные пакеты для различных целей:
- Проигрывание музыки: lib32-mpg123 .
- "Родные" библиотеки обработки изображений: lib32-giflib и lib32-libpng .
- Поддержка шифрования: lib32-gnutls .
- 32-битные видеокодеки: lib32-gst-plugins-base , lib32-gst-plugins-good , lib32-gst-plugins-badAUR и lib32-gst-plugins-uglyAUR .
- NTLM-аутентификация: samba .
Шрифты
Если в приложении Wine шрифты отображаются неразборчиво, проблема может быть в том, что они просто не установлены. Вы можете настроить Wine, чтобы он использовал системные шрифты:
Wine использует FreeType для построения шрифтов, и стандартные настройки FreeType изменились несколько релизов назад. Попробуйте использовать следующее окружение для Wine-программ:
Можно также попробовать установить шрифты Microsoft (TrueType) в префикс Wine. Если это не поможет, попробуйте сначала выполнить winetricks corefonts , а затем, как крайнее средство, winetricks allfonts .
После выполнения этих команд "убейте" все запущенные сервера Wine и выполните winecfg . Шрифты должны быть доступны.
Если шрифты выглядат немного смазанными, импортируйте следующий текстовый файл в реестр Wine с помощью regedit:
Для мониторов с высоким разрешением значения dpi можно задать в winecfg.
Сглаживаение шрифтов
Хороший способ улучшить рендеринг шрифтов в Wine — включить сглаживание ClearType. Следующий скрипт включит режим "Subpixel smoothing (ClearType) RGB":
Иконки рабочего стола
Когда установщик приложения Windows пытается создать ярлык, Wine создает файл .desktop вместо него.
-
Ярлыки рабочего стола сохраняются в каталоге
Пункты меню для утилит Wine
Во-первых, установите любую программу Windows, чтобы Wine создал меню. Затем создайте файлы со следующим содержанием в каталоге
После этого создайте следующий файл в каталоге
Если с этими настройками иконки выглядят уродливо (или не появились вовсе), то их нет среди доступных. Необходимо заменить настройки явным указанием расположения желаемых иконок. Того же можно добиться правым кликом по иконке и изменением настроек. Большой набор иконок для ярлыков можно найти в GNOME-colors.
Удаление пунктов меню
Созданные Wine пункты меню хранятся в каталоге
/.local/share/applications/wine/Programs/ . Если удалить соответствующий программе файл .desktop, то приложение исчезнет из меню.
Кроме того, чтобы удалить нежелательные расширения Wine, выполните следующие команды (источник — сайт Wine):
В KDE, возможно, для полной очистки меню также потребуется удалить файлы wine-*.menu из каталога /.config/menus/ .
Внешний вид
Оформление в стиле XP можно загрузить отсюда. Руководство по установке можно найти здесь. После установки выберите тему оформления в winecfg.
Пользователи Wine Staging могут вместо этого включить опцию Enable GTK3 Theming в разделе Staging winecfg. Будет выбрана текущая GTK-тема.
Печать
Чтобы использовать принтер (локальный или удалённый) с приложениями Wine в win32 prefixes (например, MS Word), установите пакет lib32-libcups , перезагрузите Wine (wineboot) и перезапустите приложение.
Wine также могут потребоваться специальные разрешения (capability) на доступ к сети по протоколу ICMP (пинги) (см. WineHQ FAQ):
Если после этого возникают проблемы (например, при обработке исключений или привилегированных команд), для удаления capability выполните:
Использование
Важно: Не устанавливайте и не запускайте приложения Wine с правами root! Подробнее см. Wine FAQ.Общую информацию об использовании Wine можно найти на странице Wine User's Guide.
Запуск конкретных приложений Windows в Wine описан на странице Wine Application Database (AppDB).
Wayland
В настоящее время Wine не поддерживает Wayland напрямую, но вы можете использовать XWayland.
Некоторые попытки реализовать поддержку Wayland:
Советы и рекомендации
Wineconsole
Часто появляется необходимость запустить .exe-файл, чтобы пропатчить файлы игры, например, добавить поддержку широкоформатного экрана в старую игру. Запуск .exe-файла в Wine обычным способом ни к чему не приведёт. В этом случае откройте терминал и выполните:
Затем перейдите в каталог с .exe-файлом и запустите его.
Winetricks
Winetricks — скрипт, помогающий установить базовые зависимости, необходимые программам Windows. Устанавливаются DirectX 9.x, MSXML (для Microsoft Office 2007 и Internet Explorer), библиотеки Visual Runtime и многое другое.
Графический интерфейс можно установить с пакетом zenity .
Производительность
CSMT — технология Wine, использующая отдельный поток для вызовов OpenGL, что значительно повышает производительность. Начиная с Wine 3.2 CSMT по умолчанию включён. Для более ранних версий Wine его необходимо включить вручную. Для "ванильного" Wine запустите wine regedit и задайте DWORD-значение 0x01 (включено) для HKEY_CURRENT_USER -> Software > Wine > Direct3D > csmt. Для Wine Staging выполните winecfg и включите CSMT на вкладке Staging.
Имейте в виду, что для некоторых приложений CSMT может привести к обратному эффекту — к снижению производительности. В этом случае отключите его вручную, создав/изменив значение в реестре на 0x00 (отключено).
Режим OpenGL в играх
В некоторых играх есть поддержка OpenGL, который может работать лучше, чем стандартный DirectX. Хотя способ включения OpenGL варьируется от приложения к приложению, многие игры используют флаг -opengl :
Разумеется, перед запуском приложения в этом режиме необходимо тщательно изучить его документацию и информацию из базы данных Wine AppDB.
DXVK — новая многообещающая реализация DirectX версий 9, 10 и 11 поверх Vulkan. Значительно повышает производительность и в некоторых случаях обеспечивает даже лучшую совместимость. Battlefield 1, например, работает только под DXVK. С другой стороны, на данный момент DXVK поддерживает не все игры Wine.
Чтобы использовать DXVK, установите пакет dxvk-bin AUR . Команда ниже активирует его для указанного префикса (по умолчанию
Примечание: В Wine версий до 3.5 необходимо настроить поддержку Vulkan вручную, следуя указаниям на GitHub. Важно: DXVK замещает DLL-файлы для DirectX 10 и 11. В многопользовательских онлайн-играх это может быть принято за использование читов, что закончится блокировкой аккаунта. Используйте на свой страх и риск!Gallium Nine
Для открытых драйверов на основе Gallium (в основном карты AMD) существует проект трекера состояний Gallium Direct3D, который ставит целью добиться производительноси, сравнимой с нативными показателями DirectX 9. В большинстве случаев выдаёт вдвое большую производительность, чем стандартный Wine, и меньшее количество визуальных помех. Потреблене времени центрального процессора значительно ниже по сравнению с CSMT.
Чтобы его использовать, установите пакет wine-nine . Это одиночный пакет, подходящий для любой версии Wine. Команда wine ninewinecfg позволяет проверить, включён Gallium Nine или нет.
Удаление ненужных файловых ассоциаций
Wine используется как приложение по умолчанию для большого количества форматов файлов. Некоторые из них, например, vbs или chm , являются специфичными для Windows, и такая привязка вполне логична. С другой стороны, довольно неприятно, когда файл gif , jpeg , txt или js открывается в запущенном в Wine браузере Internet Explorer или редакторе Notepad.
Ассоциации Wine хранятся в каталоге
/.local/share/applications/ в виде файлов wine-extension-расширение.desktop . Удалите те из них, которые не нужны, либо удалите все расширения Wine:
После этого очистите кэш:
В качестве альтернативы можно удалить все файлы, относящиеся к Wine:
После этого тоже обновите кэш, как показано выше.
Имейте в виду, что Wine может создать новые ассоциации и даже пересоздать удалённые, если того потребует какое-нибудь приложение.
Запрет на создание файловых ассоциаций
Примечание: Указанные действия необходимо выполнять для каждого WINEPREFIX, которому вы желаете запретить обновление файловых ассоциаций, за исключением варианта с редактированием файла /usr/share/wine/wine.inf (см. ниже).Данный метод предотвращает создание файловых ассоциаций, но оставляет возможность для создания XDG-файлов .desktop (которые вы видите, например, в меню).
Если вы хотите запретить Wine создавать файловые ассоциации, запустите winecfg и уберите галочку "Manage File Associations" на вкладке Desktop Integration. Подробнее см. Wine FAQ.
Чтобы сделать то же самое, но с помощью реестра, добавьте строку Enable со значением N в
Сначала необходимо создать ключ FileOpenAssociations !
Если вы хотите, чтобы эти настройки автоматически применялись к новым префиксам, отредактируйте файл /usr/share/wine/wine.inf , добавив следующую строку в раздел [Services] :
Предотвратить перезапись изменённых файлов при обновлении пакета можно создав хук pacman, который будет вносить изменения автоматически:
Неявный запуск бинарников Windows
Пакет wine содержит файл binfmt, который позволяет запускать программы Windows напрямую. Например, команда ./myprogram.exe будет запускать программу так же, как wine ./myprogram.exe . Соответствующая системная служба запускается автоматически при старте системы. Если вы ещё не перезагружались после установки Wine, то можете вручную запустить службу systemd-binfmt.service , чтобы она заработала.
Примечание: Убедитесь, что у двоичного файла Windows есть права на исполнение, иначе он не запустится. Например, выполните chmod +x windows-binary .Два монитора с разными разрешениями
Если у вас возникли проблемы с разрешением экрана на втором мониторе, возможно, в системе отсутствует пакет lib32-libxrandr .
Кроме того, установка пакета lib32-libxinerama поможет решить некоторые другие проблемы работы с двумя мониторами в Wine: ненажимаемые иконки и пункты меню, плохая отрисовка интерфейса приложения, зависание курсора мыши и т.п.
Прожиг оптического носителя
Для прожига CD- и DVD-дисков необходимо загрузить модуль ядра sg .
Монтирование образов оптических дисков
Приложения могут проверять наличие оптического диска в дисководе. Иногда это просто проверка присутствия данных, и в этом случае будет достаточно с помощью winecfg настроить определённый путь в файловой системе выступать в качестве привода CD-ROM. Другие приложения могут проверять название носителя и/или серийный номер, и в этом случае потребуется смонтировать соответствующий образ.
Некоторые утилиты для работы с виртуальными дисками, в том числе основанные на fuse, не умеют работать с такими метаданными — например, Acetoneiso. CDEmu, наоборот, работает вполне корректно.
Показ FPS в играх
Wine отслеживает FPS графических приложений, если установлена переменная окружения WINEDEBUG=fps . Количество кадров будет выводиться в stdout. Утилита osd_cat из пакета xosd позволяет отобразить FPS в верхней части экрана поверх окна приложения. См также вспомогательный скрипт.
Отдельная учётная запись для запуска Wine
Поскольку приложения Windows имеют доступ к вашей домашней директории, имеет смысл создать отдельную учётную запись для работы только с Wine.
Первым делом создайте саму учётную запись:
Затем переключитесь в другую виртуальную консоль и запустите оконный менеджер или окружение рабочего стола (или прото читайте дальше).
Чтобы теперь запускать Wine от новой учётной записи, необходимо добавить её в список разрешений X server:
Наконец, можно запускать Wine, передав ему с помощью env необходимые переменные окружения:
Процесс запуска приложений Windows в Wine можно автоматизировать с помощью скрипта:
Теперь приложение Wine запустится следующей командой:
Рекомендуется также запустить winecfg от пользователя Wine, и в окне настроек (раздел "Desktop Integration") убрать привязки ко всем каталогам за пределами домашнего. Так Wine будет иметь доступ только к нему и ни к чему более.
Каталог Temp в tmpfs
По умолчанию Wine записывает временные файлы на физический носитель, но можно использовать для этого файловую систему tmpfs. Удалите текущий каталог для временных файлов и создайте символическую ссылку на новый:
Запрет на установку Mono/Gecko
Если Gecko и/или Mono нет ни в префиксе, ни в системе в целом, Wine будет запрашивать разрешение на скачивание их из сети. Если ни Gecko, ни Mono вам не нужны, то этот диалог можно отключить. Установите переменную окружения WINEDLLOVERRIDES в значение mscoree=d;mshtml=d .
Vulkan
В Wine 3.3 была добавлена поддержка Vulkan. Базовый ICD-загрузчик Vulkan в большинстве приложений работает вполне нормально, но в нём отсутствуют некоторые продвинутые возможности вроде Vulkan layers. Чтобы получить к ним доступ, установите официальный Vulkan SDK (см. шаг 2-4 на GitHub-странице автора патча).
Примечание: ICD-загрузчик Wine был добавлен в версии 3.5, поэтому устанавливать официальный Vulkan SDK нужно только для версий 3.3 и 3.4.Удаление файловых привязок
По соображениям безопасности полезно удалить предустановленные привязки Wine, чтобы приложения Windows не могли быть запущены напрямую из файлового менеджера или браузера (Firefox предлагает открыть EXE-файлы сразу в Wine!).
Чтобы это сделать, добавьте следующие строки в раздел [options] файла /etc/pacman.conf :
Решение проблем
Общие советы по решению возможных проблем можно найти на страницах Wine User's Guide и Wine FAQ (прежде всего в разделе Решение проблем).
Советы для конкретных приложений можно найти в Wine AppDB.
Проблемы с XWayland
Если вы используете Wine в XWayland, опция "Эмуляция виртуального рабочего стола" на вкладке Graphics в winecfg позволяет решить следующие проблемы:
Wine — программа для запуска Windows программ и игр внутри Linux.
История Wine
Первая версия Wine появилась в 1993 году и изначально была разработана для запуска 16-битных приложений Windows 3.1 внутри Linux.
Основателем проекта является Боб Амштадт (Bob Amstadt). С 1994 г проект перешел под управление программиста Александра Джуллиарда (Alexandre Julliard).
Название
Название Wine (W.I.N.E) является рекурсивным акронимом фразы «Wine Is Not an Emulator» — «Вайн это не эмулятор.»
Слово wine в переводе с английского означает вино. По этой причине в терминологии программы используется понятие бутылок (см. ниже). Бутылка (или префикс) — это директория (среда) внутри которой выполняется Windows программа.
Wine это не эмулятор
Wine работает не как эмулятор и не как виртуальная машина, он не эмулирует систему Windows, не создает имитацию Windows и не пытается реализовать ее логику. Вместо этого он на лету выполняет преобразование API-вызовов Windows в POSIX-совместимые вызовы.
То есть это что-то вроде прослойки между приложениями для Windows и системой Linux, которая позволяет Windows программам выполняться так, как если бы они были изначально написаны для Linux.
Wine не создает эмуляцию Windows, вместо этого приложения Windows запускаются прямо внутри текущей операционной системы.
Wine работает не только под Linux, но и под другие POSIX-совместимые операционные системы — macOS и *BSD.
Wine также работает под Windows. В Windows его обычно используют для того, чтобы запускать старые программы в современных версиях Windows.
Среда Wine
Для текущего пользователя Wine создает в его домашней директории каталог .wine , в котором создается структура директорий аналогичная Windows.
Внутри каталога drive_c содержатся директории Program Files , ProgramData , windows , users . Там же хранится реестр.
Внутри директории windows размещаются DLL файлы (библиотеки). Это не библиотеки из Windows. Они были написаны с нуля на основе документации к Windows API и фактически реализуют функции оригинальных библиотек, но для Linux.
При работе Windows приложениям могут потребоваться дополнительные DLL библиотеки, которые не предоставлены Wine. В таком случае могут использоваться оригинальные Windows-версии таких библиотек.
Директория .wine называется «префиксом» или «бутылкой». Для некоторых программ может потребоваться создание отдельного префикса, то есть для ее работы нужны будут какие-то специфические настройки и она будет работать в среде другой директории отличной от
/.wine . Можно создавать сколько угодно префиксов (бутылок).
Как запускать программы Windows через Wine
Чтобы запустить программу, написанную для Windows, в простейшем случае достаточно выполнить команду:
Через Wine также можно запускать установщики Windows приложений и устанавливать их прямо в Linux.
Список программ и игр, работающих через Wine
Для каждого приложения можно получить информацию об особенностях установки, запуска и настройки данного приложения через Wine, о проблемах и багах, с которыми можно столкнуться.
База данных постоянно пополняется. В ней насчитывается более 26000 приложений. Введутся списки самых популярных приложений, они делятся на Платиновые, Золотые и Серебряные. Вот некоторые из самых популярных программ и игр, работающих через Wine (конкретную версию уточняйте в базе данных AppDB):
- Adobe Animate
- Adobe Photoshop
- Microsoft Office
- Total Commander
- Lingvo
- 1C:Предприятие
- Гарант
- КонсультантПлюс
- Final Fantasy XI Online
- StarCraft
- Warcraft III
- World of Warcraft
- Counter-Strike: Source
- EVE Online
- Half-Life 2
- Magic: The Gathering Online
- The Sims 3
- И многие многие другие.
Использование отдельных префиксов (бутылок)
Как было сказано выше, некоторые программы должны запускаться внутри своей среды, то есть должны быть изолированы от других приложений. Для этого им нужен отдельный префикс (отдельная директория среды, в которой они будут работать).
Префикс задается переменной WINEPREFIX .
Сначала создадим новый префикс. Выполняем команду:
Теперь выполняем саму программу и указываем для нее новый префикс:
Установка недостающих библиотек (утилита Winetricks)
Очень часто для работы программ требуются дополнительные компоненты (библиотеки, шрифты), которых нет в Wine. Их можно установить самостоятельно, но это может стать очень трудоемким процессом, так как придётся искать и устанавливать каждый компонент вручную.
Для автоматического поиска и установки библиотек была создана специальная вспомогательная утилита Winetricks.
Winetricks — это графическая утилита, которая умеет автоматически скачивать и устанавливать необходимые компоненты. Также, Winetricks поддерживает автоматическую загрузку и установку некоторых игр и программ (для некоторых требуется наличие оригинального диска).
Нужно понимать, что Winetricks не является таблеткой от всех проблем и всегда могут потребоваться компоненты, которые Winetricks не поддерживает.
При первом запуске Winetricks предложит установить некоторые из часто используемых компонентов.
Заключение
На нашем сайте вы также можете ознакомиться со следующими материалами:
Установка
Установка Wine в Ubuntu Linux и Linux Mint через PPA репозиторий
Wine есть в штатных репозиториях Ubuntu, но там может содержаться не самая свежая версия, поэтому рекомендуется устанавливать программу из PPA-репозитория, предлагаемого разработчиками.
Во время установки Wine дополнительно устанавливается довольно много других зависимостей (это может быть более 100 дополнительных компонентов).
Установка Wine из штатных репозиториев Ubuntu (не самая свежая версия)
Для установки Wine из штатных репозиториев Ubuntu, выполните команду:
Для установки Winetricks выполните команду:
Установка Wine из PPA репозитория (рекомендуется)
Процесс установки Wine в Ubuntu Linux описан в официальном руководстве. Рассмотрим, как установить Wine в Ubuntu Linux, используя PPA репозиторий.
Если у вас 64-х битная версия системы, то нужно разрешить использование 32-х битной архитектуры. Выполняем команду:
Устанавливаем ключ для репозитория — выполняем команды:
Добавляем сам репозиторий. Выберите команду для вашего дистрибутива:
Далее обновляем информацию о пакетах:
Устанавливаем Wine. Для установки стабильной версии выполняем команду:
Для установки самой свежей, но возможно не очень стабильной версии используется команда:
Читайте также: