Удаление Virtualbox-5.1 в зависшем состоянии

Вопрос или проблема

Я не новичок в Linux и сталкивался с разными странными пакетами или ситуациями установки, но это просто ужасно. На данный момент я бы хотел уничтожить это огнём!

У меня установлен Virtualbox-5.1 в довольно запутанном состоянии. Кажется, что-то пошло не так, когда я пытался обновить его пару месяцев назад, и я не стал разбираться в этом. С тех пор, как я попытался его установить, я получаю сообщения об ошибках каждый раз, когда обновляю пакеты. Конкретно:

Запущенные виртуальные машины найдены

VirtualBox в данный момент работает. Пожалуйста, закройте его и попробуйте снова. Обратите внимание, что выполнение VirtualBox (в частности, демона VBoxSVC) может занять до десяти секунд.

Теперь я выполнил обычные команды ps -aux | grep vbox и ps -aux | grep virtualbox, и могу вас заверить, что ни одного процесса vbox не работает.

Я также проверил /tmp на наличие файлов блокировок, которые должны называться ‘.vbox-username-ipc’. Его там нет.

У меня нет представления, как моя система оказалась в таком состоянии, но я очень хотел бы удалить virtualbox без переустановки. Есть идеи?

У меня была такая же проблема, только немного в другом виде. Я попытался переустановить virtualbox (перейдя с дистрибутива на официальную версию), и он не смог удалить предыдущую версию, поэтому я не смог удалить или установить новую копию. Я смог исправить проблему, создав пустой файл:
/usr/lib/virtualbox/prerm-common.sh

Правка: Сделайте файл исполняемым с помощью chmod +x /usr/lib/virtualbox/prerm-common.sh

Затем выполните sudo apt-get remove virtualbox

У меня была такая же проблема. Я решил её, убив все процессы VB.

  • получите все процессы, содержащие VB

    ps -A | grep VB
    
  • затем убейте все процессы с помощью команды

    sudo kill <pid>
    

замените <pid> на идентификаторы процессов, которые вы получили из вышеуказанной команды.

  • потом выполните

    sudo apt-get remove virtualbox-* --purge
    

У вас может работать служба автоматического запуска VirtualBox. Проверьте, выполнив следующую команду.

sudo systemctl status vboxautostart-service

Если она запущена, то остановите её.

sudo systemctl stop vboxautostart-service

Затем найдите и убейте все запущенные процессы, используя команды ниже. (Должно быть около трёх (3))

ps -A | grep VB
sudo kill <pid>

Наконец, удалите и очистите VirtualBox

sudo apt-get remove virtualbox-* --purge

Я пробовал всё, что предлагали здесь и в других местах, но ничего не сработало. Он продолжал говорить, что Запущенные виртуальные машины найдены. В итоге оказалось, что в /etc/vbox был файл autostart.cfg.

После того как я удалил/переместил этот файл, установка прошла гладко. Трудно поверить, что я потратил так много времени, пытаясь разрешить это.

Ответ был скрыт в посте
Ошибка обновления и удаления.

Выполните следующие команды:

$ whereis vbox

скопируйте все папки из вывода

$ sudo rm -rf (все папки)

$ whereis virtualbox

скопируйте все папки из вывода

$ sudo rm -rf (все папки)

$ sudo apt-get remove virtualbox-* --purge

Вот так я его удалил. Надеюсь, это поможет.

Когда я обновил Virtualbox с версии 6.0 до 6.1, у меня возникла проблема с удалением, похожая на ту, что была описана в этой теме.

Чтобы исправить проблему, я выполнил следующие шаги:

  1. Удалите /usr/bin/virtualbox и /usr/share/virtualbox:

    sudo rm -rfd /usr/share/virtualbox
    sudo rm -rfd /usr/bin/virtualbox
    
  2. Распакуйте virtualbox-6.1_6.1.22-144080_Ubuntu_eoan_amd64.deb и скопируйте данные из virtualbox-6.1_6.1.22-144080_Ubuntu_eoan_amd64/data/usr/lib/virtualbox в /usr/lib/:

    sudo cp -ar ~/virtualbox-6.1_6.1.22-144080_Ubuntu_eoan_amd64/data/usr/lib/virtualbox /usr/lib/
    
  3. Удалите virtualbox:

    sudo apt remove --purge virtualbox-*
    
  4. Переустановите или обновите:

    sudo apt install --reinstall virtualbox-6.1
    
sudo service vboxdrv stop

помогло мне, отсюда https://github.com/buguroo/cuckooautoinstall/issues/8#issuecomment-258797788

Для меня удаление virtualbox потребовало комбинации большинства ответов, упомянутых здесь, и нескольких настроек.

Это предполагает, что вы пытаетесь удалить с оригинальным методом установки или выполняете sudo /opt/VirtualBox/uninstall.sh и любые другие варианты, которые уже не сработали. Это полностью удаляет virtualbox из системы. Сохраните ваши виртуальные машины в другом месте, где вы сможете их сохранить в безопасности.

Как обычно в Интернете, НЕ копируйте и не вставляйте всё! Используйте проверки, чтобы найти правильные местоположения/имена того, что вам нужно, и адаптируйте команды к своему случаю.

1. Сначала убейте процессы vbox

Убедитесь, что процессы virtualbox не работают. Для этого проверьте с помощью ps:

ps -ef | grep VB
ps -ef | grep vbox

Убейте их с помощью:

sudo kill <process_id/pid>
# или:
sudo pkill -9 <process_id/pid>

И проверьте в htop, чтобы убедиться. (почему не просто ps? Я не уверен, почему, но клянусь, что всё ещё мог найти процессы virtualbox в htop)


2. Избавьтесь от служб

