Как запустить .exe файл в Linux
Linux — это отличная альтернатива операционной системы Windows, однако, использование программ, предназначенных для Windows, может представлять некоторые сложности для новых пользователей. Одной из таких сложностей является запуск exe-файлов в Linux. В этом подробном руководстве мы разберем все детали запуска exe-файлов в Linux и предоставим вам несколько способов справиться с этой задачей.
Первый способ — использовать программу Wine. Это свободное программное обеспечение, которое позволяет запускать exe-файлы в Linux. Wine имитирует среду Windows, позволяя приложениям, разработанным для Windows, работать в Linux. Чтобы использовать Wine, вам необходимо сначала установить его на свой компьютер. Затем вы можете запустить exe-файл, дважды щелкнув на нем или открыв его через Wine.
Еще одним способом является использование виртуальной машины. Виртуальная машина — это программное обеспечение, которое эмулирует физический компьютер с операционной системой. Вы можете установить Windows внутри виртуальной машины на своем Linux-компьютере и использовать ее для запуска exe-файлов. Однако этот способ требует больше ресурсов компьютера и может быть более сложным для новых пользователей.
Наконец, вы всегда можете попробовать альтернативные программы, доступные для Linux, которые имеют аналогичные функции. Некоторые программы, разработанные специально для Linux, могут обеспечить аналогичный функционал, что и запуск exe-файлов. Поэтому перед использованием Wine или виртуальной машины, рекомендуется искать альтернативные программы, чтобы избежать проблем с совместимостью и улучшить производительность вашей системы.
Методы запуска exe в Linux
Использование эмулятора Wine
Один из наиболее популярных способов запуска exe-файлов в Linux — это использование эмулятора Wine. Wine позволяет запускать Windows-приложения в Linux без необходимости установки операционной системы Windows. Чтобы установить Wine, выполните следующую команду:
sudo apt-get install wine
После установки Wine вы можете запустить exe-файл, используя следующую команду:
Учтите, что не все exe-файлы будут корректно работать в Wine, так как многие из них зависят от специфических функций операционной системы Windows.
Использование эмулятора CrossOver
Другой популярный вариант для запуска exe-файлов — использование эмулятора CrossOver. CrossOver является коммерческим продуктом, основанным на Wine, и предлагает дополнительную поддержку и улучшенную совместимость с Windows-приложениями. Чтобы установить CrossOver, следуйте инструкциям на официальном сайте.
После установки CrossOver вы можете запустить exe-файл, щелкнув правой кнопкой мыши на exe-файле и выбрав «Открыть с помощью CrossOver».
Использование возможностей виртуализации
Третий метод для запуска exe-файлов в Linux — использование возможностей виртуализации, таких как VirtualBox или VMware. Эти программы позволяют установить операционную систему Windows в виртуальной машине, что позволяет запускать exe-файлы внутри этой виртуальной среды. Однако, установка и настройка виртуальной машины может быть более сложной и требует больше ресурсов компьютера.
Смотрите также: Ключи объекта в Javascript
Важно отметить, что запуск exe-файлов в Linux не всегда гарантирует 100% совместимость и производительность, так как они разработаны для работы в операционной системе Windows. Поэтому перед запуском exe-файла, рекомендуется проверить его совместимость с выбранным методом.
В зависимости от вашего конкретного случая, один из этих методов может оказаться наиболее подходящим для вас. Экспериментируйте и выбирайте наиболее удобный вариант для запуска exe-файлов в Linux.
Подготовка системы для запуска exe файлов
Перед тем, как запускать exe файлы в Linux, необходимо выполнить ряд действий для подготовки системы. Далее представлены основные шаги, которые нужно выполнить:
1. Установка Wine
Wine — это программное обеспечение, которое позволяет запускать на компьютере с Linux операционные системы Windows. Для установки Wine выполните следующие действия:
- Откройте терминал.
- Введите команду для установки Wine:
sudo apt install wine
2. Установка необходимых компонентов
Для запуска некоторых exe файлов могут потребоваться дополнительные компоненты Windows. Для установки этих компонентов выполните следующие действия:
- Откройте терминал.
- Введите команду для установки winetricks, инструмента для установки компонентов Windows:
sudo apt install winetricks
winetricks dotnet40
После выполнения этих двух шагов ваша система будет готова к запуску exe файлов с помощью Wine. Обратите внимание, что не все exe файлы могут быть успешно запущены на Linux, и чтобы достичь наилучшей совместимости, рекомендуется использовать последнюю версию Wine.
Использование компатибильности Windows в Linux для запуска exe
Компьютеры на операционной системе Linux могут иметь ограниченную поддержку для запуска файлов .exe, которые предназначены для операционных систем Windows. Однако, существуют некоторые способы использования компатибильности Windows в Linux для запуска таких файлов. Рассмотрим несколько вариантов:
- Wine: Wine — это программное обеспечение с открытым исходным кодом, которое позволяет запускать приложения, созданные для Windows, на Linux. Он создает среду выполнения Windows, которая позволяет файлам .exe работать в Linux. Для установки и использования Wine, вам нужно будет следовать инструкциям на официальном сайте проекта Wine.
- PlayOnLinux: PlayOnLinux — это поддерживаемая компанией Wine программа, которая облегчает установку и запуск игр и приложений Windows на Linux. Она предлагает простой и понятный интерфейс, который позволяет устанавливать и настраивать программы Windows. PlayOnLinux также интегрируется с Wine, поэтому необходимо установить их оба.
- CrossOver: CrossOver — это коммерческий продукт, основанный на проекте Wine. Он предлагает улучшенную совместимость и поддержку для многих приложений Windows. CrossOver поддерживает большое количество программ и игр, даже те, которые не работают нормально с помощью других решений на основе Wine.
- VirtualBox: VirtualBox — это программное обеспечение для виртуализации, которое позволяет запускать виртуальные машины с различными операционными системами, включая Windows. Вы можете установить Windows как гостевую операционную систему на виртуальной машине, а затем запустить любые файлы .exe на этой виртуальной машине. Однако, для использования VirtualBox, вам нужно будет иметь лицензию Windows и установочный образ операционной системы Windows.
Смотрите также: Как начать программировать: советы и рекомендации для новичков
Использование компатибильности Windows в Linux для запуска файлов .exe может быть полезным для пользователей, которым требуется доступ к приложениям или играм, доступным только на Windows. Однако, стоит отметить, что не все программы будут работать идеально или вообще работать с помощью этих методов. Поэтому перед использованием любого из этих методов рекомендуется посетить форумы и сообщества, где пользователи обсуждают совместимость и проблемы при запуске конкретных программ.
Виртуальные машины для запуска exe в Linux
Если у вас возникла необходимость запустить программу .exe в операционной системе Linux, вы можете воспользоваться виртуальными машинами. Виртуальные машины позволяют запустить другую операционную систему на вашем компьютере, в том числе и Windows, чтобы запустить программы, которые несовместимы с Linux.
Существует несколько популярных виртуальных машин, среди которых:
- VirtualBox: бесплатная и простая в использовании виртуальная машина, поддерживающая запуск программ под Windows.
- VMware: мощная платная виртуальная машина, которая также позволяет запускать Windows и другие операционные системы.
- QEMU: открытая виртуальная машина, которая поддерживает запуск приложений Windows через эмуляцию аппаратных средств.
Чтобы запустить .exe-файл через виртуальную машину, вам потребуется:
- Установить виртуальную машину на ваш компьютер.
- Установить операционную систему, с которой совместим ваш .exe-файл, в виртуальную машину.
- Запустить виртуальную машину и выполнить .exe-файл в ней.
При использовании виртуальных машин не забывайте о ресурсах вашего компьютера. Запуск виртуальной машины может потребовать больше оперативной памяти и процессорного времени, поэтому важно убедиться, что ваш компьютер соответствует требованиям виртуальной машины.
В целом, использование виртуальных машин является удобным способом запустить .exe-файлы в Linux, особенно если у вас нет возможности или желания устанавливать другую операционную систему на свой компьютер. Благодаря виртуальным машинам, вы можете получить доступ к программам, которые ранее были недоступны для вас.
Смотрите также: Основы программирования на Python: где читать
Wine: главный инструмент для запуска exe в Linux
Для установки Wine на Linux, вам необходимо выполнить следующие шаги:
- Откройте терминал и введите команду sudo apt update, чтобы обновить список пакетов.
- Затем введите команду sudo apt install wine, чтобы установить Wine.
- Дождитесь завершения установки.
После успешной установки вы можете запускать exe-файлы с помощью Wine. Для этого выполните следующие действия:
- Откройте терминал и перейдите в каталог, содержащий exe-файл.
- Введите команду wine имя_файла.exe, где имя_файла.exe — название вашего исполняемого файла.
Пример:
Предположим, что у вас есть exe-файл с названием myprogram.exe, расположенный в директории ~/Downloads. Выполните следующие шаги:
- Откройте терминал.
- Введите команду cd ~/Downloads, чтобы перейти в каталог Downloads.
- Введите команду wine myprogram.exe, чтобы запустить exe-файл.
Wine позволяет запускать множество приложений с разными требованиями и сложностью. Однако, не все exe-файлы могут быть успешно запущены в Wine, поэтому перед использованием рекомендуется проверить совместимость вашего приложения с Wine на официальном сайте проекта.
Таблица: основные команды Wine
| Команда | Описание |
|---|---|
| wine имя_файла.exe | Запуск exe-файла |
| winecfg | Открытие окна настроек Wine |
| wine uninstaller | Запуск инсталлятора Wine для удаления приложений |
Вот и все! Теперь у вас есть основные знания о Wine, который является главным инструментом для запуска exe-файлов в Linux. Успешного использования!
Вопрос-ответ:
Как запустить exe файл на Linux?
Для запуска exe файла на Linux необходимо использовать программа Wine.
Что такое Wine?
Wine — это программное обеспечение, которое позволяет запускать Windows приложения на Linux и других операционных системах POSIX.
Как установить Wine на Linux?
Для установки Wine на Linux вам необходимо открыть терминал и ввести команду «sudo apt-get install wine». После этого следуйте инструкциям на экране для завершения установки.
Как запустить exe файл с помощью Wine?
Чтобы запустить exe файл с помощью Wine, откройте терминал, перейдите в папку с exe файлом и введите команду «wine имя_файла.exe».
Есть ли альтернативы Wine для запуска exe файлов на Linux?
Да, существуют альтернативные программы, такие как Crossover и PlayOnLinux, которые также позволяют запускать exe файлы на Linux.
Как запустить exe-файл в Linux?
Для запуска exe-файла в Linux необходимо использовать программу под названием Wine. Wine — это совместимая с Windows среда, которая позволяет запускать программы Windows на операционных системах Linux. Для установки Wine выполните следующий команды:
Как запустить exe на linux

