lsblk
самостоятельно будет искать устройства в sysfs
. Многие дистрибутивы Linux имеют обработчик горячего подключения (udev
), который автоматически создает соответствующие узлы в /dev
при появлении блочных устройств и удаляет их при исчезновении устройств.
Либо в вашей системе нет такого обработчика горячего подключения, либо, что более вероятно, он есть, но он не может обработать событие горячего подключения, поэтому вы остались без соответствующего узла /dev
. Для последнего, возможно, файл системного журнала (s )содержит некоторое указание на этот сбой.
Этот пакет VirtualBox предназначен для Debian 10, а не для тестирования Debian (, и даже в этом случае он действительно разработан для Ubuntu ). Есть два способа это исправить:
libvpx5
доступен там; contrib
и установите пакет virtualbox
, который доступен там. Чтобы выполнить одно из этих действий, отредактируйте /etc/apt/apt.conf
, чтобы добавить строку, указывающую, что по умолчанию используется Bullseye (текущее тестирование Debian):
APT::Default-Release "bullseye";
затем добавьте дополнительные репозитории в /etc/apt/sources.list
или новый файл в /etc/apt/sources.list.d
; например, в /etc/apt/sources.list
вы можете получить
deb http://deb.debian.org/debian bullseye main contrib non-free
deb http://deb.debian.org/debian unstable main contrib non-free
если вы должны были отслеживать Яблочко и нестабильность.
См. также рекомендации в руководстве по тестированию Debian .
Как указано в , этот ответ , libvpx5
доступен в Debian 10(buster
). Вы можете установить его, добавив его в свой/etc/apt/sources.list
:
deb http://deb.debian.org/debian/ buster main
Затем запустите apt update && apt-get install libvpx5
.
Однако даже после установки этого и преодоления проблемы с зависимостями я столкнулся с кучей загадочных ошибок при попытке установить virtualbox-6.1
на яблочко. У меня нет полного текста ошибки, но было сказано, что нужно посмотреть /var/log/vbox-setup.log
для получения подробной информации, которая содержала:
Building the main VirtualBox module.
Error building the module:
make V=1 CONFIG_MODULE_SIG= CONFIG_MODULE_SIG_ALL= -C /lib/modules/5.10.0-1-amd64/build M=/tmp/vbox.0 SRCROOT=/tmp/vbox.0 -j16 modules
make[1]: warning: -j16 forced in submake: resetting jobserver mode.
make -C /usr/src/linux-headers-5.10.0-1-amd64 -f /usr/src/linux-headers-5.10.0-1-common/Makefile modules
make -f /usr/src/linux-headers-5.10.0-1-common/scripts/Makefile.build obj=/tmp/vbox.0 \
single-build= \
need-builtin=1 need-modorder=1
...
make[2]: *** [/usr/src/linux-headers-5.10.0-1-common/Makefile:1817: /tmp/vbox.0] Error 2
make[1]: *** [/usr/src/linux-headers-5.10.0-1-common/Makefile:185: __sub-make] Error 2
make: *** [/tmp/vbox.0/Makefile-footer.gmk:117: vboxdrv] Error 2
Я перепробовал все, что мог, чтобы установить его, включая установку пакета нестабильного канала и ручную установку универсальной сборки Linux , ни одна из которых не сработала. Что в итоге сработало, так это следуя инструкциям здесь , чтобы получить исходный код нестабильного пакета, собрать его из исходного кода и установить. Обратите внимание, что строительство заняло много времени.
apt-get source virtualbox=6.1
apt-get build-dep virtualbox=6.1
dpkg-source -x virtualbox_6.1.16-dfsg-6.dsc
cd virtualbox-6.1.16-dfsg
dpkg-buildpackage -rfakeroot -us -uc -b -nc
dpkg -i../virtualbox-dkms_6.1.16-dfsg-6_amd64.deb../virtualbox-source_6.1.16-dfsg-6_amd64.deb
dpkg -i../virtualbox_6.1.16-dfsg-6_amd64.deb
После того, как я задал этот вопрос, я начал использовать KVM/QEMU
Тем, кто будет читать в будущем, я бы порекомендовал отказаться от VirtualBox и использовать KVM/QEMU сvirt-manager
Кривая обучения немного круче, но с помощью этого метода вы можете сделать гораздо больше