КВМ (Kernel-based Virtual Machine) — это виртуализационная технология, которая позволяет запускать несколько виртуальных машин на одном физическом компьютере с использованием аппаратного обеспечения.
Одним из важных аспектов виртуализации является возможность обмена данными между хост-системой (физическим компьютером) и гостевыми операционными системами. В KVM это можно выполнить с помощью shared папки.
Shared папка — это специальная директория, которая доступна как в гостевой операционной системе, так и в хост-системе. Это позволяет удобно передавать файлы и обмениваться данными между различными виртуальными машинами и хост-системой.
Настройка shared папки в KVM на Linux — несложная задача. В этом простом руководстве я покажу, как создать и настроить shared папку на хост-системе, а также как ее подключить в гостевую операционную систему.
Настройка shared папки в KVM на Linux
Shared папка позволяет обмениваться файлами между хостовой и гостевой ОС, что может быть полезным, например, при разработке программного обеспечения или проведении тестов. Чтобы настроить shared папку в KVM на Linux, следуйте этим простым шагам:
- Установите пакеты qemu-guest-agent и libvirt-daemon в хостовой и гостевой системах:
- Для установки пакетов на хостовой системе выполните команду:
sudo apt-get install qemu-guest-agent libvirt-daemon
- Для установки пакетов на гостевой системе выполните команду:
sudo apt-get install qemu-guest-agent
- Настройте shared папку в гостевой системе:
- Откройте файл
/etc/fstab
в гостевой системе с помощью текстового редактора - Добавьте следующую строку в файл
/etc/fstab
:host_share /media/shared 9p trans=virtio 0 0
- Сохраните изменения и закройте файл
- Настройте shared папку в хостовой системе:
- Откройте файл
/etc/libvirt/qemu.conf
в хостовой системе с помощью текстового редактора - Раскомментируйте и измените следующие строки:
user = "root"
group = "root"
dynamic_ownership = 1
- Сохраните изменения и закройте файл
- Перезапустите сервис libvirtd командой:
sudo service libvirtd restart
- Перезапустите гостевую систему KVM
После выполнения этих шагов shared папка будет настроена и доступна для обмена файлами между хостовой и гостевой системами KVM на Linux.
Установка необходимых пакетов
Перед тем, как начать настройку shared папки в KVM на Linux, необходимо установить несколько пакетов.
Для управления виртуальными машинами на Linux, вам понадобится пакет «libvirt». Вы можете установить его с помощью следующей команды:
Дистрибутив | Команда установки |
---|---|
Debian/Ubuntu | sudo apt install libvirt-daemon |
Fedora/CentOS | sudo dnf install libvirt-daemon |
Также вам понадобится пакет «qemu-kvm», который предоставляет возможность запуска виртуальных машин на Linux. Установите его с помощью следующей команды:
Дистрибутив | Команда установки |
---|---|
Debian/Ubuntu | sudo apt install qemu-kvm |
Fedora/CentOS | sudo dnf install qemu-kvm |
После установки этих пакетов вы будете готовы к настройке shared папки в KVM на Linux.
Создание shared папки
Для создания shared папки в KVM на Linux, следуйте этим простым шагам:
- Откройте терминал на хост-системе, на которой запущена виртуальная машина KVM.
- Введите команду
sudo mkdir /mnt/shared
для создания директории, которая будет использоваться как shared папка. - Затем введите команду
sudo chmod 777 /mnt/shared
для изменения разрешений доступа к этой папке и разрешения владельца. - Теперь смонтируйте shared папку в виртуальной машине. Для этого введите команду
sudo mount -t 9p -o trans=virtio,version=9p2000.L,access=any none /mnt/shared
. Обратите внимание, что к этой команде нужно добавить следующие настройки в XML-файле виртуальной машины. - Сохраните изменения в файле и перезагрузите виртуальную машину.
Теперь вы можете использовать shared папку в виртуальной машине KVM на Linux. Все файлы, созданные или измененные в этой папке, будут доступны и на хост-системе, и в виртуальной машине.
Настройка доступа к shared папке
После настройки shared папки в KVM на Linux, вам может потребоваться настроить доступ к этой папке с других устройств в сети. В данной статье мы рассмотрим несколько способов настройки доступа к shared папке.
1. Через Samba:
Для настройки доступа к shared папке через Samba вам потребуется установить и настроить пакет Samba на вашем сервере.
1.1 Установите пакет Samba:
sudo apt-get install samba
1.2 Настройте файл smb.conf:
Откройте файл smb.conf в текстовом редакторе:
sudo nano /etc/samba/smb.conf
Добавьте следующую секцию в файл smb.conf:
[shared]
comment = Shared Folder
path = /path/to/shared/folder
browsable = yes
guest ok = no
read only = no
create mask = 0755
Замените /path/to/shared/folder
на путь к вашей shared папке. Укажите нужные вам параметры для доступа.
1.3 Перезапустите сервис Samba:
sudo service smbd restart
Теперь вы можете подключиться к shared папке через Samba с других устройств в сети, используя SMB-протокол.
2. Через NFS:
Для настройки доступа к shared папке через NFS вам потребуется установить и настроить пакет NFS на вашем сервере.
2.1 Установите пакет NFS:
sudo apt-get install nfs-kernel-server
2.2 Настройте файл exports:
Откройте файл exports в текстовом редакторе:
sudo nano /etc/exports
Добавьте следующую строку в файл exports:
/path/to/shared/folder *(rw,sync,no_subtree_check)
Замените /path/to/shared/folder
на путь к вашей shared папке.
2.3 Обновите список экспортируемых файловых систем:
sudo exportfs -ra
Теперь вы можете подключиться к shared папке через NFS с других устройств в сети.
Это лишь два из множества способов настройки доступа к shared папке в KVM на Linux. Выберите наиболее подходящий способ в зависимости от ваших потребностей и предпочтений.
Проверка и использование shared папки
После настройки shared папки в KVM на Linux, необходимо проверить ее работу и начать использовать.
Чтобы проверить, что shared папка успешно настроена и доступна, выполните следующие шаги:
- Запустите виртуальную машину, в которой вы настроили shared папку.
- Войдите в виртуальную машину и откройте терминал.
- Создайте папку, в которую будете монтировать shared папку. Например, с помощью команды
mkdir /mnt/shared
. - Воспользуйтесь командой
mount -t 9p -o trans=virtio,version=9p2000.L /share /mnt/shared
, где/share
— имя shared папки, а/mnt/shared
— путь, по которому она будет монтироваться. - Проверьте содержимое папки
/mnt/shared
с помощью командыls /mnt/shared
.
Если все настроено правильно, вы должны увидеть файлы и папки, которые находятся в shared папке.
Теперь, когда вы успешно проверили работу shared папки, вы можете начать использовать ее для обмена данными между хостовой и виртуальной операционной системами. Вы можете копировать файлы, изменять их, удалять и перемещать, и все изменения будут отражаться и на хостовой и на виртуальной машине. Это очень удобно в случае, если вам нужно передать файлы или данные между разными операционными системами.