Рано или поздно может понадобиться запустить exe файл на Linux. В этой статье расскажем, как это сделать.
Для операционной системы Linux написано огромное количество программ, для решения одной определенной задачи, может быть даже несколько десятков программ. Но такая тенденция наблюдается только для широко распространенных задач, что же касается специализированных программ и игр, то тут ситуация совсем иная.
Программ, для решения узкоспециализированных задач, например, в той же сфере СЕО для Linux попросту нет, а игры начали появляться только последние несколько лет. Были и раньше простенькие игры с открытым исходным кодом, но популярные игры, класса ААА начали появляться только тогда, когда этой платформой заинтересовалась Valve. Но до сих пор ситуация с играми обстоит не так, как хотелось бы. Поэтому и возникает необходимость установки Windows программ в Linux.
Немного теории
Windows программы не могут запускаться просто двойным щелчком по исполняемому файлу. Формат исполняемых файлов Linux очень сильно отличается от Windows. Поэтому для их запуска необходимо использовать специальное программное обеспечение – wine. Название Wine образовано с помощью, почему-то популярного в мире свободного программного обеспечения способа – рекурсивный акроним, и расшифровывается как Wine is not emultor. И это правда, wine не является эмулятором.
Это программная оболочка, которая преобразует системные вызовы Windows программ в вызовы функций операционной системы Linux. Таким образом, wine представляет из себя прослойку между Windows программой и операционной системой Linux вместе с ее ядром и библиотеками.
Чтобы понять как работает Wine, нужно сначала сказать несколько слов о ядре Windows. У Windows, так же как и у Linux есть ядро. Как вы знаете ядро Linux состоит из одного файла и находится в папке boot. Ядро Windows совсем другое, по сути это набор dll библиотек, которые расположены в папке C:windowssystem32. Поэтому нам, чтобы заставить Windows программы работать в Linux достаточно реализовать dll библиотеки, которые нужны программе, так чтобы они вызывали необходимые нам функции из системы linux, что собственно и делает Wine. Но проект развивается очень медленно и разработчики не успевают реализовать все функции из системных библиотек Windows, поэтому работают далеко не все программы, особенно новые.
Популярные программы в Wine запускаются легко, и без дополнительных настроек. Но дело в том, что для решения популярных и востребованных задач в Linux есть достаточно альтернатив, а запускать нам придется специализированные программы и игры, требующие серьезных компонентов, еще не написанных в Wine. Вот тут и всплывает недоработанность этой программы. Но есть выход, его мы и рассмотрим дальше.
Основы использования Wine
Все файлы программ wine, установленные программы, библиотеки, файлы реестра, конфигурационные файлы находятся в домашнем каталоге, а точнее, в ~/.wine.
Поскольку для разных программ, понадобится разная архитектура библиотек и нужно будет подменять на оригинальные библиотеки от windows разные файлы была придумана такая возможность, как префиксы.
Папка ~/.wine это префикс, но мы можем создавать для каждой новой программы свой префикс и она будет работать только с ним. Чтобы задать префикс, с которым нужно работать wine используется переменная окружения WINEPREFIX, например:
Для разных программ может потребоваться различная архитектура системы, wine может запускать и 64 битные программы, но многим для правильной работы нужна архитектура х86.
Чтобы задать архитектуру используйте переменную WINEARCH. Например, для х86:
Также не создавайте папку для нового префикса с помощью mkdir или файлового менеджера, пусть программа сама создаст эту папку при своем первом запуске.
Прослойка совместимости Wine поддерживает далеко не все программы, чтобы проверить поддерживается ли программа Wine вы можете воспользоваться сайтом appdb.winehq.org здесь есть поиск и перечислены все поддерживаемые и не очень программы для Linux.

