Как создать ярлык linux wine

Обновлено: 07.07.2024

Дистрибутив Astra Linux основан на ядре операционной системы Debian. И для Debian, а также других дистрибутивов Linux, существует прекрасное широко известное средство для запуска приложений Windows – программа Wine. Эта программа представляет собой своего рода «песочницу», в которой выполняется Windows приложение. Wine отслеживает, к каким Windows API обращается программа, и перенаправляет её вызов на аналогичные API Linux, если они есть. Из-за того, что Windows и Linux – очень разные операционные системы, не для каждого API Windows существует аналог в Линукс, и наоборот. Поэтому не все программы будут работать под Wine. Но многие. Рассмотрим установку Wine и запуск из-под него Windows приложения на примере Notepad++.

1 Установка Wine в Astra Linux

Первым делом необходимо запустить менеджер пакетов Synaptic. Быстрее всего это сделать так. Нажать сочетание клавиш Win+R и начать вводить в поле команды название Synaptic. Почти сразу высветится найденная программа. Наводим курсор на неё (или стрелками и клавишей Enter ) и запускаем. При запуске Synaptic потребует ввести пароль от учётной записи.

Запуск менеджера пакетов Synaptic

Запуск менеджера пакетов Synaptic

Теперь в менеджере пакетов необходимо найти Wine. Кликаем на иконку с лупой в верхней панели. И набираем в открывшемся окне поиска Wine .

Поиск пакетов программы Wine в менеджере пакетов Synaptic

Поиск пакетов программы Wine в менеджере пакетов Synaptic

Менеджер пакетов найдёт программу Wine и отобразит её компоненты. Для установки нужно нажать кнопку «Применить» на верхней панели инструментов.

Установка программы Wine в Astra Linux

Установка программы Wine в Astra Linux

Начнётся установка Wine.

Процесс установки программы Wine в Astra Linux

Процесс установки программы Wine в Astra Linux

Необходимо дождаться окончания процесса инсталляции.

2 Использование Wine в Astra Linux

Теперь идём на сайт программы Notepad++ и скачиваем установочный файл. Он будет загружен в директорию «Загрузки» текущего пользователя. Чтобы в этом убедиться, можно запустить терминал (например, xterm, запуск аналогично: Win+R и набрать xterm ) и ввести в командной строке ls Загрузки . Появится содержимое каталога «Загрузки». В списке должен присутствовать скачанный установщик блокнота.

Невозможно запустить установщик напрямую, т.к. он скомпилирован под ОС Windows. Тут нам и придёт на помощь Wine. В командной строке терминала xterm набираем следующее:

Название файла, естественно, должно соответствовать вашему скачанному файлу. Начнётся процесс установки блокнота, стандартный для Windows. Просто пройдите его до конца, как обычно.

Процесс установки программы Notepad++ в Astra Linux

Процесс установки программы Notepad++ в Astra Linux

Когда программа будет установлена, Wine создаст на диске в своей директории иерархию каталогов, похожую на Windows. По умолчанию рабочая директория Wine скрыта. Чтобы её увидеть, нужно в проводнике (менеджере файлов) в мню «Вид» выбрать пункт «Отображать скрытые» или нажать сочетание клавиш Ctrl+H . Теперь директория Wine со всеми подкаталогами стала видна.

Настройка отображения скрытых файлов и каталогов в Astra Linux

Настройка отображения скрытых файлов и каталогов в Astra Linux

В Linux директории, название которых начинается с символа точки «.», по умолчанию являются скрытыми.

Настройка отображения директории программы Wine в Astra Linux

Настройка отображения директории программы Wine в Astra Linux

Можем через менеджер файлов зайти в каталог Notepad++ и убедиться, что программа Wine создала всю иерархию директорий, как в Windows.

Можно запускать блокнот из командной строки терминала xterm:

Запуск Notepad++ из консоли в Astra Linux

Запуск Notepad++ из консоли в Astra Linux

