Популярные и часто упоминаемые системы виртуализации:
KVM — механизм, реализованный в ядре Linux, позволяющий запускать немодифицированные ядра ОС Linux, Windows, FreeBSD и т.д. Используется аппаратная виртуализация, Intel VT или AMD-V. Так как KVM — механизм ядра, для удобной работы требуется менеджер виртуальных машин, например, Virtual Machine Manager или ProxMox. KVM-виртуализация часто применяется хостинг-провайдерами для организации услуги VDS/VPS (Virtual Dedicated Server/Virtual Private Server).
XEN позволяет запускать операционные системы с немодифицированным ядром (требуется аппаратная виртуализация Intel VT или AMD-V) либо с модифицированным ядром (паравиртуализация). Что интересно, возможен запуск виртуальной машины в режиме паравиртуализации внутри виртуальной машины, использующей аппаратную виртуализацию.
OpenVZ — технология контейнерной виртуализации, по которой могут виртуализироваться только Linux-операционные системы. Как и KVM, также часто используется хостинг-провайдерами для организации услуги VDS/VPS. Стоит отметить, что в отличие от KVM или XEN, как и в другой контейнерной виртуализации, пользователь VDS не имеет возможности установить нестандартные модули ядра.
LXC (Linux container) — технология контейнерной виртуализации, сходная с OpenVZ. ProxMox позволял работать с OpenVZ. C 4-й версии поддерживает LXC.
Docker — также технология контейнерной виртуализации. Изначально использовалась LXC, теперь применяет собственную библиотеку виртуализации.
Серверная и клиентская виртуализация
Cерверная виртуализация применяется для более гибкой настройки веб-узлов, возможности их перемещения между физическим оборудованием (миграция), надежности, предоставления услуг VDS/VPS.
Но виртуализация возможна не только на серверной, но и на клиентской стороне. На стороне клиента виртуализация позволяет использовать возможности других операционных систем, не эмулируя и не транслируя системные вызовы (как это происходит с Wine в Linux, или в Linux-подсистеме в Windows 10), а запуская в качестве гостевой операционной системы. Это позволяет осуществлять разработку программных средств в одной системе, работая при этом в другой, использовать виртуальную машину в качестве песочницы для анализа вредоносного программного кода либо в целях обучения, не отказываясь от основной операционной системы. Мы будем применять виртуализацию для последней цели.
В Windows и Linux доступны VMWare Workstation/VMWare Player, для Windows, Linux и также в Mac OS X доступна система Oracle VirtualBox.
Крайне не рекомендуется для изучения Linux сносить вашу операционную систему (так как можно не суметь ее полноценно настроить, удалить по ошибке важные данные, а также не суметь прослушать вебинар из-за отсутствия поддержки Flash в браузере Chromium). Установите VMWare Player или VirtualBox. Также можете купить VDS c установленной ОС (Ubuntu) для параллельного изучения. Но такой способ рекомендуется как дополнительный, полноценная работа с ОС невозможна без понимания механизмов ее установки, запуска и работы с ядром (например, установка и удаление модуля ядра, что невозможно для контейнерной виртуализации).