Я также избавился от служб, так как они мешали удалению virtualbox. Я сначала остановил эту основную службу:

sudo service vboxdrv stop

Сначала найдите, какие у вас есть:

sudo systemctl list-units | grep virtualbox
sudo systemctl list-units | grep v
sudo systemctl list-units | grep vbox

Затем остановите и отключите их:

sudo systemctl stop vboxballoonctrl-service.service 
sudo systemctl stop vboxweb-service.service 
sudo systemctl stop vboxdrv.service 
sudo systemctl disable vboxballoonctrl-service.service 
sudo systemctl disable vboxweb-service.service 
sudo systemctl disable vboxdrv.service 

Перезагрузите и проверьте, сработало ли:

systemctl daemon-reload
sudo systemctl list-units | grep vbox

Если они всё ещё появляются как неуспешные, просто очистите флаги и проверьте снова:

sudo systemctl reset-failed 
sudo systemctl list-units | grep vbox

Теперь проверьте файлы служб и удалите их:

ls /lib/systemd/system | grep vbox
sudo rm /lib/systemd/system/vbox*.service
ls /lib/systemd/system | grep vbox

3. Удалите virtualbox

Наконец, я исследовал и удалил все файлы virtualbox:

whereis vbox
whereis virtualbox

Замените местоположения выводами предыдущих команд

sudo rm -rf /opt/VirtualBox/
sudo rm -rf /usr/lib/virtualbox/
sudo rm -rf ~/.config/VirtualBox/

Перед удалением я следовал ответу TheBat и ТАКЖЕ создал папку:

mkdir -p /usr/lib/virtualbox/
sudo touch /usr/lib/virtualbox/prerm-common.sh
sudo chmod +x /usr/lib/virtualbox/prerm-common.sh
sudo chmod +x /usr/lib/virtualbox/prerm-common.sh

Проверьте, чтобы не было запущенных процессов virtualbox:

ps -ef | grep VB
ps -ef | grep vbox
htop

Убейте их, если они есть.

Теперь я фактически использовал свой менеджер пакетов для завершения удаления:

sudo apt remove virtualbox-* --purge
sudo apt remove virtualbox --purge
sudo apt remove virtualbox* --purge

Затем просто очистите любые возможные остатки:

sudo apt autopurge
sudo apt autoclean

И всё!
После всего этого я смог установить Virtualbox из .deb файла на официальной странице oracle, и всё работало, как ожидалось!

Ответ или решение

Устранение проблем с VirtualBox-5.1 в зависшем состоянии

Как опытный IT-специалист, вы наверняка столкнулись с различными проблемами при работе с пакетами в Linux. Проблема, связанная с VirtualBox-5.1, когда приложение не удается удалить или обновить из-за зависших процессов, требует комплексного подхода и терпения. Ниже приведены подробные шаги по устранению данной ситуации.

Шаг 1: Проверка работающих процессов

Первое, что вам нужно сделать, — это убедиться, что все процессы, связанные с VirtualBox, действительно остановлены. Для этого выполните следующие команды:

ps -ef | grep vbox
ps -ef | grep virtualbox

Если вы обнаружите работающие процессы, их следует завершить. Сделать это можно с помощью команды kill:

sudo kill <pid>

или, если процессов много, вы можете использовать pkill:

sudo pkill -9 vbox

Шаг 2: Остановка и отключение сервисов

Одной из причин, по которой вы не можете удалить VirtualBox, могут быть активные системные сервисы. Для их остановки выполните команды:

sudo systemctl stop vboxautostart-service
sudo systemctl stop vboxballoonctrl-service
sudo systemctl stop vboxweb-service
sudo systemctl stop vboxdrv.service

Если необходимо, отключите сервисы, чтобы они не запускались автоматически после перезагрузки:

sudo systemctl disable vboxautostart-service
sudo systemctl disable vboxballoonctrl-service
sudo systemctl disable vboxweb-service
sudo systemctl disable vboxdrv.service

Проверьте статус сервисов:

sudo systemctl list-units | grep vbox

Шаг 3: Удаление конфигурационных файлов

Если предыдущие шаги не помогли, возможно, проблема кроется в конфигурационных файлах, которые остались после предыдущих установок. Проверьте наличие файла autostart.cfg в директории /etc/vbox и удалите его:

sudo rm /etc/vbox/autostart.cfg

Шаг 4: Удаление VirtualBox

Теперь вы можете попробовать удалить VirtualBox с помощью команды:

sudo apt-get remove --purge virtualbox-*

Если вы столкнетесь с ошибкой, попробуйте создать пустой файл prerm-common.sh для обхода блокировок:

sudo touch /usr/lib/virtualbox/prerm-common.sh
sudo chmod +x /usr/lib/virtualbox/prerm-common.sh

После этого снова выполните удаление:

sudo apt-get remove --purge virtualbox-*

Шаг 5: Очистка системы

Для завершения процесса можно выполнить чистку оставшихся ненужных пакетов и конфигураций:

sudo apt-get autoremove
sudo apt-get autoclean

Заключение

После выполнения всех вышеуказанных шагов вы должны быть в состоянии успешно удалить VirtualBox-5.1 и подготовить систему для установки новой версии. Если у вас все еще возникают проблемы, возможно, стоит рассмотреть полное удаление оставшихся файлов, используя команды whereis для поиска всех директива, связанных с VirtualBox, и их ручное удаление:

whereis virtualbox

Сохраните свои виртуальные машины в другом месте, если это необходимо, перед удалением. После этого можно начинать новую установку VirtualBox с официального сайта Oracle.

Следуйте этим шагам, и ваша проблема с зависшим состоянием VirtualBox будет успешно решена.

Оцените материал
Добавить комментарий

Капча загружается...