Создание ярлыка для быстрого запуска Windows программы в Astra Linux

Создание ярлыка для быстрого запуска Windows программы в Astra Linux

Если при нажатии на ярлык ничего не происходит, стоит посмотреть его свойства, кликнув правой кнопкой мыши на ярлыке. Затем в окне «Свойства» перейти на вкладку «Ярлык» и обратить внимание на строчку «Команда». В ней должна быть именно та же команда, которую мы только что набирали в консоли. Если это не так, поправьте:

Изменение свойств ярлыка для быстрого запуска Windows программы в Astra Linux

Свойства ярлыка для запуска Windows программы в Astra Linux

Теперь вы можете полноценно пользоваться программой Notepad++, написанной для Windows, в операционной системе Astra Linux.

Как я уже упоминал, далеко не все Windows программы запускаются и работают из-под Wine с такой же лёгкостью. Но теперь вы знаете как проверить, будет работать под Линукс или нет интересующая вас 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».

propk.ru

Маленькая инструкция по тому как установить wine и запустить с его помощью программу windows. В статье будет рассказан только минимальный набор эмулятора wine.

Я противник того, чтоб запускать программы в Linux не созданные именно для этой системы. Всегда стараюсь искать альтернативные программы и решения, созданные именно для той операционной системы в которой ты работаешь.

Некоторые разработчики не оставляют выбора для своих пользователей и не производят софта под операционные системы Linux. Мало того, есть разработчики, которые производят софт, только под одну операционную систему.

Возникла потребность запустить маленькую программу windows в операционной системе Linux. Программа портативная и даже в windows не требует установки.

Чтоб не ставить вторую систему решено было поставить минимальный набор эмулятора Wine.

Я устанавливал wine в Debian 11 в котором еще ни разу не ставился эмулятор wine. Если вы уже, что то ставили или пытались самостоятельно его установить и настроить, рекомендую все удалить.

Удаляем папку wine в домашнем каталоге, она как правило скрыта. Все скрытые файлы и папки в Linux начинаются с точки.

Чтоб скрытые файлы и папки отображались можно нажать сочетание клавиш Ctrl+H, повторное нажатие этих клавиш снова скроет их отображение.

скрытая папка wine в домашнем каталоге

Можно просто открыть терминал и выполнить команду rm с двумя аргументами

Аргумент -f говорит системе игнорировать все аргументы папки

Теперь удалим все пакеты wine, установленные в системе и конфигурации связанные с этой программой, командой purge

Предыдущие два шага делать , как вы поняли, нужно только тем кто уже ставил или пытался ставить wine.

Сам процесс установки эмулятора.

Говорим системе, что будем ставить пакеты 32 битной архитектуры i386

Кому интересно почему i386? Можете почитать тут в википедии.

Ставим пакет, необходимый для работы wine, libpulse0:i386

На всякий случай исправляем, если вдруг есть, ошибки в недостающих пакетах.

Теперь производим установку 32 битного пакета wine из репозитория вашей системы.

На данном этапе, wine с 32 битной архитектурой будет установлен и им можно пользоваться.

Запускаем программу через эмулятор wine.

Для того, чтоб запустить программу с помощью эмулятора wine, вам необходимо набрать команду wine в терминале и далее указать путь к файлу exe программы windows.

Если файл в папке Dawnload домашней директории то это выглядит так:

Можно предварительно перейти в нужную папку командой cd, и просто указать команду wine и сам файл запуска программы с расширением exe

Создаем ярлык запуска программы

Чтоб постоянно не заходить в терминал, для запуска программы можно создать ярлык запуска.

Создайте файл в любом текстовом редакторе и сохраните его с именем оканчивающимся на .desktop

ярлык для запуска программы из под wine

Файл должен иметь следующее содержимое:

Для полного понимания вот пример содержания ярлыка файла программы layout60.exe

ярлык запуска программы через эмулятор wine

Этот файл можно поместить на рабочий стол или куда вам будет угодно и запускать программу кликнув по нему.

Как вариант вы можете взять ярлык уже ранее созданный для любой другой программы, сделать копию и отредактировать его под нужный файл.

Ярлык запуска программы из под wine при помощи скрипта.

Так же на просторах всемирной паутины мною был найден скрипт shortcut.sh для создания ярлыка запуска программы.

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

Терминал открывайте в папке где файл расположен, либо командой cd перейдите в папку со скриптом, а затем выполните команду

Затем запустить его командой

После запуска скрипта вам необходимо будет указать файл запуска программы с расширением exe и нажать ОК, в следующем окне выбрать файл с иконкой, если он есть.

скрипт создания ярлыка для программы wine

По окончании работы скрипта на рабочем столе появится ярлык запуска вашей программы.

Если есть кому, что дополнить или поделится своим опытом, пишите в комментариях.

01 сен 2016, 14:22

Добрый день. Обычно при установке программ в Wine на рабочем столе появляется ярлык со значком. С нативными программами понятно: значки обычно в usr/share/icons/ Но вот если надо самому делать ярлык на рабочем столе программе установленной через Wine, то откуда в системе найти значок? Bill Williamson , Зависит от окружения рабочего стола
на примере приложения из вашей соседней темы - у меня в КDE 4 получилось так:

Изображение

01 сен 2016, 15:29

Настоящая водка — это не пьянство, а ключ к своей совести, с нее-то и начинается настоящая мудрость. (c)

01 сен 2016, 19:30

di_mok , клик туда кидает в домашнюю папку, а мне нужны значки из exe (как при нажатий "Сменить значок" в свойствах ярлыка в Windows 7).

Изображение

01 сен 2016, 20:20

Bill Williamson , Зависит от окружения рабочего стола
на примере приложения из вашей соседней темы - у меня в КDE 4 получилось так:

Изображение


Изображение

01 сен 2016, 20:26

Настоящая водка — это не пьянство, а ключ к своей совести, с нее-то и начинается настоящая мудрость. (c)

01 сен 2016, 22:41

di_mok , тут вероятно иеется ввиду что не все экзешники отрисовывают свою иконку, некоторые в файловом менеджере светятся без нее.
И также ico-файлы отдельно есть не всегда к ним. Так что с родными иконками иногда может быть такая штука.

Но, на мой взгляд, нагуглить интересующую иконку в png всегда можно, и они ставятся на раз по твоему методу)

Изображение


Изображение

03 сен 2016, 09:54

Вот предположим, Вам кто-то безвозвратно удалил ярлык на рабочем столе и надо самому восстановить. На скрине пример с Licecap. Так вот, откуда узнать значение у Icon= B921_LICEcap.0 ? Просто, поиск B921_LICEcap.0 по всем разделам результатов не даёт.

Если открыть exe архиватором и вытащить ico, то без конвертации его в png способ смены через свойства не работает. Размножать файлы иконок тоже не изящно.

Изображение

03 сен 2016, 12:02

Bill Williamson писал(а): Просто, поиск B921_LICEcap.0 по всем разделам результатов не даёт. Тут, как я сумел найти информацию - я поделился именно встроенной фишкой в Dolphin , что он так умеет. Как это выковырять - без понятия
Bill Williamson писал(а): Размножать файлы иконок тоже не изящно.

Тут вопрос, закладывался ли такой функционал в DE или нет, ибо с win софтом все-таки совместимости никто не объявлял. Win с обратной стороны, глянув в никсовый исполняемый бинарник - тоже ничего путного не скажет, и это нормально вобщем-то

Како обойтись без доп. файла иконки - я пока не придумал. А вот вытаскивание из exe родной ico и последующую контвертацию её в нужный формат, с сохранением в спец папке вайн ярлыков, чтоб затем отрисовать на значке - можно набросать скриптик или однострочник, чтоб не делать n операций руками.

Читайте также: