Имеем: сервер Ubuntu 20.04 с поднятым на нем XRDP сервером (для подключения по RDP). Кому интересно по настройке XRDP, рекомендую скрипт взятый https://c-nergy.be/blog/?p=16703, очень просто и работоспособно.Небольшое уточнение, естественно в сам линукс wtware не встанет, так что придется использовать Wine и управлять DHCP и TFTP сервисами не получиться, но сами конфиги у меня прекрасно редактируются.
Ставить Wine будем ставить через Docker, т.к. уж слишком много "мусора" он тянет в систему.
Теперь по шагам:
0. Подготовка файлы из каталога Program Files (x86)/WTware/TFTPDROOT копируем (со всеми каталогами) в /srv/tftp на Ubuntu. Права выставляем как 666 для файлов и 777 для каталогов. Я так сделал потому, что у меня стоит dnsmasq в качестве DHCP и TFTP сервера с пользователь:группа dnsmasq:nogroup, а при запуске Wine-Docker пользователь другой и прав на запись дать по другому не получилось.
1. Установка Docker взято с https://andreyex.ru/ubuntu/ustanovka-po ... ntu-20-04/
Код: Выделить всё
sudo apt update
sudo apt install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io
Пользователей которые его будут запускать нужно добавить в группу docker.
Проверяем запустился ли Docker
Код: Выделить всё
sudo systemctl status docker
Код: Выделить всё
wget https://raw.githubusercontent.com/scottyhardy/docker-wine/master/docker-wine
chmod +x docker-wine
Код: Выделить всё
docker volume create --name wtware
Код: Выделить всё
./docker-wine --volume=/srv/tftp:/tftp --home-volume=wtware
Код: Выделить всё
winecfg
6. Производим подмену каталогов для правильной работы WTwareДругие команды Wine, для справки:
wine cmd # Windows terminal / execute bat batch scripts, etc. (CLI)
wine control # Wines equivalent of the Windows Control panel (GUI)
wine eject # Eject a disc from the specified optical drive (CLI)
winepath # mangle Windows <-> Unix paths (CLI)
wine reg # registry editor (CLI)
wine taskmgr # same as Windows task manager utility (GUI)
wine uninstaller # global program installer / uninstaller (GUI)
wine winefile # alternative Wine file manager (GUI)
wine explorer # desktop (GUI)
Код: Выделить всё
mkdir "$HOME/.wine/drive_c/Program Files (x86)/WTware"
mkdir "$HOME/.wine/drive_c/ProgramData/WTware"
ln -s /tftp "$HOME/.wine/drive_c/Program Files (x86)/WTware/TFTPDROOT"
ln -s /tftp/Terminals ~/.wine/drive_c/ProgramData/WTware/Terminals
ln -s /tftp/Everyone ~/.wine/drive_c/ProgramData/WTware/Everyone
ln -s /tftp/Templates ~/.wine/drive_c/ProgramData/WTware/Templates
ln -s /tftp/Connections ~/.wine/drive_c/ProgramData/WTware/Connections
Код: Выделить всё
wget https://wtware.ru/files/wtware.6.0.56.ru.exe
wine wtware.6.0.56.ru.exe
Код: Выделить всё
wine "$HOME/.wine/drive_c/Program Files (x86)/WTware/Bin/win32.exe"
Код: Выделить всё
exit
Код: Выделить всё
cat > ~/wtware-cfg.sh <<EOF
#!/bin/bash
~/docker-wine --volume=/srv/tftp:/tftp --home-volume=wtware wine ".wine/drive_c/Program Files (x86)/WTware/Bin/win32.exe"
echo
echo Введите пароль для смены владельца и группы у каталога [/srv/tftp]
sudo chown -R dnsmasq:nogroup /srv/tftp
sudo chmod -R go+w /srv/tftp
EOF
chmod +x ~/wtware-cfg.sh
P.S. Установку новой версии производим следующим образом
Код: Выделить всё
#в Ubuntu 20.04
~/docker-wine --volume=/srv/tftp:/tftp --home-volume=wtware
#в контейнере
wget https://wtware.ru/files/wtware.x.x.xx.ru.exe
wine wtware.x.x.xx.ru.exe[code]