IP Library Granted Patent US 9,804,855
Granted Patent B1
US 9,804,855 · App. 14/878,821 · Granted Oct 31, 2017

Modification of temporary file system for booting on target hardware

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,804,855
App. No.
14/878,821
Filed
Oct 8, 2015
Granted
Oct 31, 2017
Kind
B1
Art Unit
2116
USPC
713/2
Abstract

A system and method for efficiently restoring data to a different computing device. At least a backed up operating system (OS) and an initial file system, which is also referred to as a temporary file system, are restored on a memory connected to a target computing device. The OS and the initial file system are configured for a hardware configuration for a source computing device different from a hardware configuration for the target computing device. The input/output (I/O) modules used for accessing storage devices connected to data storage interfaces within the target computing device are identified and compared to I/O modules in the initial file system. The missing I/O modules in the initial file system for the target computing device are retrieved from the restored OS and inserted in the initial file system. Afterward, a boot up sequence is executed using the modified initial file system.

Claims (65)

1. A computing system comprising:

a target computing device comprising a first hardware configuration; and

a memory configured to store a backup image corresponding to a source computing device with a second hardware configuration that is different than the first hardware configuration, wherein the backup image comprises an operating system and first initial file system configured for the second hardware configuration;

wherein in response to an operation to restore the backup image to the target device, the target computing device is configured to:

identify at least one input/output (I/O) module needed for the first hardware configuration that is not included in the first initial file system;

retrieve the at least one I/O module from the operating system in the image;

insert, without user intervention, the at least one I/O module into the first initial file system to create a second initial file system; and

execute a startup boot sequence using the second initial file system.

2. The computing system as recited in claim 1 , wherein each of the first initial file system and the second initial file system is configured to mount a root file system for said operating system.

3. The computing system as recited in claim 1 , wherein prior to restoring the backup image, the target computing device is a bare metal device with no installed operating system.

4. The computing system as recited in claim 1 , wherein a hardware configuration comprises at least one or more types of data storage interfaces used for accessing connected storage devices.

5. The computing system as recited in claim 1 , wherein to identify the at least one missing I/O module, the target computing device is further configured to:

identify a first plurality of I/O modules used for accessing storage devices connected to a plurality of data storage interfaces within the target computing device;

identify a second plurality of I/O modules stored in the first initial file system used for accessing storage devices connected to a plurality of data storage interfaces within the source computing device; and

compare the first plurality of I/O modules to the second plurality of I/O modules to identify said at least one missing I/O module is in the first plurality of I/O modules and not in the second plurality of I/O modules.

6. The computing system as recited in claim 1 , wherein to insert without user intervention the at least one missing I/O module into the first initial file system, the target computing device is further configured without user intervention to:

retrieve the at least one missing I/O module from the operating system restored on the target computing device; and

create a copy of the at least one missing I/O module in the first initial file system.

7. The computing system as recited in claim 1 , wherein without user intervention the target computing device is further configured to:

identify dependency files for the at least one missing I/O module;

retrieve the dependency files from the operating system restored on the target computing device; and

create a copy of the dependency files in the second initial file system.

8. The computing system as recited in claim 1 , wherein to restore the backup image, the target computing device is further configured to:

format at least a first storage device connected to one of the plurality data storage interfaces; and

execute via a given one of the plurality of data storage interfaces a backup restore application to restore the operating system and the first initial file system from the memory to the first storage device.

9. A method for executing on a processor, the method comprising:

storing in a memory a backup image comprising at least an operating system and a first initial file system configured for a first hardware configuration for a source computing device different from a second hardware configuration for a target computing device;

in response to an operation to restore the backup image to the target device:

identifying at least one input/output (I/O) module needed for the first hardware configuration that is not included in the first initial file system;

retrieving the at least one I/O module from the operating system in the image;

inserting, without user intervention, the at least one I/O module into the first initial file system to create a second initial file system; and

executing a startup boot sequence using the second initial file system.

10. The method as recited in claim 9 , wherein each of the first initial file system and the second initial file system is configured to mount a root file system for said operating system.

11. The method as recited in claim 9 , wherein prior to restoring the backup image, the target computing device is a bare metal device with no installed operating system.

12. The method as recited in claim 9 , wherein to identify the at least one missing I/O module, the method further comprises:

identifying a first plurality of I/O modules used for accessing storage devices connected to a plurality of data storage interfaces within the target computing device;

identifying a second plurality of I/O modules stored in the first initial file system used for accessing storage devices connected to a plurality of data storage interfaces within the source computing device; and

comparing the first plurality of I/O modules to the second plurality of I/O modules to identify said at least one missing I/O module is in the first plurality of I/O modules and not in the second plurality of I/O modules.

13. The method as recited in claim 12 , further comprising removing from the second initial file system one or more I/O modules not required by the target computing device.

14. The method as recited in claim 9 , wherein to insert without user intervention the at least one missing I/O module into the first initial file system, the method without user intervention further comprises:

retrieving the at least one missing I/O module from the operating system restored on the target computing device; and

creating a copy of the at least one missing I/O module in the first initial file system.

15. The method as recited in claim 9 , wherein without user intervention the method further comprises:

identifying dependency files for the at least one missing I/O module;

retrieving the dependency files from the operating system restored on the target computing device; and

creating a copy of the dependency files in the second initial file system.

16. The method as recited in claim 9 , wherein each of the source computing device and the target computing device is one of a desktop computer, a laptop, and a server.

17. A non-transitory computer readable storage medium storing program instructions executable by a processor to:

store in a memory a backup image comprising at least an operating system and a first initial file system configured for a first hardware configuration for a source computing device different from a second hardware configuration for a target computing device;

in response to an operation to restore the backup image to the target device:

identify at least one input/output (I/O) module needed for the first hardware configuration that is not included in the first initial file system;

retrieve the at least one I/O module from the operating system in the image;

insert, without user intervention, the at least one I/O module into the first initial file system to create a second initial file system; and

executing a startup boot sequence using the second initial file system.

18. The non-transitory computer readable storage medium as recited in claim 17 , wherein to identify the at least one missing I/O module, the program instructions are further executable to:

identify a first plurality of I/O modules used for accessing storage devices connected to a plurality of data storage interfaces within the target computing device;

identify a second plurality of I/O modules stored in the first initial file system used for accessing storage devices connected to a plurality of data storage interfaces within the source computing device; and

compare the first plurality of I/O modules to the second plurality of I/O modules to identify said at least one missing I/O module is in the first plurality of I/O modules and not in the second plurality of I/O modules.

19. The non-transitory computer readable storage medium as recited in claim 17 , wherein to insert without user intervention the at least one missing I/O module into the first initial file system, the program instructions are further executable to:

retrieve the at least one missing I/O module from the operating system restored on the target computing device; and

create a copy of the at least one missing I/O module in the first initial file system.

20. The non-transitory computer readable storage medium as recited in claim 17 , wherein the program instructions are further executable to:

identify dependency files for the at least one missing I/O module;

retrieve the dependency files from the operating system restored on the target computing device; and

create a copy of the dependency files in the second initial file system.