Installer crashes when attempting to install on a Dell Inspiron 3217u from around 2012

Hi all, I recently moved from Arch to Fedora, and whilst trying to install, everything goes fine until the boot loader install. Anaconda throws a vague “unknown error” and crashes.
Here is Anaconda’s traceback (truncated to remove random journald stuff)

anaconda 38.23.4 exception report
Traceback (most recent call first):
  File "/usr/lib/python3.11/site-packages/dasbus/client/handler.py", line 509, in _handle_method_error
    raise exception from None
  File "/usr/lib/python3.11/site-packages/dasbus/client/handler.py", line 483, in _get_method_reply
    return self._handle_method_error(error)
  File "/usr/lib/python3.11/site-packages/dasbus/client/handler.py", line 450, in _call_method
    return self._get_method_reply(
  File "/usr/lib64/python3.11/site-packages/pyanaconda/modules/common/task/__init__.py", line 46, in sync_run_task
    task_proxy.Finish()
  File "/usr/lib64/python3.11/site-packages/pyanaconda/installation.py", line 439, in run_install_bootloader
    sync_run_task(STORAGE.get_proxy(task))
  File "/usr/lib64/python3.11/site-packages/pyanaconda/installation_tasks.py", line 246, in _run
    self._task_cb(*self._task_args, **self._task_kwargs)
  File "/usr/lib64/python3.11/site-packages/pyanaconda/installation_tasks.py", line 75, in start
    self._run()
  File "/usr/lib64/python3.11/site-packages/pyanaconda/installation_tasks.py", line 188, in _run
    item.start()
  File "/usr/lib64/python3.11/site-packages/pyanaconda/installation_tasks.py", line 75, in start
    self._run()
  File "/usr/lib64/python3.11/site-packages/pyanaconda/installation_tasks.py", line 188, in _run
    item.start()
  File "/usr/lib64/python3.11/site-packages/pyanaconda/installation_tasks.py", line 75, in start
    self._run()
  File "/usr/lib64/python3.11/site-packages/pyanaconda/installation_tasks.py", line 188, in _run
    item.start()
  File "/usr/lib64/python3.11/site-packages/pyanaconda/installation_tasks.py", line 75, in start
    self._run()
  File "/usr/lib64/python3.11/site-packages/pyanaconda/installation.py", line 515, in _run_installation
    queue.start()
  File "/usr/lib64/python3.11/site-packages/pyanaconda/installation.py", line 80, in run
    self._run_installation(
  File "/usr/lib64/python3.11/site-packages/pyanaconda/modules/common/task/task.py", line 109, in _task_run_callback
    self._set_result(self.run())
  File "/usr/lib64/python3.11/site-packages/pyanaconda/modules/common/task/task.py", line 96, in _thread_run_callback
    self._task_run_callback()
  File "/usr/lib64/python3.11/threading.py", line 975, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/lib64/python3.11/site-packages/pyanaconda/threading.py", line 275, in run
    threading.Thread.run(self)
  File "/usr/lib64/python3.11/site-packages/pyanaconda/threading.py", line 166, in raise_if_error
    raise exc_info[1]
  File "/usr/lib64/python3.11/site-packages/pyanaconda/modules/common/task/task.py", line 175, in finish
    threadMgr.raise_if_error(self._thread_name)
  File "/usr/lib64/python3.11/site-packages/pyanaconda/ui/gui/spokes/installation_progress.py", line 75, in _on_installation_done
    self._task.finish()
  File "/usr/lib64/python3.11/site-packages/pyanaconda/core/signal.py", line 41, in emit
    func(obj, *args, **kargs)
  File "/usr/lib64/python3.11/site-packages/pyanaconda/modules/common/task/runnable.py", line 115, in _task_stopped_callback
    self._stopped_signal.emit()
  File "/usr/lib64/python3.11/site-packages/pyanaconda/core/async_utils.py", line 68, in _idle_method
    func(*args, **kwargs)
pyanaconda.modules.common.errors.general.AnacondaError: 'utf-8' codec can't decode byte 0xff in position 1118: invalid start byte

Local variables in innermost frame:
self: <dasbus.client.handler.ClientObjectHandler object at 0x7f9369089cc0>
error: g-io-error-quark: GDBus.Error:org.fedoraproject.Anaconda.Error: 'utf-8' codec can't decode byte 0xff in position 1118: invalid start byte (36)
name: org.fedoraproject.Anaconda.Error
cls: <class 'pyanaconda.modules.common.errors.general.AnacondaError'>
message: 'utf-8' codec can't decode byte 0xff in position 1118: invalid start byte
exception: 'utf-8' codec can't decode byte 0xff in position 1118: invalid start
INFO:program:Running in chroot '/mnt/sysroot'... grub2-mkconfig -o /boot/grub2/grub.cfg
INFO:program:Generating grub configuration file ...
INFO:program:Found Windows Boot Manager on /dev/sda1@/EFI/Microsoft/Boot/bootmgfw.efi
INFO:program:Found Fedora Linux 38 (Workstation Edition) on /dev/sdb3
INFO:program:Adding boot menu entry for UEFI Firmware Settings ...
INFO:program:done
DEBUG:program:Return code: 0
INFO:anaconda.threading:Thread Failed: AnaTaskThread-InstallBootloaderTask-1 (140103269299904)
ERROR:anaconda.modules.common.task.task:Thread AnaTaskThread-InstallBootloaderTask-1 has failed: Traceback (most recent call last):
  File "/usr/lib64/python3.11/site-packages/pyanaconda/threading.py", line 275, in run
    threading.Thread.run(self)
  File "/usr/lib64/python3.11/threading.py", line 975, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/lib64/python3.11/site-packages/pyanaconda/modules/common/task/task.py", line 96, in _thread_run_callback
    self._task_run_callback()
  File "/usr/lib64/python3.11/site-packages/pyanaconda/modules/common/task/task.py", line 109, in _task_run_callback
    self._set_result(self.run())
                     ^^^^^^^^^^
  File "/usr/lib64/python3.11/site-packages/pyanaconda/modules/storage/bootloader/installation.py", line 139, in run
    install_boot_loader(storage=self._storage)
  File "/usr/lib64/python3.11/site-packages/pyanaconda/modules/storage/bootloader/utils.py", line 215, in install_boot_loader
    storage.bootloader.write()
  File "/usr/lib64/python3.11/site-packages/pyanaconda/modules/storage/bootloader/efi.py", line 119, in write
    self.install()
  File "/usr/lib64/python3.11/site-packages/pyanaconda/modules/storage/bootloader/efi.py", line 128, in install
    self.remove_efi_boot_target()
  File "/usr/lib64/python3.11/site-packages/pyanaconda/modules/storage/bootloader/efi.py", line 92, in remove_efi_boot_target
    buf = self.efibootmgr(capture=True)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.11/site-packages/pyanaconda/modules/storage/bootloader/efi.py", line 61, in efibootmgr
    return exec_func("efibootmgr", list(args), **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.11/site-packages/pyanaconda/core/util.py", line 356, in execWithCapture
    return _run_program(argv, stdin=stdin, root=root, log_output=log_output,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.11/site-packages/pyanaconda/core/util.py", line 283, in _run_program
    output_string = output_string.decode("utf-8")
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 1118: invalid start byte

INFO:anaconda.threading:Thread Done: AnaTaskThread-InstallBootloaderTask-1 (140103269299904)
WARNING:dasbus.server.handler:The call org.fedoraproject.Anaconda.Task.Finish has failed with an exception:
Traceback (most recent call last):
  File "/usr/lib/python3.11/site-packages/dasbus/server/handler.py", line 455, in _method_callback
    result = self._handle_call(
             ^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/dasbus/server/handler.py", line 265, in _handle_call
    return handler(*parameters, **additional_args)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.11/site-packages/pyanaconda/modules/common/task/task_interface.py", line 114, in Finish
    self.implementation.finish()
  File "/usr/lib64/python3.11/site-packages/pyanaconda/modules/common/task/task.py", line 175, in finish
    threadMgr.raise_if_error(self._thread_name)
  File "/usr/lib64/python3.11/site-packages/pyanaconda/threading.py", line 166, in raise_if_error
    raise exc_info[1]
  File "/usr/lib64/python3.11/site-packages/pyanaconda/threading.py", line 275, in run
    threading.Thread.run(self)
  File "/usr/lib64/python3.11/threading.py", line 975, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/lib64/python3.11/site-packages/pyanaconda/modules/common/task/task.py", line 96, in _thread_run_callback
    self._task_run_callback()
  File "/usr/lib64/python3.11/site-packages/pyanaconda/modules/common/task/task.py", line 109, in _task_run_callback
    self._set_result(self.run())
                     ^^^^^^^^^^
  File "/usr/lib64/python3.11/site-packages/pyanaconda/modules/storage/bootloader/installation.py", line 139, in run
    install_boot_loader(storage=self._storage)
  File "/usr/lib64/python3.11/site-packages/pyanaconda/modules/storage/bootloader/utils.py", line 215, in install_boot_loader
    storage.bootloader.write()
  File "/usr/lib64/python3.11/site-packages/pyanaconda/modules/storage/bootloader/efi.py", line 119, in write
    self.install()
  File "/usr/lib64/python3.11/site-packages/pyanaconda/modules/storage/bootloader/efi.py", line 128, in install
    self.remove_efi_boot_target()
  File "/usr/lib64/python3.11/site-packages/pyanaconda/modules/storage/bootloader/efi.py", line 92, in remove_efi_boot_target
    buf = self.efibootmgr(capture=True)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.11/site-packages/pyanaconda/modules/storage/bootloader/efi.py", line 61, in efibootmgr
    return exec_func("efibootmgr", list(args), **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.11/site-packages/pyanaconda/core/util.py", line 356, in execWithCapture
    return _run_program(argv, stdin=stdin, root=root, log_output=log_output,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.11/site-packages/pyanaconda/core/util.py", line 283, in _run_program
    output_string = output_string.decode("utf-8")
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 1118: invalid start byte


/proc/cmdline:
BOOT_IMAGE=/images/pxeboot/vmlinuz root=live:CDLABEL=Fedora-WS-Live-38-1-6 rd.live.image quiet rhgb


/tmp/dbus.log:
dbus-daemon[2507]: SELinux support is enabled

dbus-daemon[2507]: Activating service name='org.fedoraproject.Anaconda.Boss' requested by ':1.0' (uid=0 pid=2501 comm="/usr/bin/python3 /sbin/anaconda --liveinst --graph" label="unconfined_u:system_r:install_t:s0-s0:c0.c1023")
dbus-daemon[2507]: Successfully activated service 'org.fedoraproject.Anaconda.Boss'
dbus-daemon[2507]: Activating service name='org.fedoraproject.Anaconda.Modules.Network' requested by ':1.1' (uid=0 pid=2510 comm="python3 -m pyanaconda.modules.boss" label="unconfined_u:system_r:install_t:s0-s0:c0.c1023")
dbus-daemon[2507]: Activating service name='org.fedoraproject.Anaconda.Modules.Services' requested by ':1.1' (uid=0 pid=2510 comm="python3 -m pyanaconda.modules.boss" label="unconfined_u:system_r:install_t:s0-s0:c0.c1023")
dbus-daemon[2507]: Activating service name='org.fedoraproject.Anaconda.Modules.Storage' requested by ':1.1' (uid=0 pid=2510 comm="python3 -m pyanaconda.modules.boss" label="unconfined_u:system_r:install_t:s0-s0:c0.c1023")
dbus-daemon[2507]: Activating service name='org.fedoraproject.Anaconda.Modules.Users' requested by ':1.1' (uid=0 pid=2510 comm="python3 -m pyanaconda.modules.boss" label="unconfined_u:system_r:install_t:s0-s0:c0.c1023")
dbus-daemon[2507]: Activating service name='org.fedoraproject.Anaconda.Modules.Security' requested by ':1.1' (uid=0 pid=2510 comm="python3 -m pyanaconda.modules.boss" label="unconfined_u:system_r:install_t:s0-s0:c0.c1023")
dbus-daemon[2507]: Activating service name='org.fedoraproject.Anaconda.Modules.Subscription' requested by ':1.1' (uid=0 pid=2510 comm="python3 -m pyanaconda.modules.boss" label="unconfined_u:system_r:install_t:s0-s0:c0.c1023")
dbus-daemon[2507]: Activating service name='org.fedoraproject.Anaconda.Modules.Payloads' requested by ':1.1' (uid=0 pid=2510 comm="python3 -m pyanaconda.modules.boss" label="unconfined_u:system_r:install_t:s0-s0:c0.c1023")
dbus-daemon[2507]: Activating service name='org.fedoraproject.Anaconda.Modules.Timezone' requested by ':1.1' (uid=0 pid=2510 comm="python3 -m pyanaconda.modules.boss" label="unconfined_u:system_r:install_t:s0-s0:c0.c1023")
dbus-daemon[2507]: Activating service name='org.fedoraproject.Anaconda.Modules.Localization' requested by ':1.1' (uid=0 pid=2510 comm="python3 -m pyanaconda.modules.boss" label="unconfined_u:system_r:install_t:s0-s0:c0.c1023")
dbus-daemon[2507]: Activating service name='org.fedoraproject.Anaconda.Addons.Kdump' requested by ':1.1' (uid=0 pid=2510 comm="python3 -m pyanaconda.modules.boss" label="unconfined_u:system_r:install_t:s0-s0:c0.c1023")
dbus-daemon[2507]: Activated service 'org.fedoraproject.Anaconda.Addons.Kdump' failed: Process org.fedoraproject.Anaconda.Addons.Kdump exited with status 1
dbus-daemon[2507]: Successfully activated service 'org.fedoraproject.Anaconda.Modules.Network'
dbus-daemon[2507]: Successfully activated service 'org.fedoraproject.Anaconda.Modules.Services'
dbus-daemon[2507]: Successfully activated service 'org.fedoraproject.Anaconda.Modules.Security'
dbus-daemon[2507]: Successfully activated service 'org.fedoraproject.Anaconda.Modules.Payloads'
dbus-daemon[2507]: Activated service 'org.fedoraproject.Anaconda.Modules.Subscription' failed: Process org.fedoraproject.Anaconda.Modules.Subscription exited with status 1
dbus-daemon[2507]: Successfully activated service 'org.fedoraproject.Anaconda.Modules.Users'
dbus-daemon[2507]: Successfully activated service 'org.fedoraproject.Anaconda.Modules.Storage'
dbus-daemon[2507]: Successfully activated service 'org.fedoraproject.Anaconda.Modules.Timezone'
dbus-daemon[2507]: Successfully activated service 'org.fedoraproject.Anaconda.Modules.Localization'

From inspection, it seems when efibootmgr is called and the output is attempted to be converted into UTF-8 formatting, something is going wrong. Here is efibootmgr’s output.

BootCurrent: 0000
Timeout: 2 seconds
BootOrder: 0007,0005,0002,0004,2001,0001,0008,000A,0006,0009
Boot0000* EFI USB1 PATH1 (SanDisk)	PciRoot(0x0)/Pci(0x14,0x0)/USB(1,0)/HD(2,GPT,596bfe18-6cfc-4880-ba96-298703c7c362,0x3e31d0,0x5d24)RC
Boot0001* EFI HDD1 PATH1 (ST500LT012-1DG142)	PciRoot(0x0)/Pci(0x1f,0x2)/Sata(2,0,0)/HD(1,GPT,a44cbe55-5a5e-449b-b211-bcb97b6c6393,0x800,0x12c000)RC
Boot0002* reboot syst	PciRoot(0x0)/Pci(0x1f,0x2)/Sata(0,0,0)/HD(1,GPT,34d1f75b-d28c-2e44-9269-4a36ee1fb343,0x800,0x100000)/File(/EFI/Microsoft/bootmgwx64.efi)D01
Boot0004* Windows 11	PciRoot(0x0)/Pci(0x1f,0x2)/Sata(0,0,0)/HD(1,GPT,34d1f75b-d28c-2e44-9269-4a36ee1fb343,0x800,0x100000)/File(Windows 11)D01
Boot0005* Windows Boot Manager	HD(1,GPT,34d1f75b-d28c-2e44-9269-4a36ee1fb343,0x800,0x100000)/File(\EFI\Microsoft\Boot\bootmgfw.efi)57494e444f5753000100000088000000780000004200430044004f0042004a004500430054003d007b00390064006500610038003600320063002d0035006300640064002d0034006500370030002d0061006300630031002d006600330032006200330034003400640034003700390035007d00000033000100000010000000040000007fff0400
Boot0006* Network	BBS(128,�,0x0)feff0100000000000000000000000200af0000cf800000006c0c00cf008400e0000000000000000000000000000000000000000000000000000000000000000000000000001100
Boot0007* ARCHLINUX	HD(1,GPT,34d1f75b-d28c-2e44-9269-4a36ee1fb343,0x800,0x100000)/File(\EFI\ARCHLINUX\grubx64.efi)
Boot0008* Hard Drive	BBS(HD,�,0x500)feff000000001f0000000200000001062d004be90200000519004be9f19400e0000000020000000000000000000000000000000000000000000000000000000000000000001200
Boot0009* CD/DVD/CD-RW Drive	BBS(HD,�,0x500)feff000000001f0000000200000001062d0059e902000005190059e9d19500e0000000220000000000000000000000000000000000000000000000000000000000000000001300
Boot000A* USB Storage Device	BBS(HD,N�,0x500)feff0000000014000000000000000c030000c4e8020000050000c2e8608c00e0000000000000000000000000000000000000000000000000000000000000000000000000001400
Boot2001* EFI USB Device	RC

Any help would be appreciated, and if needed, I will provide more info.

The drive is completely formatted, so there should be no OEMDRV flag in it, and even if it did, the install didn’t work on my other drive either. Is this a bug?

I had difficulty on one of my Lenovo laptops recently. It would get to the end of installing (F37 Silverblue in this case) and fail with an error writing the bootloader. I think a log should be able to be found at /tmp about the failed installation. In my case the drive seemed ok, my EFI partition was 720MB and practically unused so I was confused about the not enough space error I got. Don’t know if this is your error or not.

Nope, this is definitely not my error. My error is not related to space.

It is an error with the boot loader write as is noted in the first post you have. The issue I had appeared to not be space related but it was space in the firmware and that requires deleting the excess files. In my case the ones I chose to delete all were files starting with _DUMP and were related to Lenovo system diagnostics I think.

What we need to figure out now is the path to the firmware in /proc where you may delete the offending files (if you’re up for it). The potential to “Brick” your system is high if you delete the wrong file(s).
If the system is an older one (my Lenovo was from 2014) it may have filled up that area.

My system is a Dell Inspiron 3217u made around 2012. I am clueless as to what might be the offending firmware.

It’s the firmware of the system and specifically the Flash drive for the BIOS firmware. A lot of devices have two chips involved with it. In the version I did it on (Fedora) I was able to find the files in /proc/sys/firmware/ but that directory does not exist in F38 it seems. If you have the original Dell system disks there will likely be a maintenance util for your bios flashing, etc… perhaps it would have the ability to clean out unnecessary files. Of course I am unable to find this on my desktop which is an ASUS and much newer than the Lenovo. It would seem the directory layout has changed WRT this.

[Edit] - My bad it is mounted in /sys/firmware/efi/efivars. Using the live media or installation media, you will need to follow the directions at the link I provided below in my last comment to mount it then inspect it. Look for files starting with dump or _DUMP and delete them.

Maybe that ? Is the problem byte that is not utf-8.
Can you remove that boot entry from the list?
Maybe from the efi bios.

2 Likes

There is also the --no-vram option which seems to work for some facing this issue. That’s grub install --no-vram. Here is someone with Unbuntu complaining about the same thing debian - Grub installation failed - Unix & Linux Stack Exchange

Thanks for the tips, I’ll try these out tomorrow and update the result here. :slight_smile:

So here is a link that someone posted more recent than the last one I posted (April 7) …

You will note these are Unbuntu instructions but I think they should work in Fedora.

1 Like

As far as I can see that won’t work on Fedora. On Ubuntu you can run grub-install as instructed, but you should not run grub2-install on Fedora when booting in UEFI mode.

There seem to be no dump-* files inside /sys/firmware/efi/efivars.

For now, I am using BIOS instead of UEFI to fix the issue, but hopefully this issue will eventually be fixed. Or, I can possibly chroot in and regenerate GRUB without Anaconda’s tomfooleries.

No but running grubby is likely okay. So grubby --help for the appropriate commands. This is the preferred method of modifying Grub2 on Fedora. The problem is this install doesn’t make it to the first login stage so even grubby will likely be of no use.

I’ve now installed Fedora with BIOS instead, is it possible to boot into the live ISO and then use Grubby to regenerate the bootloader after mounting everything? chroot’ing into the Fedora root dir is not possible

Update #2: I enabled UEFI (+ secure boot, that wasn’t enabled earlier) and retried the installation and it worked fine!