Запуск exe программ в Linux с помощью wine
Первым делом, надо посмотреть страницу программы на сайте appdb.winehq.com. Здесь есть поиск, поэтому вы можете попытаться искать нужную программу. Например, я хочу установить довольно популярную программу Notepad++. Cначала надо посмотреть поддерживается ли она Wine. Для этого на сайте есть поиск:

На странице программы есть версия Wine, с которой она была протестирована, версия тестируемой программы, а также оценка. Оценка может быть Platinum, Gold, Silver или ниже, она зависит от того насколько хорошо программа работает:

Как видите, программа тестировалась с версией wine 5.0 и работала довольно неплохо. К тому же на странице есть ссылка на загрузку программы, так как она бесплатна. Если при запуске программы возникают сложности, то на странице winehq обычно сообщается что надо сделать чтобы программу всё-таки запустить.
Если вам нужно запустить программу, полностью поддерживаемую Wine, например, проводник или notepad, достаточно выполнить:
$ wine /адрес/файла/программы.exe
Например, для программы Notepad++ надо выполнить:
Здесь я использую portable версию, её надо перед этим скачать и распаковать. Как видите, программа полностью работает:

Но как я уже говорил, нам придется запускать мало таких программ, большинство из них будут требовать функциональности, которая ещё не реализован в wine. Тогда нам придется заменить библиотеки Wine, на оригинальные библиотеки Windows.
Конечно, есть оболочки для Wine, которые автоматизируют этот процесс, например, Crossover, PlayOnLinux, Lutris и другие. Но мы рассмотрим ручной вариант.
Для установки компонентов Windows в wine существует специальный инструмент – winetricks. Устанавливать его лучше из сайта программы, так версия будет новее:
wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
chmod +x winetricks
Чтобы установить нужный компонент достаточно передать имя этого компонента:
$ winetricks имя_компонента
С установкой компонентов более-менее понятно, но как узнать какие компоненты нужны? Скорее всего, вашу программу уже пытались устанавливать и другие пользователи нашли решение проблемы. Поэтому воспользуйтесь поиском Google для того, чтобы найти способы установки программы. Также очень полезным будет сайт appdb.winehq.org.
Давайте рассмотрим пример. Наберите в поиске по appdb.winehq.com программу Internet Explorer 8, это последняя версия программы, которую можно установить в Linux. Как видите, здесь бронза, значит программа поддерживается:

