Как в astra linux установить приложения windows

Принцип работы Wine

  1. Перехват вызовов API: Когда приложение для Microsoft Windows выполняет вызов API, этот вызов перехватывается Wine.
  2. Трансляция вызовов: Wine переводит вызовы API в эквивалентные вызовы для Unix-подобной операционной системы.
  3. Исполнение и обратная связь: Unix-подобная операционная система выполняет соответствующие действия и возвращает результаты в запущенное с помощью Wine приложение.

Особенности Wine

  • не эмулирует всю операционную систему, а реализует API для запускаемых приложений и обеспечивает совместимость на уровне исходного кода без необходимости в эмуляции или виртуализации;
  • для работы с Wine не требуется лицензия на Microsoft Windows;
  • разработчиками не гарантируется работоспособность части функций запускаемых приложений;
  • cуществуют как 32-битные, так и 64-битные версии Wine. 64-битная версия может запускать 32-битные приложения.

и актуальные версии Wine для ОС Astra Linux

Вид сборки Описание Версия Astra Linux
Актуальная версия Wine
stable
1.6 /2.12
7.0.1
1.7 /1.8 9.0.0
devel

1.6 /1.7 /1.8/ 2.12 9.9
staging

1.6 /2.12 7.22
1.7
9.6
1.8
8.18
cpro

Разрабатываемая ветка с поддержкой СКЗИ КриптоПРО

Согласно Положение ПКЗ-2005 (утв. приказом ФСБ России от 09.02.2005 г. N 66), СКЗИ эксплуатируются в соответствии с правилами пользования ими. Все изменения условий использования СКЗИ, указанных в правилах пользования ими, должны согласовываться с ФСБ России и специализированной организацией, проводившей тематические исследования СКЗИ. 
В правилах пользования КриптоПро не предусмотрено его функционирование с применением W. Таким образом, данный способ не может применяться для обеспечения целей криптографической защиты информации.

1.6 /2.12

7.0

1.7

8.8
Специализированные сборки под конкретное программное изделие

Адаптируются под конкретное изделие. Примеры: T-Flex CAD, Справки БК, InnovaSystem LIS

1.7
Зависит от конкретного программного изделия и его версии
4.7
8.13

Ресурсы Wine

Получить список файлов установленного Wine :

dpkg -L wine-<вид_сборки>

Для сборки staging команда будет:

dpkg -L wine-staging

Отдельно следует отметить служебные каталоги:

  • для Wine, установленного из репозитория Astra Linux Special Edition или из deb-пакета используется каталог /usr/share/wine . Исполняемые файлы располагаются в каталоге /usr/bin/;
  • для Wine, установленного из сторонних источников, используется каталог /opt/<установленная_версия_wine> (библиотеки). Исполняемые файлы располагаются в каталоге/opt/<установленная_версия_wine>/bin/. Таким образом, каждая версия устанавливается в отдельный каталог, что позволяет установить одновременно несколько версий Wine.

Пользовательские файлы Wine располагаются в пользовательских каталогах в префиксах.

Прочие ресурсы:

  • ярлыки программ, установленных в Wine хранятся в ~/.local/share/applications/wine/;
  • кэш для установки пакетов, например Gecko или MONO в ~/.cache/wine/;
  • архив пакетов, которые устанавливались с помощью Winetricks в ~/.cache/winetricks/.

Префиксы Wine

Префиксы — подкаталоги в домашнем каталоге пользователя. В префиксы Wine помещает все файлы, относящиеся к приложениям Windows, установленным пользователем: ПО Windows, библиотеки, реестр. В том числе:

  • dosdevices — каталог, в котором перечислены виртуальные диски. В Windows разделы блочных устройств представлены в виде абстрактных дисков (томов), каждый из которых обозначается буквой. К примеру, системный диск по умолчанию называется «C:»;
  • drive_c — виртуальный диск C:, на котором располагаются компоненты Windows;
  • update-timestamp — метка времени;
  • system.reg, user.reg и userdef.reg — файлы реестра Windows, которые являются централизованным древовидным хранилищем настроек Windows-программ,
    заменяют — HKEY_LOCAL_MACHINE, HKEY_CURRENT_USER и HKEY_HKEY_USERS\.Default соответственно;
  • winetricks.log — файл, содержащий список команд использованных при настройке префикса через winetricks.

Префикс общего назначения имеет название .wine. Для некоторых приложений могут создаваться свои префиксы, например для Internet Explorer — .wine-IE8. Используемый по умолчанию префикс можно задать в переменной окружения WINEPREFIX:

export WINEPREFIX=~/.wine

Префикс также можно указать при запуске программы, переопределив переменную окружения. Например, для запуска Internet Explorer в префиксе .wine-IE8:

