В предыдущей статье, которая получила множество откликов и тепло была принята публикой, рассказывалось о том как инженер-сметчик/инженер-ПТО могут настроить свой ПК/ноутбук для работы под операционной системой Linux, однако в статье был лишь вскользь затронут вопрос о том как устанавливать лицензионное ПО, защищенное электронными ключами Guardant. Сегодня я исправляю ситуацию на примере установки сметной программы SmetaWIZARD в Debian Linux и Astra Linux.
1. Пара слов о ключах защиты Guardant
Guardant — это ряд аппаратных и программных разработок в сфере защиты софта от нелегального копирования, анализа и модификации. Электронные ключи Guardant защищают миллионы продуктов по всему миру и работают в основе DRM для защиты разнообразного контента. Программные технологии виртуализации кода и софтверные ключи органично дополняют современную линейку продуктов Guardant.
Применяемое в строительстве лицензионное ПО (программное обеспечение) от российских разработчиков, так исторически сложилось, зачастую использует физические ключи для защиты именно этого производителя. Такие Ключи и ПО в первую очередь рассчитаны на работу в операционной системе MS Windows, но, согласно комментариям от разработчиков ключа:
Работают ли ключи Guardant под Linux
Да, работают. Нативная поддержка GNU/Linux реализована в моделях Guardant Sign / Time / Code, а так же в их сетевых версиях.Предыдущие модели электронных ключей Guardant (Guardant Stealth III / Net III / Stealth II USB / Net II USB) не могут работать под Linux «самостоятельно». Максимум, что можно сделать в этом случае — запускать Windows-приложение, защищенное с помощью этих ключей, в среде коммерческой сборки WINE@Etersoft.
Таким образом из этого следует что ключ будет виден программами в Wine в любом случае, но нативный софт для Linux сможет работать не со всеми версиями таких ключей.
2. Пара слов о ПО
На текущий момент нативного российского ПО под Linux кот наплакал, вот почему мы будем работать с Wine!!! При этом не всякое такое ПО может быть запущено в Linux, в ряде случаев потребуется доработанная версия такого ПО или дополнительные библиотеки для самой Wine.
Установка и настройка ПО будет осуществляться на примере дистрибутива SmetaWIZARD специально оптимизированного для работы в среде Linux.
SmetaWIZARD — программа для составления смет с автоматизированным расчетом, проверкой, экспертизой и составлением широкого спектра сметной и сопроводительной документации для специалистов сметно-договорного отдела.
В соответствии с положениями Федерального закона от 26 июля 2017 г. № 187-ФЗ «О безопасности критической информационной инфраструктуры Российской Федерации” доступна установка программы под Linuх, а именно операционные системы, входящие в Реестр отечественного ПО, в частности AstraLinux и AltLinux.
Несмотря на то, что официально заявлена поддержка лишь Astra Linux и AltLinux, данное ПО можно установить и на других Linux системах, о чем будет написано далее.
Небольшая ремарка по самой Linux. Дело в том, что Linux не дружит с Secure Boot в UEFI/BIOS, из-за чего хоть установка операционной системы зачастую возможна, но в дальнейшем возникают проблемы с установкой видеодрайвера и случайные зависания системы. В особо тяжелых случаях становится невозможным установить операционную систему Linux в принципе. Что бы этого избежать — необходимо данную опцию в UEFI/BIOS отключать.
If you’re running certain PC graphics cards, hardware, or operating systems such as Linux or previous version of Windows you may need to disable Secure Boot
3. Установка и настройка ПО в системе Linux Debian 11 “Bullseye”
Для последующих тестов в этом разделе будет использоваться Linux Debian 11.3 non-free
contrib предназначен для пакетов, которые сами по себе бесплатны, но зависят от несвободных пакетов. Он также не считается частью Debian.
Мною используется данный релиз исключительно из-за возможности установить проприетарный драйвер от NVidia на видеокарту GTX1660ti. Да, такое программное обеспечение как драйвер от NVidia является non-free.
Итак, для того что бы установить ПО нам потребуется WINE, для чего открываем консоль и поочередно прописываем команды (предполагается что Ваш локальный пользователь входит в группу Администраторы, система и пакеты обновлены до самых свежих версий, а так же что у Вас уже установлены драйвера на видеокарту от производителя и выключен Secure Boot)
3.1 Добавление репозиториев с non-free и contrib ПО в Debian 11. Необходимо для того что бы иметь возможность устанавливать соответствующее ПО. Для этого прописываем в консоли команду:
sudo nano /etc/apt/sources.list
После чего в начале каждой строки ставим символ решетки #, а затем добавляем строчки как прописано в DebianWiki, используя вставку через буфер обмена, после чего нажимаем Ctrl+O, Enter, Ctrl+X
# See https://wiki.debian.org/SourcesList for more information.
#deb http://deb.debian.org/debian bullseye main
#deb-src http://deb.debian.org/debian bullseye main#deb http://deb.debian.org/debian bullseye-updates main
#deb-src http://deb.debian.org/debian bullseye-updates main#deb http://security.debian.org/debian-security/ bullseye-security main
#deb-src http://security.debian.org/debian-security/ bullseye-security maindeb http://deb.debian.org/debian bullseye main contrib non-free
deb-src http://deb.debian.org/debian bullseye main contrib non-freedeb http://deb.debian.org/debian-security/ bullseye-security main contrib non-free
deb-src http://deb.debian.org/debian-security/ bullseye-security main contrib non-freedeb http://deb.debian.org/debian bullseye-updates main contrib non-free
deb-src http://deb.debian.org/debian bullseye-updates main contrib non-free
3.2. Установка WINE. (Ремарка, найти способ установки под Вашу версию Linux можно на сайте WineHQ)
3.2.1. Добавляем поддержку архитектуры i386 (32-бита):
sudo dpkg —add-architecture i386
И затем обновляем информацию о пакетах, чтобы загрузить сведения из репозиториев:
sudo apt-get update
3.2.2. Устанавливаем WINE c демоном (службой в терминах Windows) winbind:
sudo apt-get install wine32 winbind
3.2.3. Запускаем WINE для того что бы убедится что все установилось штатно, а так же можно немного покопаться в настройках:
winecfg
в процессе первого запуска Wine может попросить об установки дополнительных пакетов: Mono, Gecko на все соглашаемся и устанавливаем. В появившемся диалоге устанавливаем систему Windows 7 или 8.
3.2.4. Проверить версию Wine можно выполнив команду:
wine —version
3.3. Устанавливаем для удобства работы PlayOnLinux (POL), который находится в репозитории Debian 11, для этого даем последовательно 2 команды:
sudo apt-get update
sudo apt-get install playonlinux
3.4. Включение поддержки ключей Guardant в системе. Для этого, воспользовавшись сайтом Разработчика, а так же установив ключ в USB-порт, следуем инструкции (далее в этом разделе приведена выжимка из инструкции Разработчика Ключей защиты Guardant с небольшими комментариями автора статьи) и скачиваем два архивных файлов: udev-rules.tar.gz и grdwine-0.5.7.tar.gz. Обычно браузер их скачивает в каталог „Downloads“ / „Загрузки“, расположенный по адресу /home/USERNAME/Downloads, где USERNAME здесь и далее — имя Вашей активной учетной записи Пользователя в системе, в моем случае эта учетная запись luchs. При этом хочу напомнить, что в Linux регистр имеет значение, если речь идет о командах в консоли и именах файлов. При открытии консоли мы обычно находимся в каталоге /home/USERNAME, тогда для того что бы перейти в каталог загрузок нам необходимо дать команду:
cd Downloads
в случае если мы устанавливали Linux изначально c регионом, интерфейсом и раскладкой клавиатуры Российскими, то команда меняется:
cd Загрузки
после чего даем следующие команды для распаковки архива и запуска скрипта установки:
tar -xvf udev-rules.tar.gz
sudo ./install.sh
После успешной установки правил нужно отсоединить электронный ключ от USB-порта и подсоединить повторно. Ключ готов к работе с защищенным Linux-приложением.
Для того что бы успешно работать с Ключами защиты Guardant нам так же потребуются специальные библиотеки. Для этого распаковываем архив grdwine-0.5.7-bin.tar.gz и переходим в распакованный каталог:
tar -xvf grdwine-0.5.7-bin.tar.gz
cd grdwine-0.5.7-bin
После чего выполняем скрипт install.sh c правами администратора системы:
sudo ./install.sh x86 /usr/lib/i386-linux-gnu/wine
Здесь первый параметр скрипта указывает на разрядность устанавливаемой библиотеки, а второй путь по которому данная библиотека будет установлена. Пути расположения библиотек Wine в системе можно узнать, выяснив расположение библиотек kernel32.dll.so. Необходимо выбрать пути к библиотекам в соответствии с используемой версией wine.
sudo find / -name kernel32.dll.so
Из разархивированных данных grdwine-0.5.7-bin нам для дальнейшей работы потребуется взять файл grdwine.dll.so, переименовать его в grdwine.dll, это можно будет сделать при помощи любого установленного файлового менеджера в системе без использования консоли, и подложить в каталог установки драйвера для ключей Guardant, а так же в каталог c:\Windows\System32, но тут мы несколько забегаем вперед.
3.5. Настраиваем PlayOnLinux. Для этого кликаем в программе на шестеренку (»Настройки»), затем нажимаем пункт «Новый», после чего создаем виртуальный диск для 32-хбитных приложений. Диск называем как Вам больше нравится, в моем случае это будет SmetaWizard.
После чего на вкладке «Установка компонентов» выбираем и устанавливаем следующие компоненты:
— Microsoft Core Fonts
— msxml3
— msxml6
— riched20
— riched30
— vbrun6
— vcrun2008 (требование SmetaWIZARD)
Затем проверяем установленные библиотеки на вкладке Wine пункт «Настроить Wine», а так же устанавливаем версию Windows как XP.
3.5.1. Устанавливаем ПО в «виртуальный» раздел SmetaWizard в PlayOnLinux. Для этого необходимо прежде всего установить драйвер ключа Guardant для MS Windows 32-хразрядной (x86) версии. Скачать необходимый драйвер можно на сайте производителя по ссылке. Для этого в главном меню программы PlayOnLinux последовательно выбираем:
- Установить программу -> Установить программу, отсутствующую в списке -> Далее -> Далее -> Далее -> Редактировать или обновить существующее приложение -> (Показать виртуальные диски) выбрать диск SmetaWizard -> (пропустить любые доп.настроки, т.е. ничего не выбирать на этом шаге) -> 32bit instalation -> выбрать установщик и произвести установку драйвер ключа Guardant с параметрами по умолчанию -> Просмотр -> Выбор файла для запуска C:\Windows\System32\grddiag.exe -> Далее -> Далее -> "Я не хочу создавать другой ярлык"
Следующий важный шаг: файл grdwine.dll из п.3.4 через стандартный файловый менеджер Linux копируем в 2 каталога:
/home/USERNAME/PlayOnLinux’s virtual drives/SmetaWizard/drive_c/Program Files/Common Files/Guardant/Drivers/
/home/USERNAME/PlayOnLinux’s virtual drives/SmetaWizard/drive_c/windows/system32/
После чего через PlayOnLinux или с ярлыка на рабочем столе запускаем grddiag. Если Вы сделали все верно, но диагностическая утилита увидит ключ программы:
3.5.2. Установка сметной программы SmetaWIZARD в PlayOnLinux.
Из комплекта поставки SmetaWIZARD необходимо взять каталог с программой SmetaWIZARD и скопировать его полностью, при помощи файлового менеджера Linux, по пути:
/home/USERNAME/PlayOnLinux’s virtual drives/SmetaWizard/drive_c/Program Files/
Из комплекта поставки SmetaWIZARD необходимо взять файлы из каталога /utils/vcrun2008/
и скопировать эти библиотеки по адресу
/home/USERNAME/PlayOnLinux’s virtual drives/SmetaWizard/drive_c/windows/system32/
Для того что бы создать ярлык запуска SmetaWizard необходимо снова запустить приложение PlayOnLinux, зайти в Настройки, выбрать виртуальный диск SmetaWizard и на вкладке «Основные» кликнуть на кнопку «Сделать новый ярлык из этого виртуального диска», после чего выбрать файл для ярлыка, расположенный по пути:
/home/USERNAME/.PlayOnLinux/wineprefix/SmetaWizard/drive_c/Program Files/SmetaWIZARD/SmWiz.exe
4. Установка и настройка ПО в системе Astra Linux
Я никогда до этого не работал с Astra Linux. Интерфейс и внешний вид оставил ощущения словно снова работаешь не то в Windows XP, не то в Windows 2000. Дизайн приятно порадовал классикой, о которой у меня приятные воспоминания.
Для тестирования использовался дистрибутив Astra Linux версии Орел (orel-2.12.43-14.09.2021_10.29.iso 15-Dec-2021 15:52 4G). Сам разработчик о нем пишет следующее:
Интерфейс установщика Astra Linux напомнил немного напомнил кастомизированый установщик Debian. Т.е. при первоначальной установке и настройке каких то подводных камней и проблем не возникло.
Для того что бы установить SmetaWizard в среде Astra Linux необходимы 2 вещи:
а. Скопировать с установочного диска/флешки файлы на локальный диск, с сохранением всей структуры каталогов (в моем случае все файлы были скопированы в каталог «Загрузки»).
б. Установленный pyton 3.5+
После чего необходимо открыть терминал Fly из меню Пуск и выполнить следующие команды:
cd Загрузки
sudo python3 sw_install.py
После чего следует откинуться в кресле и наблюдать процесс установки.
По окончанию установки необходимо через консоль установить версию Windows как XP, при помощи команды:
winecfg
После чего, в моем случае через Midnight Commander, перейти в каталог установленной SmataWizard в Wine
и дать команду на запуск:
wine SmWiz.exe
И наше установленное приложение сразу стартует и готово к работе, за что хочется сказать огромное Спасибо Разработчикам, которые упростили жизнь, по сравнению с ручной установкой ПО через PlayOnLinux.
Всем Добра!
ссылка на оригинал статьи https://habr.com/ru/post/667456/
Добавить комментарий