На её странице сообщается, что программа работает, но для её работы надо установить компонент msxml и urlmon:
winetricks msxml6 urlmon
После установки этих пакетов программа надо добавить ключ в реестр, который описан на странице winehq. После этого установщик запуститься и установит программу.
После установки вы можете её запустить:

Выглядит всё не очень, но зато работает. Инструкции не обязательно искать только на winehq, это могут быть различные форумы, блоги и так далее.
Остается вопрос, что же делать, если инструкций нет, информации минимум, а нужно чтобы программа работала. Мы можем анализировать вывод Wine при запуске программы. Причем нас будут интересовать не все сообщения из лога программы, а только последние, именно то что вызвало ошибку. Например если программа вывела:
fixme:richedit:ITextRange_fnEndOf (0xa04410)->(6 0 (nil)): stub
fixme:richedit:ITextRange_fnEndOf (0xa04410)->(6 0 (nil)): stub
fixme:richedit:ITextRange_fnEndOf (0xa04410)->(6 0 (nil)): stub
Осталось понять, что такое richedit, и Microsoft TechNet нам любезно сообщает что это их API и состоит оно из Riched32.dll, это последняя версия, но раньше это была riched20.dll, уже понимаете какие библиотеки нужны?
Их можно установить с помощью winetricks, но это делать необязательно, можно и вручную. Скачайте библиотеки, найти их не составит труда с помощью Google. Только ищите версию для Windows XP.
Копируем библиотеку в наш префикс, в папку system32:
cp ~/Загрузки/riched32.dll ~/program/drive_c/windows/system32/
cp ~/Загрузки/riched20.dll ~/program/drive_c/windows/system32/
Для 64 битных библиотек используется папка syswow64, а поскольку мы указали архитектуру 32 бит нужно и библиотеки использовать соответствующие. Затем запустите winecfg и на вкладке библиотеки, в поле новое замещение для библиотеки наберите *riched32, затем добавить и *riched20 и опять добавить:

