Opened 14 years ago

Closed 13 years ago

#433 closed defect (fixed)

mondorestore fails to locate config/archive files on an external hard disk

Reported by: Joseph Sylvester Owned by: Bruno Cornec
Priority: normal Milestone: 2.2.9.7
Component: mondo Version: 2.2.9.4
Severity: normal Keywords:
Cc:

Description

When restoring archives (ISO files) from an external hard disk, mondorestore fails to find the config/archive files located on the device and directory that the user has input as to where the archive files are located. This generates a fatal error:"Could not find config file/archives. Aborting.". This error occurs even after a fix for Bug #432 has been applied (That bug caused mondorestore to fail to mount external hard disk device correctly). In this sitiution, the PC has been booted from either a Mondorescue CD or the ISO file-#1 generated from the building of the archive.

In looking at the code, mondoresore has tried a Plan A and Plan B on locating the config/archive files in mount_media(), but it fails to look in the directory (path) on /tmp/isodir that the user has input as to where the archive files are.

Attachments (1)

mondorestore.after.log.tar.gz (12.1 KB ) - added by Joseph Sylvester 14 years ago.
Compressed mondorestore.log showing errors received

Download all attachments as: .zip

Change History (6)

by Joseph Sylvester, 14 years ago

Compressed mondorestore.log showing errors received

comment:1 by Joseph Sylvester, 14 years ago

The following changes have been tested on my system running Ubuntu Lucid 10.04. I am not equipped to test other configurations:

  1. From Bug 432, file src/mondorestore/mondo-rstr-tools.c, function iso_fiddly_bits(), add to line 315:

/* Need to mount device to /tmp/isodir first */

strcpy(bkpinfo->isodir, "/tmp/isodir");

  1. From Bug432, file src/mondorestore/mondo-rstr-tools.c, function iso_fiddly_bits(), change line 317:

mr_strcat(mount_isodir_command, " -o ro %s", bkpinfo->isodir);

to

mr_strcat(mount_isodir_command, " -o rw %s", bkpinfo->isodir);

(change read-only (ro) to read-write (rw). This change is needed to prevent segmentation fault on subsequent launching of mondorestore. I needed to explicitly specify "Read-write" because on my system, leaving out "-o ro" was not the same as "-o rw" as the man page would lead you to believe.

  1. file src/mondorestore/mondo-rstr-tools.c, function mount_media, add to line 599:

char *iso_path = NULL;

malloc_string(iso_path);

  1. file src/mondorestore/mondo-rstr-tools.c, function mount_media, add to line 642:

if (bkpinfo->disaster_recovery) {

read_cfg_var(g_mondo_cfg_file, "isodir", iso_path);

strcpy( bkpinfo->isodir, "/tmp/isodir" );

mr_strcat( bkpinfo->isodir, iso_path );

}

comment:2 by Bruno Cornec, 14 years ago

Milestone: 2.2.9.52.2.9.6

comment:3 by Bruno Cornec, 14 years ago

Status: newassigned

comment:4 by Bruno Cornec, 14 years ago

Milestone: 2.2.9.62.2.9.7

1/ Can you mount manually your HDD in that format in ro mode under Linux ? I'm still very reluctant to mount the ISO repo rw as there are some problems with mondo removing some images in some cases. Can you change the format of your external HDD to have it mount ro ?

2/ Rev [2769] should provide a proper fix for the rest of the problem. I'm regenerating ubuntu 10.04 packages for you to test right now. (Under ftp://ftp.mondorscue.org/test/ubuntu/10.04)

comment:5 by Bruno Cornec, 13 years ago

Resolution: fixed
Status: assignedclosed

Considering it fixed for now with upcoming 2.2.9.7 this week-end. Please reopen if it's not the case.

Note: See TracTickets for help on using tickets.