Вопрос или проблема
У меня получается загрузить ноутбук в режим Попробовать или установить, но установка зависает на экране “Подготовка Ubuntu” и выдает ошибку через примерно 30 секунд. Обратная трассировка выглядит следующим образом
Traceback (most recent call last):
File "/snap/ubuntu-desktop-bootstrap/237/bin/subiquity/subiquity/server/server.py", line 1004, in start
await super().start()
File "/snap/ubuntu-desktop-bootstrap/237/bin/subiquity/subiquitycore/core.py", line 126, in start
self.start_controllers()
File "/snap/ubuntu-desktop-bootstrap/237/bin/subiquity/subiquitycore/core.py", line 120, in start_controllers
controller.start()
File "/snap/ubuntu-desktop-bootstrap/237/bin/subiquity/subiquity/server/controllers/network.py", line 146, in start
super().start()
File "/snap/ubuntu-desktop-bootstrap/237/bin/subiquity/subiquitycore/controllers/network.py", line 183, in start
self.observer, self._observer_fds = self.app.prober.probe_network(
File "/snap/ubuntu-desktop-bootstrap/237/bin/subiquity/subiquitycore/prober.py", line 40, in probe_network
return observer, observer.start()
File "/snap/ubuntu-desktop-bootstrap/237/lib/python3.10/site-packages/probert/network.py", line 648, in start
with CoalescedCalls(self):
File "/snap/ubuntu-desktop-bootstrap/237/usr/lib/python3.10/contextlib.py", line 142, in __exit__
next(self.gen)
File "/snap/ubuntu-desktop-bootstrap/237/lib/python3.10/site-packages/probert/network.py", line 630, in CoalescedCalls
meth(obj, action, data)
File "/snap/ubuntu-desktop-bootstrap/237/lib/python3.10/site-packages/probert/network.py", line 709, in link_change
udev_data = dict(udev_device)
File "/snap/ubuntu-desktop-bootstrap/237/usr/lib/python3/dist-packages/pyudev/device/_device.py", line 945, in __getitem__
return self.properties.__getitem__(prop)
File "/snap/ubuntu-desktop-bootstrap/237/usr/lib/python3/dist-packages/pyudev/device/_device.py", line 1068, in __getitem__
return ensure_unicode_string(value)
File "/snap/ubuntu-desktop-bootstrap/237/usr/lib/python3/dist-packages/pyudev/_util.py", line 64, in ensure_unicode_string
value = value.decode(sys.getfilesystemencoding())
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xec in position 80: invalid continuation byte
Отключите сетевое подключение (Wi‑Fi и любые другие интерфейсы) перед запуском установки Ubuntu. После завершения установки вы можете снова включить сетевые устройства. Это временное решение предотвращает возникновение ошибки, связанной с не UTF8-данными вашего сетевого оборудования.
.
Ответ или решение
Введение в установку Ubuntu в конфигурации двойной загрузки на современных ноутбуках, таких как HP Victus, может вызвать ряд технических сложностей. Одна из них связана с ошибкой на этапе «Подготовка Ubuntu», что чаще всего связано с несовместимостью сети и проблемами с декодированием символов. Давайте рассмотрим данную проблему подробно и рассмотрим возможные решения.
Теоретическое обоснование проблемы
При установке Ubuntu через инсталляционный процесс Subiquity, особенно в режиме прямой загрузки (Live CD), система должна корректно распознать и инициализировать все аппаратные компоненты, включая сетевые устройства. Проблема, с которой вы столкнулись, связана с сетевыми драйверами и неверной интерпретацией данных, поступающих с сетевых устройств. Traceback ошибки указывает на то, что в момент инициализации сети происходит ошибка декодирования символа, который не может быть интерпретирован в кодировке UTF-8. Это говорит о возможности наличия неправильно переданного или повреждённого сетевого пакета, который нарушает работу программы.
Пример реальной проблемы
Рассмотрим сам traceback ошибки, который показывает, что ошибка происходит при вызове метода ensure_unicode_string
внутри пакета pyudev
. Код максимально подробно описывает, что неудачная попытка декодирования байта с неправильным продолжением (0xec) приводит к возникновению ошибки UnicodeDecodeError. Это чётко указывает на то, что полученное из сети значение не соответствует ожидаемому формату UTF-8.
Применение теории для решения проблемы
Шаг 1: Отключение сетевых интерфейсов
Самым простым решением в данном случае остаётся предложение отключить все сетевые интерфейсы перед началом установки. Это включает Wi-Fi и проводное соединение (если имеется). Это позволит избежать сбоя в начальной стадии установки из-за неверных данных, поступающих в режиме Live CD.
Используйте следующие шаги для отключения сетевых устройств:
- Зайдите в BIOS/UEFI вашего ноутбука (нажатием клавиши Esc, F2, F10 или другой, в зависимости от модели) и временно отключите встроенный сетевой адаптер.
- Во время загрузки в режим "Try Ubuntu" откройте терминал (например, нажав Ctrl+Alt+T) и выполните команду
nmcli networking off
для отключения сетевых функций.
Шаг 2: Изменение настроек в BIOS/UEFI
Проверьте настройки BIOS/UEFI вашего ноутбука:
- Убедитесь, что Secure Boot отключен, так как он может мешать установке других операционных систем.
- Проверьте наличие режима "Fast Boot" и отключите его, чтобы избежать пропуска важных шагов инициализации.
Шаг 3: Установка Ubuntu
Продолжите установку Ubuntu, следуя шагам инсталлятора. После завершения установки и первой перезагрузки вы можете вернуться в BIOS/UEFI и снова включить сетевые устройства или включить их в самой системе командой nmcli networking on
.
Шаг 4: Обновление системы
После установки обновите пакеты и ядро командой:
sudo apt update && sudo apt upgrade -y
Это может включать обновления, которые исправляют предыдущие проблемы совместимости.
Заключение
Следуя описанным выше шагам, вы сможете успешно установить Ubuntu 24.04 в качестве части системы двойной загрузки на вашем ноутбуке HP Victus. Данный подход позволит избежать ошибок, связанных с неверной обработкой данных сети, и обеспечить стабильную работу новой системы. В будущем, для предотвращения подобных проблем, всегда следите за обновлениями и возможными патчами от разработчиков Ubuntu, которые могут включать исправления для поддержки новейших аппаратных решений.