Все, теперь можете пробовать запускать программу. Если программа снова падает с ошибкой, смотрите дальше логи и ищите библиотеки, которых ей не хватает.
Таким образом, вы можете заменить много библиотек Wine. Можно запустить практически любую программу, написанную несколько лет назад и не требующую сверх новых технологий. Достаточно только заменить нужные библиотеки. Вы можете не только использовать winetricks или копировать библиотеки из интернета, но и брать их прямо из Windows. Точно не стоит заменять gdi32.dll, kernel32.dll, и user32.dll – эти библиотеки реализуют функции ядра Windows на самом низком уровне, и если их заменить, это только нарушит работу Wine. Наверное, есть и другие библиотеки, которые нельзя заменять, но это вычисляется только путем экспериментов.
Упрощённая установка exe в Linux
Вариант, который мы рассмотрели выше слишком сложный и не очень то подходит для новичков. Специально для таких ситуаций были придуманы различные программные решения вроде PlayOnLinux или CrossOver. Это оболочки над wine, которые уже знают какие библиотеки надо ставить для той или иной программы. Вы просто выбираете программу, выбираете установщик, а дальше программа сделает всё за вас сама.
Утилита Crossover поддерживает множество программ и работают они довольно неплохо, но единственный минус этой программы в том, что она платная. Программа PlayOnLinux бесплатная, но поддерживает намного меньше программ.
Запуск Windows программ в виртуальной машине
Если ни один из перечисленных выше способов вам не помог, осталось только последнее решение. Оно поможет, при условии, что у вас мощный компьютер. Вы можете установить виртуальную машину VirtualBox, затем установить туда Windows и уже там запускать вашу программу. Можно пойти ещё дальше и сделать из старого компьютера сервер, на котором будет запущена Windows, к которой вы сможете подключаться по VNC или RDP и делать там всё, что угодно. Это не совсем способы запуска exe в Linux, однако это решение будет работать почти всегда, где не будет работать wine.
Выводы
Теперь вы знаете как запустить exe на Linux. Не пренебрегайте инструментами упрощения установки вроде PlayOnLinux. Они очень сильно экономят ваше время, так как имеют уже готовые профили для многих программ. Экспериментируйте и пусть ваши программы работают без ошибок!
Запуск EXE-файлов в Linux
Запуск EXE-файлов в Linux — задача несложная, однако небольшие трудности заключаются в поиске инструментов, позволяющих справиться с этим. Популярной программой является Wine, и ее аналогов почти нет, а существующие неизвестны практически никому. Поэтому в сегодняшней статье мы поговорим именно об этом решении. Начать стоит с его добавления в дистрибутив, поскольку по умолчанию Wine отсутствует в любой сборке ОС, основанной на Linux.
Способ 1: Менеджер приложений
Существует несколько доступных вариантов инсталляции Wine. Первый подразумевает использование менеджера приложений, который встроен в популярные дистрибутивы, основанные на Debian или RedHat. В первую очередь рассмотрим именно этот вариант, а осуществляется поставленная цель так:
- Откройте основное меню, кликнув по соответствующей кнопке, и запустите оттуда «Менеджер приложений».

- Отыщите кнопку поиска, чтобы открыть строку для ввода названия программы.

- Напишите Wine и опуститесь вниз по списку, чтобы найти подходящий вариант.

- На странице программного обеспечения вас интересует кнопка «Установить».

- Для начала этой процедуры придется подтвердить подлинность учетной записи, введя пароль.

- Ожидайте завершения инсталляции. Данная операция займет несколько минут, поскольку Wine является объемным приложением.

- После нажмите на кнопку «Запустить», чтобы выполнить предварительную конфигурацию.

Сейчас давайте приступим к рассмотрению альтернативного варианта инсталляции, если этот вам не подходит, а о предварительной настройке установленного инструмента поговорим в отдельном шаге данного материала.
Способ 2: Официальные репозитории
Как известно, программы в «Менеджере приложений» находятся в официальных репозиториях, а принцип их установки основан на терминальных командах. Именно их и следует задействовать в тех случаях, когда нет возможности открыть решение с GUI или оно попросту отсутствует в используемом дистрибутиве. Не переживайте, управление консолью не является чем-то сложным, в чем и удостоверимся далее.
- Запустите «Терминал» удобным для вас образом, например, через меню приложений или горячую клавишу Ctrl + Alt + T.

