Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FileNotFoundError: [Errno 2] No such file or directory: 'hexdump' #382

Closed
gimplyworxs opened this issue Sep 16, 2022 · 6 comments
Closed
Assignees
Labels
bug Something isn't working

Comments

@gimplyworxs
Copy link

Downloaded this version:
rescuezilla-2.4.1-64bit.focal.iso
Tried to restore an image taken on one computer to another computer.
Restore failed and gave this error:
Error restoring image: Traceback (most recent call last): File "/usr/lib/python3/dist-packages/rescuezilla/restore_manager.py", line 281, in do_restore_wrapper self.do_restore() File "/usr/lib/python3/dist-packages/rescuezilla/restore_manager.py", line 379, in do_restore destination_harddrive_geometry_dict, is_edd_geometry, message = ChsUtilities.query_drive_chs_geometry(long_device_node=self.restore_destination_drive, File "/usr/lib/python3/dist-packages/rescuezilla/parser/chs_utilities.py", line 108, in query_drive_chs_geometry is_success, value = ChsUtilities._get_chs_geometry_from_edd(long_device_node, logger) File "/usr/lib/python3/dist-packages/rescuezilla/parser/chs_utilities.py", line 180, in _get_chs_geometry_from_edd is_success, value = ChsUtilities._find_edd_sysfs_path_using_mbr_disk_signature(long_device_node, logger) File "/usr/lib/python3/dist-packages/rescuezilla/parser/chs_utilities.py", line 244, in _find_edd_sysfs_path_using_mbr_disk_signature process, flat_command_string, failed_message = Utility.run("Get edd device mapping)", File "/usr/lib/python3/dist-packages/rescuezilla/utility.py", line 502, in run process = subprocess.run(cmd_list, encoding='utf-8', capture_output=True, env=env) File "/usr/lib/python3.8/subprocess.py", line 493, in run with Popen(*popenargs, **kwargs) as process: File "/usr/lib/python3.8/subprocess.py", line 858, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "/usr/lib/python3.8/subprocess.py", line 1704, in _execute_child raise child_exception_type(errno_num, err_msg, err_filename) FileNotFoundError: [Errno 2] No such file or directory: 'hexdump'
What can I do?
Furthermore ... is there no option to change to my language and keybord layout?

@shasheene
Copy link
Member

shasheene commented Sep 17, 2022

Thanks for the bug report.

Your backup image is fine and can be restored, but you've reported a long-standing latent bug in Rescuezilla that appears to have been introduced in v2.2 (2021-06-04) but will only get triggered on a very small number of systems. Rescuezilla does not currently have automated error monitoring.

Could you please provide some information of your PC/motherboard?

The tool hexdump is not installed in Rescuezilla as of v2.4.1, but it only gets used by some advanced processing around a very arcane BIOS feature named "EDD" (Enhanced Disk Device). I faithfully ported from Clonezilla but I was only able to test my code from within Clonezilla itself because the "EDD" feature appeared only available on some systems.

Remotely debugging this will be a bit difficult. The easiest option is to try restoring your backup image with the very old Rescuezilla v2.1.3 (2021-01-29) (download link in Assets section at bottom of that page). That old release didn't try to be do the advanced EDD operations so certainly won't face this issue. But by using such an old version like Rescuezilla v2.1.3 you may encounter other unrelated bugs that have since been fixed in newer versions of Rescuezilla.

A second option is to try restoring your Rescuezilla with Clonezilla.

A third option is to try to install hexdump by opening a terminal in Rescuezilla v2.4.1 and running apt-get update && apt-get install bsdmainutils, but even after installing that tool and running your restore again, the specific code that Rescuezilla is executing here is clearly not really widely used. But it should work.

Let me know how you go, and if you need further assistance.

Like I said this bug appears to have been latent in Rescuezilla since 2021-06-04, and you're the first one to report it!! 😲

@shasheene
Copy link
Member

As for the language / keyboard layout, you need to select this from the boot menu
1
2

Because I haven't done #91 yet

@shasheene shasheene self-assigned this Sep 17, 2022
@shasheene shasheene added the bug Something isn't working label Sep 17, 2022
@gimplyworxs
Copy link
Author

Thank you shasheene.
At first I was startled that I couldn't restore the image.
I then used clonezilla and everything went fine. Restored it ok.
The machine in question is a fairly old laptop.

@shasheene
Copy link
Member

Glad to hear you were able to restore your Rescuezilla v2.4.1 image with Clonezilla to workaround this bug!

I'll of course fix this bug for the next version of Rescuezilla.

shasheene added a commit to shasheene/rescuezilla-dev that referenced this issue Dec 12, 2022
Adds a dependency on the bsdmainutils [1] package, which is a transactional
package that for all supported Ubuntu releases provides hexdump.

The missing hexdump package caused a user to be unable to restore their backup
except with Clonezilla [2]

[1] https://packages.ubuntu.com/kinetic/bsdmainutils

[2] rescuezilla#382
shasheene added a commit that referenced this issue Dec 12, 2022
Adds a dependency on the bsdmainutils [1] package, which is a transactional
package that for all supported Ubuntu releases provides hexdump.

The missing hexdump package caused a user to be unable to restore their backup
except with Clonezilla [2]

[1] https://packages.ubuntu.com/kinetic/bsdmainutils

[2] #382
@shasheene
Copy link
Member

hexdump now available from Rescuezilla v2.4.2

@gimplyworxs
Copy link
Author

Thank you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants