Подготовка базового ВРМОбязательные настройкиДля подготовки необходимо: |
Настройка гостевой ОС сводится к выполнению следующих требований:
qemu-guest-agent for Windows и spice-guest-tools;qemu-guest-agent,spice-vdagent,xserver-xorg-video-qxl. Установить эти пакеты можно командой::~$ sudo apt install -y qemu-guest-agent spice-vdagent xserver-xorg-video-qxl |
где:
-y - ключ для пропуска подтверждения установки.
xrdp для корректной работы подключения по протоколу RDP к ВРМ. Установить этот пакет можно командой::~$ sudo apt install -y xrdp |
/etc/acpi/events/powerbtn-acpi-support должен быть приведен к виду:event=button/power action=/sbin/poweroff |
При необходимости работы с vGPU по протоколу доставки Loudplay в гостевой ОС дополнительно должны быть установлены серверные драйверы NVIDIA и сервер Loudplay. |
Для ввода ВРМ с ОС Astra Linux в домен MS AD необходимо в базовое ВРМ установить пакет Для ввода ВРМ с ОС Astra Linux в домен FreeIPA необходимо в базовое ВРМ установить пакет Базовое ВРМ в домен при этом вводить не нужно: процесс ввода контролируется параметрами гостевых ОС (см. подраздел Управление параметрами гостевых ОС в Termidesk), которые указываются при создании фонда ВРМ (см. подраздел Добавление фонда ВРМ). |
Для гостевой ОС Astra Linux необходимо также изменить способ назначения сетевых настроек, для этого необходимо:
systemctl --now mask) и удалить (apt remove) встроенную программу для управления сетевыми соединениями NetworkManager::~$ sudo systemctl --now mask NetworkManager && sudo apt remove network-manager |
/etc/network/interfaces.d/<имя интерфейса>.conf. Необходимо создать конфигурационные файлы и описать их, воспользовавшись справочным центром Astra Linux: https://wiki.astralinux.ru/pages/viewpage.action?pageId=3277370;/etc/network/interfaces, добавив в нее следующую строку, если ее нет:source /etc/network/interfaces.d/* |
:~$ sudo systemctl restart networking |
Для гостевой ОС Linux, отличной от Astra Linux, при необходимости ввода ВРМ в домен FreeIPA нужно внести изменения в файл /usr/lib/python3.6/site-packages/ipalib/constants.py:
:~$ sudo sed -i "s/^NAME_REGEX.*$/NAME_REGEX = r'[a-z][_a-z0-9\\\-]*[a-z0-9]$|[a-z]$'/g" $(sudo find / -name constants.py -type f | grep -FzZ 'ipalib/constants.py') |
Команда осуществляет поиск файла constants.py в корневой директории и учитывает, что найденный путь к файлу должен содержать каталог «ipalib». В найденный файл вносится изменение переменной NAME_REGEX.
Путь к файлу зависит от используемой ОС Linux и версии Python и может отличаться от указанного. Для определения пути к файлу можно воспользоваться утилитой
|
Автоматическое масштабирование экрана в ОС Astra LinuxВ некоторых случаях при переходе в полноэкранный режим в пользовательской рабочей станции гостевая ОС Astra Linux не производит автоматическое масштабирование экрана. |
Условием масштабирования является запущенный процесс |
Для настройки автоматического масштабирования экрана необходимо:
/etc/udev/rules.d/50-spice-vdagent.rules, создав правило для udev:ACTION=="change", KERNEL=="card0", SUBSYSTEM=="drm", RUN=="/usr/local/bin/x-resize" |
udev командой::~$ sudo systemctl restart udev |
/usr/local/bin/x-resize:#! /bin/sh
PATH=/usr/bin
desktopuser=$(/bin/ps -o user:80= -C spice-vdagent | grep -v fly-dm) || exit 0
export DISPLAY=:0
export XAUTHORITY=$(eval echo "~$desktopuser")/.Xauthority
xrandr --output $(xrandr | awk '/ connected/{print $1; exit; }') --auto |
#!/bin/sh
PATH=/usr/bin
# Имя пользователя получается через вывод списка пользователей (заголовки отключены), от имени которых запущен spice-vdagent | из списка вырезается имя fly-dm (сессия отображения ввода логина-пароля)
desktopuserlist=$(/bin/ps -o user:80= -C spice-vdagent | grep -v fly-dm) || exit 0
# Проверенное решение, но работает только для имён пользователей без дефисов, пробелов и т.д.
#desktopuserlist=$(/bin/ps -ef | /bin/grep -oP '^\w+ (?=.*vdagent( |$))') || exit 0
for desktopuser in $desktopuserlist; do
export DISPLAY=:0
export XAUTHORITY=$(eval echo "~$desktopuser")/.Xauthority
#Get active monitors
ACTMONS=$(xrandr --listactivemonitors | awk '/[[:alnum:]]+ +/ {print $4}' | sort)
#Get primary monitor
PRIMARYMON=$(xrandr --listactivemonitors | awk '/*/ {print $4}')
#Get current and preferred display resolutions
for MON in $ACTMONS
do
#Get preferred display resolution
PREFRES=$(xrandr | awk -v monpref="$MON connected" '/connected/ {p = 0} $0 ~ monpref {p = 1} p' | awk '/+/ {print $1;}' | sed -n '2~2p')
#Get current display resolution
CURNRES=$(xrandr | awk -v moncurn="$MON connected" '/connected/ {p = 0} $0 ~ moncurn {p = 1} p' | awk '/*/ {print $1;}')
if [[ $CURNRES != $PREFRES ]];
then
if [[ $MON == $PRIMARYMON ]];
then
xrandr --output $MON --auto
logger -p local0.notice -t ${0##*/}[$$] "$MON primary display change resolution to preferred $PREFRES"
else
xrandr --output $MON --left-of $PRIMARYMON --auto
logger -p local0.notice -t ${0##*/}[$$] "$MON display change resolution to preferred $PREFRES and left of $PRIMARYMON"
fi
else
logger -p local0.notice -t ${0##*/}[$$] "$MON display is already using preferred resolution $PREFRES"
fi
done
done |
:~$ sudo chmod +x /usr/local/bin/x-resize |
Для масштабирования экрана приветствия необходимо выполнить:
kscreen, переименовав расширение или удалив данные файлы из указанных директорий: /usr/share/fly-dm/autostart/greeter/kscreend_autostart.desktop, /usr/share/fly-dm/preload/greeter/kscreend_preload.desktop;spice-vdagent для экрана приветствия::~$ sudo ln -s /etc/xdg/autostart/spice-vdagent.desktop /usr/share/fly-dm/autostart/greeter/spice-vdagent.desktop |
fly-dm командой::~$ sudo systemctl restart fly-dm |
Если файл |