- В появившейся строке введите sudo apt install wine-stable . Если вы используете дистрибутив, основанный, например, на RedHat, следует заменить пакетный менеджер APT на установленный в текущей сборке. Это может быть, например, YUM или Pacman.

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

- Вы будете уведомлены об увеличении количества занятого пространства. Подтвердите это сообщение, выбрав вариант Д.

- Ожидайте окончания инсталляции. Во время этого не закрывайте «Терминал», иначе весь процесс будет сброшен.

На этом инсталляция завершена. Имеются еще и другие альтернативные методы добавления Wine в операционную систему, но их детальный разбор сейчас не имеет смысла, поэтому перемещаемся к следующему этапу.
Шаг 2: Первый запуск и настройка Wine
К счастью, большинство параметров рассматриваемой программы уже настроены автоматически, а недостающие компоненты так же самостоятельно загружаются. Однако юзеру все-таки придется выполнить несколько действий перед переходом к запуску EXE-файлов.
- Запустите софт, например, через «Менеджер приложений» или введя его название в консоли.

- Дождитесь завершения обновления конфигурации. Во время этого на экране будут появляться сообщения о надобности инсталляции дополнительных компонентов, включая .NET Framework и Gecko.

- После этого отобразится графическое меню с пользовательской конфигурацией. Здесь присутствуют детальные описания каждого пункта на русском языке, поэтому мы предлагаем разобраться с этим самостоятельно. Связано это и с тем, что все параметры устанавливаются по желанию пользователей.

На этом процедура конфигурации успешно завершена, а значит, можно переходить к непосредственному запуску имеющихся EXE-файлов.
Шаг 3: Запуск EXE-файлов через Wine
Перед началом выполнения поставленной задачи хотим отметить, что не стоит рассматривать Wine как полноценное средство работы с программами для Windows. Конечно, он является эмулятором, но потребление системных ресурсов при запуске софта поднимается в несколько раз, а также могут отсутствовать какие-либо опции, изначально работающие в Windows. Далее мы расскажем о более подходящих решениях для использования ПО в Linux, а сейчас давайте все-таки разберемся с выполнением EXE-объектов.
- Откройте файловый менеджер и переместитесь к расположению необходимого файла.

- Щелкните по нему правой кнопкой мыши и в контекстном меню выберите пункт «Открыть в другом приложении».

- Появится отдельное окно «Выбрать приложение». Здесь вас интересует пункт «Wine — загрузчик Windows программ».

- Если это уже полноценный софт, он откроется в новом окне и им можно управлять. В случае взаимодействия с инсталлятором начните стандартную операцию установки.

- Дождитесь окончания этой операции. Она может занять много времени, поскольку процессор в большинстве ситуаций нагружается на максимум.

- После этого вы можете запустить программу через значок на рабочем столе, графический интерфейс Wine или меню приложений.

