Решено в этой ветке форума . Ниже приведена суть этого.
Главное, чего не хватало, это то, что в гостевом ядре не было модулей virtio . С учетом этого есть несколько способов создать эту сеть. Вот один:
brctl addbr brkvm
ip addr add 192.168.56.101/24 dev brkvm
ip link set brkvm up
mkdir /etc/qemu
touch /etc/qemu/bridge.conf
echo "allow brkvm" >> /etc/qemu/bridge.conf
qemu-system-x86_64 -enable-kvm -m 1024 -kernel./vmlinuz -initrd./initramfs.igz -append "console=ttyS0" -nographic -netdev bridge,id=bridge,br=brkvm -device virtio net-pci,netdev=bridge
После этого eth0 появится как интерфейс внутри гостя. Достаточно установить его IP-адрес, скажем, 192.168.56.102/24 и поднять его. Затем ping от гостя до brkvm на стороне хоста и от хоста до eth0 на стороне гостя работает нормально.
Вы, вероятно, столкнулись с проблемами, так как не похоже, что вы правильно указали источник своей среды, если то, что вы опубликовали, является точным. Я также рекомендую вам указать, какую версию Python вы используете, чтобы избежать проблем с совместимостью, когда у вас есть и python2, и python3. Если это не так, отредактируйте свой вопрос, и этот ответ можно будет удалить или отредактировать в свою очередь.
Основы создания виртуальной среды Python 3:
python3 -m venv /path/to/virtual/env
source./path/to/virtual/env/bin/activate
Возможно, вам потребуется сначала установить venv
(apt install python3-venv
)и помнить, что ваш путь и сама виртуальная среда должны быть местом, в которое у вашего пользователя есть разрешение на запись. В этот момент вы должны находиться в своей виртуальной среде((env) user@host:~$ _
).
Вам не нужно sudo
с pip
. Использование sudo
с pip
устанавливает пакет глобально/для всей системы -. Это в значительной степени противоречит цели вашей виртуальной среды, которая состоит в том, чтобы изолировать среду Python для разработки и тестирования.Обратитесь к официальному Python и документации по проблемному пакету, если они не устанавливаются должным образом без sudo
, так как это может означать, что вам не хватает зависимости или дополнительных конфигураций в вашей виртуальной среде.
В системе Debian 9.8 (Linux 4.9.0 -8 -amd64 )выполнение вышеуказанных шагов, а затем выполнение следующих дало мне следующие результаты:
(env) user@host:~$ pip3 install flask
(env) user@host:~$ pip3 list --format=legacy
Click (7.0)
Flask (1.0.2)
itsdangerous (1.1.0)
Jinja2 (2.10)
MarkupSafe (1.1.1)
pip (9.0.1)
pkg-resources (0.0.0)
setuptools (32.3.1)
Wekzeug (0.15.1)
(env) user@host:~$ python3 --version
Python 3.5.3