WINEPREFIX=~/.wine-IE8 /opt/wine-7.13/bin/wine ~/.wine-IE8/drive_c/Program\ Files/Internet\ Explorer/iexplore.exe

Если в имени папок содержится пробел, путь к файлу следует указывать в кавычках, например "/home/user/Рабочий стол"

Указание префиксов и архитектур через переменные окружения

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

  • WINE — путь к исполняемому файлу wine. Например:

    export WINE=/opt/wine-<версия>/bin/wine

  • WINEARCH — используемая архитектура префикса. Допустимые значения: win32 и win64. Например:

    export WINEARCH=win32

    В Wine по умолчанию создается префикс с 64-х разрядной архитектурой 

Значения переменных окружения, заданные с помощью команды export, сохраняются до выхода из пользовательской сессии и применяются глобально ко всем командам. По необходимости для отдельных команд можно переопределить значения переменных. Например, если одновременно используются Internet Explorer и iexplore, имеющие разные префиксы и архитектуры, то команды для их запуска могут быть такими:

  • Internet Explorer (префикс — wine-IE8, архитектура — win32):

    WINEPREFIX=~/.wine-IE8 WINEARCH=win32 $WINE ~/.wine-IE8/drive_c/Program\ Files/Internet\ Explorer/iexplore.exe

  • iexplore (префикс — wine, архитектура — win64):

    WINEPREFIX=~/.wine WINEARCH=win64 $WINE iexplore

Для того, чтобы удалить ранее заданную переменную окружения, можно использовать команду unset:

unset WINEARCH

Функционал Wine

  • winefile — аналог Проводника Microsoft Windows, запуск:

  • wineconsole — аналог консоли Microsoft Windows, запуск:
    или:

    wine cmd

  • wineboot —  служба, выполняющая инициализацию, запуск и перезагрузку префикса. Так же она выполняет симуляцию завершения работы и перезапуска для программ, запущенных в префиксе.

    Основные опции:

      • Завершение текущего сеанса пользователя:

        wineboot -e

      • Завершение текущего сеанса пользователя и запуск нового сеанса. Используется при измениях в приложениях, не требующих полной перезагрузки:

        wineboot -u

      • Принудительное завершение всех процессов:

        wineboot -f

      • Принудительное завершение всех процессов и завершение работы Wine. Имитирует выключение компьютера:

        wineboot -k

  • wineserver — служба, выполняющая роль ядра ОС Windows. Для каждого префикса запускается своя служба, что позволяет одновременно выполнять несколько программ из разных префиксов.

    Основные опции:

    • Ожидание завершения всех процессов перед остановкой сервера. Позволяет стандартно останавливать работу приложений:

      wineserver -w


    • Принудительный перезапуск службы:

    • Принудительный перезапуск для префикса:
      WINEPREFIX="/home/$USER/.wine_prefix" wineserver -k


    • Режим отладки:

      Где значение n — режим вывода информации:

      0 — без вывода;

      1 — выводить основную информацию;

      2  или выше — выводить более полную информацию. 

      Допустим ввод значений в диапазоне от 0 до 99.


    • Запуск сервера на переднем плане, используется для отладки приложений:

      wineserver -f


    • Справка по командам:
  • regedit — . Настройки, которыми можно управлять через winecfg и winetricks, сохраняются в ветку реестра HKEY_CURRENT_USER\Software\Wine,
    • запуск для 32-битных приложений:

    • запуск для 64-битных приложений:

      Основные ветви реестра:

    • system.reg содержит ветвь HKEY_LOCAL_MACHINE;

    • user.regHKEY_CURRENT_USER;

    • userdef.reg HKEY_HKEY_USERS\.Default (содержит настройки Windows-пользователя по умолчанию).

      Для импорта в реестр .reg файла выполнить:

      wine regedit <имя_файла>.reg

  • wine control — упрощенный налог панели управления Windows. Запуск из префикса:

    WINEPREFIX="/home/$USER/.wine" wine control

    запуск напрямую:

    WINEPREFIX="/home/$USER/.wine" wine "/home/$USER/.wine/drive_c/windows/system32/control.exe"


  • winecfgпрограмма для настройки префикса, запуск:

    winecfg


    • Приложения — выбор того, под какую версию Windows будет адаптирован префикс:
    • Библиотеки — управление библиотеками, подключение сторонних DLL:

    • Диски — подключение виртуальных и физических разделов, DVD-приводов, сетевых дисков. При создании префикса по умолчанию подключено два виртуальных диска — C: и Z:. Диск C: является системным каталогом префикса, а диск Z: ведет в корень файловой системы Astra Linux:

Узнать версию Wine:

wine --version

Вывести справку для Wine:

wine --help

или:

man wine

Запуск приложений 

Запуск файлов в Wine в форматах .exe, .msi, .msp, .bat, .application

  • .exe:

    wine <имя_файла>.exe

  • .msi:

    wine msiexec /i <имя_файла>.msi

  • .msp:

    wine msiexec /p <имя_файла>.msp

  • .bat:

    wine start <имя_файла>.bat

  • .application (для запуска требуется компонент .NET):

    winetricks -q <имя_компонента>
    wine start <имя_файла>.application

Запуск Wine от имени суперпользователя

Запускать Wine в сессии суперпользователя (root) или с использованием sudo ЗАПРЕЩАЕТСЯ. Такой запуск дает приложениям Windows, потенциально содержащим вредоносный код, полный доступ к компьютеру.

Если ранее осуществлялся запуск Wine с использованием sudo, то необходимо удалить префикс с помощью команды:

sudo rm -fR ~/.wine

Если префикс был создан в сессии суперпользователя (root), то удалить префикс необходимо в каталоге /root.

Удаление приложений в Wine

  • Запуск графического инструмента Wine для удаления приложений:

    Графический инструмент позволяет устанавливать приложения, для этого необходимо нажать на кнопку Установить в окне графического инструмента и указать путь к установочному файлу в открывшемся диалоговом окне

  • Чтобы удалить приложение из префикса нужно выполнить:
    WINEPREFIX="/home/$USER/.wine" wine uninstaller
  • Чтобы удалить приложение без графического инструмента Wine необходимо выполнить:
    wine uninstaller --remove <название_программы>
  • Использовать деинсталятор приложения с расширением .exe:
    wine /<путь_к_папке_с_программой>/uninstall.exe

Удаление Wine

Способ удаления Wine зависит от того, каким образом был установлен инструмент: через пакетный менеджер или вручную в каталог /opt/

  • При установке через пакетный менеджер удалить:
    1. Основной пакет:

      sudo apt purge wine

    2. Конфигурационные файлы:

      sudo apt autoremove

      sudo apt clean

    3. Пользовательские данные (опционально):

      rm -rf ~/.wine

    4. Удалить дополнительный пакет winetricks (если Winetricks был установлен изначально):

      sudo apt remove --purge winetricks

  • Удаление Wine, уановленного в /opt/:
    1. Удалить каталог, в который был установлен Wine. Например, если Wine установлен в /opt/wine-9.6

      sudo rm -rf /opt/wine-9.6

    2. Удалить пользовательские данные для WINEPREFIX (опционально): 

      rm -rf ~/wineprefixes

После выполнения шагов по удалению Wine, убедиться, что wine больше не доступен в системе:

wine —version


bash: wine: команда не найдена

Рассмотрим поэтапно процесс установки и запуска Windows приложения в операционной системе Astra Linux.

Дистрибутив 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 набираем следующее:

wine Загрузки/npp.7.8.9.Installer.exe

Название файла, естественно, должно соответствовать вашему скачанному файлу. Начнётся процесс установки блокнота, стандартный для 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:

wine "C:/Program Files (x86)/Notepad++/notepad++.exe"
Запуск Notepad++ из консоли в Astra Linux

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

Для быстрого запуска блокнота в менеджере файлов кликаем на файле notepad++.exe правой кнопкой мыши и в контекстном меню выбираем пункт Отправить – Рабочий стол (создать ярлык). На рабочем столе Astra Linux появится ярлык для запуска Notepad++.

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

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

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

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

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

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

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

Запуск программ Windows в Astra Linux с использованием wine от EterSoft

Если требуется запускать программы Windows в Astra Linux, то можно это сделать через использование wine от EterSoft. Эта сборка оптимизирована для рабочих процессов и для часто используемых шрифтов. А так же в коммерческой версии эта сборка позволяет полноценно работать по сети (SMB,NFS) в многопользовательском режиме, устраняя проблемы блокировок.
Приобретаем или заказываем сборку wine от EterSoft на ресурсе - https://etersoft.ru/products/wine
На email высылается ссылка на скачивание сборки. Номера версий скорей всего будут другими а так же комплект сборки может отличаться, так что этот момент учитываем при установке. Загружаем файлы сборки wine с сайта EterSoft и устанавливаем:
# Устанавливаем необходимые пакеты:
sudo apt install cabextract libmspack0
# Это не свободный пакет!:
sudo apt install ttf-mscorefonts-installer
# Если используется видеокарта от nVidia и установлен видеодрайвер, то можно расширить установку:
sudo apt install libvulkan1 mesa-vulkan-drivers

