Назад | Перейти на главную страницу

KVM / QEMU: подключение к виртуальной машине без графического интерфейса

Краткая версия (решение ниже):

У меня есть ПК с Windows. У меня есть сервер Debian (без рабочего стола). У меня есть виртуальная машина Ubuntu, работающая на сервере Debian через KVM / QEMU.

Вопрос: Как мне подключиться к виртуальной машине Ubuntu и начать процесс установки?

Длинная версия (решение ниже):

Ситуация

У меня есть некоторый опыт работы с Linux, но я новичок в виртуализации Linux. Я хочу создать несколько виртуальных машин на моем сервере Debian. Я подключаюсь со своего ПК с Windows через ssh к серверу Debian. На сервере Debian не установлена ​​среда рабочего стола. Я использовал следующий учебник https://www.howtoforge.com/virtualization-with-kvm-on-a-debian-squeeze-server, но на шаге 3 он сказал мне установить virt-manager, который является графическим инструментом. Как и ожидалось, я не могу запустить virt-manager по ssh.

Вопрос

Как я могу подключиться к виртуальной машине и установить операционную систему, а также сервер sshd. Я хочу подключиться к моей виртуальной машине по ssh после первоначальной установки.

Возможное решение А

Я обнаружил, что могу подключиться к виртуальной машине через VNC, некоторые учебники говорят мне использовать ssh из Windows в Debian с перенаправлением портов, а затем запустить клиент VNC в Windows. Однако он не будет подключаться к VNC, потому что я не знаю, как настроить виртуальную машину или virsh для использования правильного порта.

Возможное решение B

В этом учебнике Ubuntu показан способ подключения напрямую через консоль: https://help.ubuntu.com/community/KVM/Access Я хотел бы использовать этот метод, но он требует выскочки, и я не хочу удалять свой systemd-sysv. Турориал сделан для Ubuntu 9.4

Возможное решение C

Если бы у меня был Ubuntu.iso, который автоматически запускал бы сервер sshd, я мог бы напрямую подключиться к установщику через ssh. Но я не нашел и не знаю, как его создать.

Решение:

Я нашел решение этой проблемы.

  1. Проверьте, будет ли KVM работать в системе. ваш процессор должен поддерживать vmx или svm egrep '(vmx|svm)' --color=always /proc/cpuinfo
  2. Установите KVM на физическую машину с Debian sudo apt-get install kvm qemu-kvm libvirt-bin virtinst
  3. проверить установку virtinst и выйти virsh -c qemu:///system list
  4. Необязательно: установите интерфейс Bridge, используйте Google для обучения здесь.
  5. Скачать iso-файл с веб-сайта wia wget wget http://link.to.your.linux.distro.iso
  6. Установите новую виртуальную машину с помощью следующей команды virt-install --connect qemu:///system --name your_vm_name --memory 512 --cdrom /srv/vmimage/ubuntu-14.04.4-server-amd64.iso --disk size=8 --noautoconsole --os-type linux --accelerate --network=bridge:br0 --hvm --graphics vnc,port=5900,listen=0.0.0.0
    Я не эксперт, но попытаюсь объяснить некоторые варианты:
    --disk size = 8: создаст диск размером 8 ГБ --network = bridge: br0: виртуальная машина будет подключаться к Интернету через созданный интерфейс моста, замените br0 с названием вашего моста, если он у вас есть
    --graphics vnc, port = 5900, listen = 0.0.0.0: использовать протокол VNC для отображения графики на порту 5900.

Теперь вы должны увидеть такой вывод:

Domain installation still in progress. You can reconnect to the console to complete the installation process.
  1. Теперь ваша виртуальная машина не работает, вам просто нужно подключиться к ней. Переключитесь на свой компьютер с Windows (или что бы вы ни использовали для ssh на сервер Debian). В Windows вам понадобится какой-нибудь инструмент VNC, я использовал TightVNC Viewer. Установите его.
  2. Вам понадобится оболочка ssh, я рекомендую установить Git Scm под Windows.
  3. В Windows: откройте оболочку через Git Scm и перейдите в каталог TightVNC.
  4. Теперь откройте переадресацию порта с Windows на сервер Debian с помощью команды ssh -L 5900:localhost:5900 -N -f yourusername@yourserverip. Замените yourusername и yourserverip на имя пользователя и IP-адрес Debian. Это позволит вашему VNC Viewer подключиться к виртуальной машине.
  5. Теперь запустите tvnviewer.exe и подключитесь к 127.0.0.1:5900. Должны открыться новые окна с вашей новой виртуальной машиной. Прибыль, вы сделали это :)

KVM и его производные имеют VNC-сервер в видеоподсистеме. Поэтому вам нужно взять клиент VNC (любой из широко доступных), настроить виртуальную машину KVM с подключением VNC (обычно я делаю это, поставляя --graphics vnc,port=5900,listen=0.0.0.0 вариант для virt-install программу) и используйте ее для удаленной установки любой операционной системы, которую захотите. Это общий метод доступа к «локальной консоли».