Если вы только что добавили ppa и хотите вернуться, вам необходимо выполнить описанные ниже действия. Понять это может не удастся, если вы установили другие пакеты, которые вы не хотите удалять. Я уверен, что это можно сделать с помощью скрипта. Лично я считаю, что это должно быть частью apt, и должно быть лучшее администрирование, какие пакеты устанавливаются из-за зависимостей и которые устанавливаются по запросу пользователя.
1) удалить ppa из / etc /apt/sources.list Помните время, когда вы добавили ppa. Если вам повезло, вам не нужно быть точным.
2) составить список переустановки с момента установки PPA: cat /var/log/dpkg.log | grep 'upgrade'
3) составить список, что нужно удалить, с момента установки PPA: cat /var/log/dpkg.log | grep 'install'
4) удалите все пакеты с шага 3: sudo apt-get remove {список пакетов с шага 3}
5) переустановите все пакеты с шага 2: sudo apt-get install --reinstall {список пакетов с шага 2}
6) Если все пошло не так, и вы не можете придумать решение, верните PPA и переустановите все пакеты из двух списков. [ ! d6]
В основном после установки этих двух пакетов вам также нужно выполнить реконфигурацию:
sudo dpkg-reconfigure virtualbox-dkms
sudo dpkg-reconfigure virtualbox
sudo modprobe vboxdrv
И исправить eth0:
sudo modprobe vboxnetflt
Я решил эту проблему следующими командами:
sudo apt-get install linux-headers-generic
sudo dpkg-reconfigure virtualbox-dkms
Причина проблемы в том, что вы загрузили ядро 3.11, а dpkg-reconfigure ожидает ядро 3.13. Вот почему вы получаете сообщение «нет подходящего модуля для работающего ядра».
Обязательно обновите свой загрузчик.
В моем случае загрузчик обновлен из другой ОС (Debian), и загрузка на него и запуск sudo update-grub решили проблему.
Я использовал это руководство: https://www.virtualbox.org/wiki/Linux_Downloads
Это работает для меня:
echo "deb http://download.virtualbox.org/virtualbox/debian vivid contrib" > /etc/apt/sources.list.d/virtualbox.list
wget -q https://www.virtualbox.org/download/oracle_vbox.asc -O- | sudo apt-key add -
apt-get purge virtualbox
apt-get update
apt-get install -y virtualbox-5.0 dkms
В моем случае проблема заключалась в установке виртуального бокса-4.1 вместе с Virtualbox-4.2. Как только я удалю 4.1, я мог бы запустить sudo /etc/init.d/vboxdrv setup и sudo modprobe vboxdrv просто отлично, а также запустить виртуальные машины.
Вы должны проверить версию gcc, которую используете. Я столкнулся с одной и той же проблемой компиляции ядра virtualbox. Я исправил проблему, используя этот пост https://www.virtualbox.org/ticket/12467
Возможно, вы используете устаревшую версию gcc, которая отличается от gcc, используемой ядром Linux.
Проверьте версию по умолчанию, которую вы используете:
gcc -v
Mine - версия gcc 4.4.7 (Ubuntu / Linaro 4.4.7-8ubuntu1)
И gcc версия вашего ядра была скомпилирована с помощью
dmesg | more
[ 0.000000] Linux version 3.13.0-83-generic (buildd@lgw01-55) (gcc version 4.8.2 (Ubuntu 4.8.2-19ubuntu1) ) #127-Ubuntu SMP Fri Mar 11 00:25:37 UTC 2016 (Ubuntu 3.13.0-83.127-generic 3.13.11-ckt35)
или с помощью
dpkg -l gcc
Если версии gcc различны, как в моей системе, переключите ваш gcc-компилятор по умолчанию
, то установка virtualbox-dkms должна работать нормально
sudo apt-get --reinstall install virtualbox-dkms
Ключ здесь: Пожалуйста, установите пакет virtualbox-dkms и соответствующие заголовки, скорее всего, linux-headers-generic.
Поскольку у вас есть первый, он все равно должен захотеть второй.
sudo apt-get install linux-headers-generic
Затем убедитесь, что все обновлено.
sudo apt-get update
sudo apt-get upgrade
У меня была такая же проблема. Я обнаружил, что источником проблемы является, скорее всего, то, что я использую настраиваемое ядро.
Загрузка последнего пакета .deb с сайта virtualbox.org и установка его с помощью dpkg -i решили проблему в мой случай.