# Вручную устанавливаем пакеты в очередности:
wine-gecko_2.47.2-eter1astra_all.deb
wine-mono_7.2.0-eter2astra_all
winetricks_20220411-eter1astra_all.deb
wine-etersoft-common_7.6.1-eter3astra_all.deb
wine-etersoft_7.6.1-eter3astra_amd64.deb

# Дополнительные пакеты, необязательно:
wine-etersoft-programs_7.6.1-eter3astra_amd64
wine-etersoft-full_7.6.1-eter3astra_amd64

# Для использования программ работающих по сети с использованием SMB,NFS в многопользовательском режиме (к примеру сетевая и/или SQL версия 1с 7.7). Внимание - это уже коммерческий продукт!:
wine-etersoft-network_7.0.2-eter1astra_amd64

# Установив необходимые пакеты wine, фиксим зависимости:
sudo apt install -f
# И перезагружаем систему:
sudo reboot

# После перезагрузки проверяем установку:
wine64
# Производим необходимую настройку wine по умолчанию, как минимум заполняем пользователя и организацию на закладке "О программе":
winecfg
# Проверяем работу winetricks:
winetricks

# Теперь можно запускать приложения windows в Astra Linux. К примеру создадим ярлык для запуска winbox от Микротик, который заранее скачан и находится в папке App в домашней директории пользователя:
# В поле "Имя" вставляем: Winbox
# Прописываем в поле "Команда" строку: wine64 ~/App/winbox64.exe
# Сохраняем ярлык, и теперь мы можем полноценно работать с оборудованием Микротик в Astra Linux

Преимущества

Плавная миграция на ОС
Astra Linux с полной доступностью информационных систем

Графический интерфейс
и простота взаимодействия
при установке приложений с платформы Astra Wine

Автоматическое развертывание
и настройка приложений на машинах в корпоративной сети

Проверенная совместимость
Windows-продуктов с ОС Astra Linux

Экономия затрат
на адаптацию существующих информационных систем

Расширенный функционал

  • Запуск Legacy
    приложений
  • Запуск Active X и COM
    функций
  • Реализация функционала
    для тонкого клиента

Компоненты
платформы

WinWatcher

Инструмент для анализа изменений в ОС Windows после установки
Windows-приложения, а также формированию списка приложений для адаптации в
среде Wine

Win4Lin

Инструмент, позволяющий настроить префикс для корректной установки
Windows-приложений в ОС Astra Linux

Мультитул

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

Репозиторий сборок Wine

Репозиторий преднастроенных сборок Wine с ПО иностранных и отечественных
решений

Витрина

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

Определить список ПО для миграции

Проверить по базе адаптированного ПО

Выбор ПО
для Миграции в Wine

Работы по адаптации и исследованию

Внедрение и тестирование в контуре заказчика адаптированного ПО

Применение

Astra Wine позволяет запускать ИС заказчика точно так же, как если бы они
работали в ОС Windows

Свяжитесь с нами

чтобы узнать больше о наших продуктах и услугах

Содержание

  • 1 Установка Wine
  • 2 Установка Locarus Informer
  • 3 Запуск программы из командной строки
  • 4 Добавление ярлыка запуска

Установка Wine

В Linux существует инструмент для запуска Windows приложений — wine. С помощью него можно установить и запустить Locarus Informer.
Рассмотрим процесс установки на примере отечественного дистрибутива — Astra Linux.

Установим Wine. Для этого в консоли даём команду:

 sudo apt install wine -y

Установка Locarus Informer

После установки Wine запускаем на установку Locarus Informer из установочного архива. Для этого в консоли даём примерно такие команды:

 cd Downloads
 wine LocarusInformer_setup_6.0.0.3798.exe

Запустится процесс установки.

Запуск программы из командной строки

Для проверки работоспособности можно попробовать запустить программу из командной строки. Вместо %username% подставьте имя пользователя от которого работаете в системе.

 wine /home/%username%/.wine/drive_c/LocarusInformer/LocarusInformer.exe

Если будут проблемы с запуском, то здесь же можно будет увидеть ошибки.

Добавление ярлыка запуска

После установки и проверки работоспособности остаётся добавить ярлык запуска на рабочий стол. Для этого щёлкаем правой кнопкой на рабочем столе и выбираем в пункт меню:

 Создать -> Ярлык

И заполняем поля примерно такими значениями. Вместо %username% подставьте имя пользователя от которого работаете в системе.

 Тип: Приложение
 Имя: LocarusInformer
 Имя[ru]: LocarusInformer
 Команда: wine /home/%username%/.wine/drive_c/LocarusInformer/LocarusInformer.exe

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

—Юрий 16:23, 19 июля 2021 (YEKT)

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Что такое аудит системы windows
  • Project manager for windows
  • Pyqt5 как установить на windows
  • Donemax dmtrans для windows
  • Windows server 2008 r2 standard sql server