Вопрос или проблема
У меня есть виртуальная машина Ubuntu, работающая в HyperV на компьютере с Windows 10. Когда я подключаюсь к виртуальной машине через окно подключения виртуальной машины HyperV, всё выглядит и работает отлично, за исключением того факта, что разрешение зафиксировано на 1024×768, а также того, что по умолчанию я не могу копировать и вставлять данные между виртуальной машиной и хостом Windows. Ранее я настраивал виртуальную машину Fedora в HyperV и смог сделать всё, что мне нужно, подключившись к виртуальной машине через удалённый рабочий стол, настроив xrdp на виртуальной машине, поэтому я пытаюсь настроить виртуальную машину Ubuntu таким же образом, но сталкиваюсь с проблемой в производительности и отображении виртуальной машины.
Вот настройки:
Хост-машина:
- Windows 10 Enterprise версия 22H2
- Сборка ОС 19045.5131
- Пакет опыта Windows Feature Experience 1000.19060.1000.0
- Версия менеджера HyperV 10.0.19041.1
Виртуальная машина:
- Ubuntu 24.04.1 LTS x86_64
- Ядро 6.8.0-49-generic
- Окружение рабочего стола: Gnome 46.0
- Оболочка: Bash 5.2.21
- Диспетчер окон: Mutter
- Тема менеджера окон: Adwaita
- Тема: Yaru [GTK2/3]
- Иконки: Yaru [GTK2/3]
- Терминал: gnome-terminal
- Версия xrdp 0.9.24
Я подключаюсь к виртуальной машине через окно подключения виртуальной машины HyperV, зайдя в менеджер HyperV, щелкнув правой кнопкой мыши на виртуальной машине и выбрав “Подключить”, что открывает окно подключения виртуальной машины HyperV, где я нажимаю “Запустить”, и виртуальная машина запускается и выглядит так, как я ожидаю.
Когда я подключаюсь к виртуальной машине через удалённый рабочий стол, я открываю менеджер HyperV, щелкаю правой кнопкой мыши на виртуальной машине и выбираю “Запустить”, что запускает виртуальную машину, но не открывает окно подключения виртуальной машины HyperV. Затем я открываю удалённый рабочий стол, где ввожу IP-адрес виртуальной машины в текстовое поле “Компьютер” и нажимаю кнопку “Подключить”, что открывает окно входа xrdp, где я ввожу учётные данные для входа в виртуальную машину, а затем нажимаю “ОК”, что открывает окно удалённого рабочего стола с отображением рабочего стола виртуальной машины.
Основная проблема заключается в том, что когда я подключаюсь к виртуальной машине через удалённый рабочий стол, отображение очень отличается, а производительность очень медленная (приложения открываются долго, интернет работает медленно и т.д.).
Для разъяснения, вот скриншот того, как это выглядит при использовании просмотрщика HyperV (рабочий стол отображается с настройками по умолчанию, окружающая чёрная область обусловлена низким разрешением):
А вот скриншот того, что я вижу, когда подключаюсь к виртуальной машине через удалённый рабочий стол (рабочий стол просто синий, этот снимок сделан после нажатия кнопки команд для иллюстрации того, что рабочий стол просто синий):
Когда я запускаю neofetch, единственные вещи, которые отличаются от запуска в сессии через удалённый рабочий стол, это другое разрешение, а также значения, указанные для памяти. В духе полноты, вот скриншоты обоих из них:
другая вещь, которую я обнаружил, это то, что вывод команды xrandr отображается по-разному между двумя сессиями
Удалённый рабочий стол:
HyperV:
Я знаю, что могу персонализировать внешний вид рабочего стола для сессии удалённого рабочего стола, но тот факт, что по умолчанию он выглядит иначе, чем при запуске из HyperV, наряду с тем фактом, что производительность ниже, заставляет меня думать, что что-то не настроено должным образом, чтобы сессия удалённого рабочего стола выглядела и работала так же, как и сессия HyperV, когда виртуальная машина загружается.
Итак, вопрос в том, что мне нужно изменить или настроить иначе, чтобы при запуске виртуальной машины через удалённый рабочий стол сессия виртуальной машины выглядела так, как должна, и также работала как ожидалось (что характерно для виртуальной машины, открытой через HyperV)?
Если что-то неясно или если нужно предоставить дополнительные данные для помощи в устранении неполадок. Спасибо!
Ответ или решение
Как настроить удаленное подключение к локальной виртуальной машине Ubuntu
Ваша задача — настроить удаленный доступ к виртуальной машине (VM) на Ubuntu, работающей в Hyper-V на Windows 10. Правильная конфигурация удаленного рабочего стола обеспечит вам высокое качество изображения, адекватную производительность и нужные функции, такие как копирование и вставка между хост-системой и виртуальной машиной. Давайте подробно разберем необходимые шаги.
Шаг 1: Установка и настройка xrdp
Прежде всего, убедитесь, что xrdp
установлен и правильно настроен на вашей виртуальной машине. xrdp
— это проект с открытым исходным кодом, который предоставляет доступ к удалённым рабочим столам через протокол RDP.
-
Установите xrdp.
Подключитесь к вашей виртуальной машине через Hyper-V:sudo apt update sudo apt install xrdp
-
Запустите и настройте xrdp.
После установки убедитесь, что служба запущена:sudo systemctl enable xrdp sudo systemctl start xrdp
-
Настройте xrdp для использования с Gnome. Откройте файл конфигурации:
echo "gnome-session" > ~/.xsession
-
Проверьте, работает ли xrdp:
sudo systemctl status xrdp
Шаг 2: Конфигурация параметров отображения
Для обеспечения высококачественной графики и производительности вам необходимо правильно настроить разрешение экрана.
-
Настройте разрешение экрана.
Прежде всего, выберите оптимальное разрешение. Вы можете воспользоваться командойxrandr
для выбора нужного разрешения. Подключитесь к вашей виртуальной машине через Hyper-V и выполните:xrandr
Найдите нужное разрешение и запишите его. Затем, чтобы изменить разрешение при подключении через RDP, вам может потребоваться настроить файл конфигурации
xrdp
. Откройте файл:sudo nano /etc/xrdp/xrdp.ini
Найдите секцию
[Xvnc]
и убедитесь, что установлено правильное разрешение, например:max_bpp=32
Шаг 3: Настройка копирования и вставки
Чтобы включить функцию копирования и вставки между вашей локальной Windows и Ubuntu VM:
- Убедитесь, что включена clipboard. Это можно сделать в настройках вашего RDP-клиента на Windows. Когда вы подключаетесь к удаленной машине, убедитесь, что включена функция объединения буферов обмена.
Шаг 4: Проверка производительности
Если после настройки все еще имеется проблема с производительностью:
- Оптимизируйте ntpd и network, чтобы улучшить задержку при передаче пакетов.
- Проверьте настройки сети в Hyper-V, зачастую желательно использовать сетевой адаптер с поддержкой виртуализации.
Шаг 5: Подключение к VM через RDP
Теперь, после всех настроек, вы можете подключиться к вашей Ubuntu VM через RDP:
- Запустите VM через Hyper-V.
- Используйте Remote Desktop Connection в Windows, введя IP-адрес виртуальной машины.
- Введите данные для входа.
Заключение
Следуя описанным шагам, настройка удаленного доступа к Ubuntu VM через xrdp должна привести к ожидаемым результатам: правильное отображение рабочего стола и улучшенная производительность. Если возникнут дополнительные вопросы, вы можете обратиться за помощью на специализированные форумы или сообщества по Ubuntu и Hyper-V.
Это поможет вам без труда управлять вашей виртуальной машиной, как если бы вы работали на обычном рабочем столе.