Как уже было сказано ранее, запуск EXE-файлов — не лучший способ взаимодействовать с программами в Linux. Сейчас многие разработчики создают версии, корректно функционирующие в разных дистрибутивах, однако часто их нет в официальных репозиториях, то есть скачать из менеджеров приложений такой софт не получится. Приходится скачивать отдельные DEB или RPM-пакеты либо же вообще вручную распаковывать архивы. Не потрудитесь отыскать сборку требуемого софта для вашего дистрибутива, а затем установите ее, используя инструкции из приведенной далее статьи.
Это было все, что мы хотели рассказать о запуске ПО для Windows в Linux. Как видно, лучшее решение всего одно, поэтому его и задействуют абсолютно все пользователи, желающие реализовать данную цель. Остается только следовать инструкциям, чтобы без каких-либо проблем открыть EXE-элемент и начать взаимодействие с ним.
Как запустить exe на Linux
Рано или поздно может понадобиться запустить программы Windows на Linux. Для операционной системы Linux написано огромное количество программ, для решения одной определенной задачи, может быть даже несколько десятков программ. Но такая тенденция наблюдается только для широко распространенных задач, что же касается специализированных программ и игр, то тут ситуация совсем иная.
Программ, для решения узкоспециализированных задач, например, в той же сфере СЕО для Linux попросту нет, а игры начали появляться только последние несколько лет. Были и раньше простенькие игры с открытым исходным кодом, но популярные игры, класса ААА начали появляться только тогда, когда этой платформой заинтересовалась Valve. Но до сих пор ситуация с играми обстоит не так, как хотелось бы. Поэтому и возникает необходимость установки Windows программ в Linux.
Немного теории
Windows программы не могут запускаться просто двойным щелчком по исполняемому файлу. Формат исполняемых файлов Linux очень сильно отличается от Windows. Поэтому для их запуска необходимо использовать специальное программное обеспечение — wine. Название Wine образовано с помощью, почему-то популярного в мире свободного программного обеспечения способа — рекурсивный акроним, и расшифровывается как Wine is not emultor. И это правда, wine не является эмулятором.
Это программная оболочка, которая преобразует системные вызовы Windows программ в вызовы функций операционной системы Linux. Таким образом, wine представляет из себя прослойку между Windows программой и операционной системой Linux вместе с ее ядром и библиотеками.
Чтобы понять как работает Wine, нужно сначала сказать несколько слов о ядре Windows. У Windows, так же как и у Linux есть ядро. Как вы знаете ядро Linux состоит из одного файла и находится в папке boot. Ядро Windows совсем другое, по сути это набор dll библиотек, которые расположены в папке C:\windows\system32. Поэтому нам, чтобы заставить Windows программы работать в Linux достаточно реализовать dll библиотеки, которые нужны программе, так чтобы они вызывали необходимые нам функции из системы linux, что собственно и делает Wine. Но проект развивается очень медленно и разработчики не успевают реализовать все функции из системных библиотек Windows, поэтому работают далеко не все программы, особенно новые.
Популярные программы в Wine запускаются легко, и без дополнительных настроек. Но дело в том, что для решения популярных и востребованных задач в Linux есть достаточно альтернатив, а запускать нам придется специализированные программы и игры, требующие серьезных компонентов, еще не написанных в Wine. Вот тут и всплывает недоработанность этой программы. Но есть выход, его мы и рассмотрим дальше.
Основы использования Wine
Все файлы программ wine, установленные программы, библиотеки, файлы реестра, конфигурационные файлы находятся в домашнем каталоге, а точнее, в ~/.wine.
Поскольку для разных программ, понадобится разная архитектура библиотек и нужно будет подменять на оригинальные библиотеки от windows разные файлы была придумана такая возможность, как префиксы.
Папка ~/.wine это префикс, но мы можем создавать для каждой новой программы свой префикс и она будет работать только с ним. Чтобы задать префикс, с которым нужно работать wine используется переменная окружения WINEPREFIX, например:
Для разных программ может потребоваться различная архитектура системы, wine может запускать и 64 битные программы, но многим для правильной работы нужна архитектура х86.
Чтобы задать архитектуру используйте переменную WINEARCH. Например, для х86:
Также не создавайте папку для нового префикса с помощью mkdir или файлового менеджера, пусть программа сама создаст эту папку при своем первом запуске.
Прослойка совместимости Wine поддерживает далеко не все программы, чтобы проверить поддерживается ли программа Wine вы можете воспользоваться сайтом appdb.winehq.org здесь есть поиск и перечислены все поддерживаемые и не очень программы для Linux.

Запуск exe программ в Linux с помощью wine
Первым делом, надо посмотреть страницу программы на сайте appdb.winehq.com. Здесь есть поиск, поэтому вы можете попытаться искать нужную программу. Например, я хочу установить довольно популярную программу Notepad++. Cначала надо посмотреть поддерживается ли она Wine. Для этого на сайте есть поиск:

На странице программы есть версия Wine, с которой она была протестирована, версия тестируемой программы, а также оценка. Оценка может быть Platinum, Gold, Silver или ниже, она зависит от того насколько хорошо программа работает:

Как видите, программа тестировалась с версией wine 5.0 и работала довольно неплохо. К тому же на странице есть ссылка на загрузку программы, так как она бесплатна. Если при запуске программы возникают сложности, то на странице winehq обычно сообщается что надо сделать чтобы программу всё-таки запустить.
Если вам нужно запустить программу, полностью поддерживаемую Wine, например, проводник или notepad, достаточно выполнить:
$ wine /адрес/файла/программы.exe
Например, для программы Notepad++ надо выполнить:
Здесь я использую portable версию, её надо перед этим скачать и распаковать. Как видите, программа полностью работает:

Но как я уже говорил, нам придется запускать мало таких программ, большинство из них будут требовать функциональности, которая ещё не реализован в wine. Тогда нам придется заменить библиотеки Wine, на оригинальные библиотеки Windows.
Конечно, есть оболочки для Wine, которые автоматизируют этот процесс, например, Crossover, PlayOnLinux, Lutris и другие. Но мы рассмотрим ручной вариант.
Для установки компонентов Windows в wine существует специальный инструмент — winetricks. Устанавливать его лучше из сайта программы, так версия будет новее:
wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
chmod +x winetricks
Чтобы установить нужный компонент достаточно передать имя этого компонента:
$ winetricks имя_компонента
С установкой компонентов более-менее понятно, но как узнать какие компоненты нужны? Скорее всего, вашу программу уже пытались устанавливать и другие пользователи нашли решение проблемы. Поэтому воспользуйтесь поиском Google для того, чтобы найти способы установки программы. Также очень полезным будет сайт appdb.winehq.org.
Давайте рассмотрим пример. Наберите в поиске по appdb.winehq.com программу Internet Explorer 8, это последняя версия программы, которую можно установить в Linux. Как видите, здесь бронза, значит программа поддерживается:

На её странице сообщается, что программа работает, но для её работы надо установить компонент msxml и urlmon:
winetricks msxml6 urlmon
После установки этих пакетов программа надо добавить ключ в реестр, который описан на странице winehq. После этого установщик запуститься и установит программу.
После установки вы можете её запустить:

Выглядит всё не очень, но зато работает. Инструкции не обязательно искать только на winehq, это могут быть различные форумы, блоги и так далее.
Остается вопрос, что же делать, если инструкций нет, информации минимум, а нужно чтобы программа работала. Мы можем анализировать вывод Wine при запуске программы. Причем нас будут интересовать не все сообщения из лога программы, а только последние, именно то что вызвало ошибку. Например если программа вывела:
fixme:richedit:ITextRange_fnEndOf (0xa04410)->(6 0 (nil)): stub
fixme:richedit:ITextRange_fnEndOf (0xa04410)->(6 0 (nil)): stub
fixme:richedit:ITextRange_fnEndOf (0xa04410)->(6 0 (nil)): stub
Осталось понять, что такое richedit, и Microsoft TechNet нам любезно сообщает что это их API и состоит оно из Riched32.dll, это последняя версия, но раньше это была riched20.dll, уже понимаете какие библиотеки нужны?
Их можно установить с помощью winetricks, но это делать необязательно, можно и вручную. Скачайте библиотеки, найти их не составит труда с помощью Google. Только ищите версию для Windows XP.
Копируем библиотеку в наш префикс, в папку system32:
cp ~/Загрузки/riched32.dll ~/program/drive_c/windows/system32/
cp ~/Загрузки/riched20.dll ~/program/drive_c/windows/system32/
Для 64 битных библиотек используется папка syswow64, а поскольку мы указали архитектуру 32 бит нужно и библиотеки использовать соответствующие. Затем запустите winecfg и на вкладке библиотеки, в поле новое замещение для библиотеки наберите *riched32, затем добавить и *riched20 и опять добавить:

Все, теперь можете пробовать запускать программу. Если программа снова падает с ошибкой, смотрите дальше логи и ищите библиотеки, которых ей не хватает.
Таким образом, вы можете заменить много библиотек Wine. Можно запустить практически любую программу, написанную несколько лет назад и не требующую сверх новых технологий. Достаточно только заменить нужные библиотеки. Вы можете не только использовать winetricks или копировать библиотеки из интернета, но и брать их прямо из Windows. Точно не стоит заменять gdi32.dll, kernel32.dll, и user32.dll — эти библиотеки реализуют функции ядра Windows на самом низком уровне, и если их заменить, это только нарушит работу Wine. Наверное, есть и другие библиотеки, которые нельзя заменять, но это вычисляется только путем экспериментов.
Упрощённая установка exe в Linux
Вариант, который мы рассмотрели выше слишком сложный и не очень то подходит для новичков. Специально для таких ситуаций были придуманы различные программные решения вроде PlayOnLinux или CrossOver. Это оболочки над wine, которые уже знают какие библиотеки надо ставить для той или иной программы. Вы просто выбираете программу, выбираете установщик, а дальше программа сделает всё за вас сама.
Утилита Crossover поддерживает множество программ и работают они довольно неплохо, но единственный минус этой программы в том, что она платная. Программа PlayOnLinux бесплатная, но поддерживает намного меньше программ.
Запуск Windows программ в виртуальной машине
Если ни один из перечисленных выше способов вам не помог, осталось только последнее решение. Оно поможет, при условии, что у вас мощный компьютер. Вы можете установить виртуальную машину VirtualBox, затем установить туда Windows и уже там запускать вашу программу. Можно пойти ещё дальше и сделать из старого компьютера сервер, на котором будет запущена Windows, к которой вы сможете подключаться по VNC или RDP и делать там всё, что угодно. Это не совсем способы запуска exe в Linux, однако это решение будет работать почти всегда, где не будет работать wine.
Выводы
Теперь вы знаете как запустить exe на Linux. Не пренебрегайте инструментами упрощения установки вроде PlayOnLinux. Они очень сильно экономят ваше время, так как имеют уже готовые профили для многих программ. Экспериментируйте и пусть ваши программы работают без ошибок!