Найти в Дзене
LITVINOV-UPGRADE-LINUX

[решено]-VirtualBox-ошибка запуска NS_ERROR_FAILURE (0X80004005)

В какой-то момент на Astra Linux 1.7.7.7 перестали запускаться виртуальные машины в VirtualBox 7.0.20 c ошибкой: The virtual machine 'ХХХ-ХХХ' has terminated unexpectedly during startup with exit code 1 (0x1). Код ошибки: NS_ERROR_FAILURE (0X80004005) Компонент: MachineWrap Интерфейс: IMachine {300763af-5d6b-46e6-aa96-273eac15538a} В первом приближение эта проблема связана с VirtualBox_Extension_Pack (не соответствие версий, обновление и подобные вещи) . Хорошо еще раз ставим Extention_Pack: sudo VBoxManage extpack install ./Oracle_VM_VirtualBox_Extension_Pack-7.0.20.vbox-extpack Но получается набор ошибок: 0%...NS_ERROR_FAILURE VBoxManage: error: Failed to install "/home/astra/Загрузки/Oracle_VM_VirtualBox_Extension_Pack-7.0.20.vbox-extpack" VBoxManage: error: The installer failed with exit code 1: VBoxExtPackHelperApp: error: The owner is not root: '/usr' VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component ExtPackManagerWrap, interface IExtPackManager VBoxManag
Оглавление

Текст ошибки

В какой-то момент на Astra Linux 1.7.7.7 перестали запускаться виртуальные машины в VirtualBox 7.0.20 c ошибкой:

The virtual machine 'ХХХ-ХХХ' has terminated unexpectedly during startup with exit code 1 (0x1).
Код ошибки: NS_ERROR_FAILURE (0X80004005)
Компонент: MachineWrap
Интерфейс: IMachine {300763af-5d6b-46e6-aa96-273eac15538a}

Пояснение

В первом приближение эта проблема связана с VirtualBox_Extension_Pack (не соответствие версий, обновление и подобные вещи) . Хорошо еще раз ставим Extention_Pack:

sudo VBoxManage extpack install ./Oracle_VM_VirtualBox_Extension_Pack-7.0.20.vbox-extpack

Но получается набор ошибок:

0%...NS_ERROR_FAILURE
VBoxManage: error: Failed to install "/home/astra/Загрузки/Oracle_VM_VirtualBox_Extension_Pack-7.0.20.vbox-extpack"
VBoxManage: error: The installer failed with exit code 1: VBoxExtPackHelperApp: error: The owner is not root: '/usr'
VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component ExtPackManagerWrap, interface IExtPackManager
VBoxManage: error: Context: "RTEXITCODE handleExtPack(HandlerArg*)" at line 1910 of file VBoxManageMisc.cpp

В принципе из текста видно что проблема с правами /usr , смотрим права:

ls /usr -la

И да по какой-то причине права для этой папки изменены с root на пользовательские

Важно:

Достаточно много статей предлагают назначить права root рекурсивно на всю папку - этого не стоит делать!!!

Возьмем скрипт который выводит права и пользователей для всей папки /usr

find_non_root_dirs.sh

#!/bin/bash
# Директория для поиска
TARGET_DIR="/usr"
# Находим все папки, где владелец не root
find "$TARGET_DIR" -type d ! -user root 2>/dev/null | while read -r dir; do
# Получаем информацию о владельце и правах
owner=$(stat -c "%U" "$dir")
permissions=$(stat -c "%a" "$dir")
# Выводим информацию
echo "Папка: $dir"
echo "Владелец: $owner"
echo "Права: $permissions"
echo "----------------------------------"
done

в результате :

*********
Папка: /usr/lib/firmware/nvidia
Владелец: astra
Права: 755
----------------------------------
Папка: /usr/lib/firmware/nvidia/gp104
Владелец: astra
Права: 755
----------------------------------
Папка: /usr/lib/firmware/nvidia/gp104/nvdec
Владелец: astra
Права: 755
----------------------------------
***********

Просмотрев весь список видно, что просто назначив все права рекурсивно можно зацепить полезные файлы. Кстати, многие потом страдают получая проблемы с разными компонентами системы.

Решение

Проверяем права папки /usr

ls -ld /usr    

Они должны быть: 

         drwxr-xr-x 15 root root 4096 сен  6  2024 /usr

Если нет, исправляем права только для одной папки

sudo chown root:root /usr

Ставим пакет (скачать можно с сайта: https://www.virtualbox.org/wiki/Download_Old_Builds_7_0)

sudo VBoxManage extpack install ./Oracle_VM_VirtualBox_Extension_Pack-7.0.20.vbox-extpack

License accepted. For batch installation add
--accept-license=33d7284dc4a0ece381196fda3cfe2ed0e1e8e7ed7f27b9a9ebc4ee22e24bd23c
to the VBoxManage command line.
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Successfully installed "Oracle VM VirtualBox Extension Pack".

Результат

Виртуальные машины стали нормально запускаться после установки правильного пакета. Важно чтобы версия VirtualBox и VirtualBox_Extension_Pack совпадали.