Summary

Some systems cannot effectively boot off remote devices (e.g. USB, optical drive), and may only have facilities for a single block device to be installed. For these systems, there would be advantage to being able to run an offline tool to install a system to a secondary disk on a running system or to an image file. In some cases, the running system may not match the target architecture, and so an optimal solution would be able to construct an installed system in an architecture-neutral way, perhaps based on a live image.

Release Note

Ubuntu now provides a facility to construct runtime images for embedded systems and other environments in which the install is performed on separate hardware than will run the installed image.

Rationale

Some hardware is unable to boot off USB or CDROM or really anything else. One needs to prepare an installed image, and then run it on the target hardware. Currently, installation of Ubuntu on such devices involves complex machinations involving constructing a target image, mounting that, and using it as a debootstrap target. Further, this only works on roughly compatible architectures (e.g. amd64 can create amd64, i386, and lpia targets).

Use Cases

Assumptions

Design

Process currently used by ubiquity

Proposed Process to be used by this tool

Images types

Implementation

UI Changes

The following mock UIs were created for what this tool would be like:

Main window

-----------------------------------------------------------
| -------------------------------                         |
||Image Selector                |                         |
|--------------------------------                         |
|---------------------------------------------------------|
|-------- --------------------------------                |
||Output Format| |Advanced Partitioning |                 |
|-------- --------------------------------                |
|---------------------------------------------------------|
|--------------------------------                         |
||Select Kernel and Initramfs   |                         |
|--------------------------------                         |
|---------------------------------------------------------|
|| Load Config | Save Config |                    | DoIT! |
-----------------------------------------------------------

Image selection and target FS type

-----------------------------------------------------------
| Image | Size | Type | Mountpoint                        |
|---------------------------------------------------------|
| ...   | .... | ext3 |    /                              |
|       |      |      |                                   |
|---------------------------------------------------------|
|              | Add | Remove | Binary Blob | Cancel | Ok |
-----------------------------------------------------------

Possible Options

Code Changes

As this is a new tool, it will have to be written from scratch.

Migration

No migration is required: this is a new procedure for new installs, and user data is not expected to be preserved.

Test/Demo Plan

It's important that we are able to test new features, and demonstrate them to users. Use this section to describe a short plan that anybody can follow that demonstrates the feature is working. This can then be used during testing, and to show off after release.

This need not be added or completed until the specification is nearing beta.

Unresolved issues

BoF agenda and discussion

Original Gobby Doc

The goal of this spec is to put together the rough design for an offline installer

Many devices can only boot of a single storage device, you are not able to run an installer from external device to install to an internal device since only one device exists and is bootable, a tool to dump a completely configured filesystem on such a storage devcie is needed

Using a live image already gets you a fully installed system but with the addition of ubiquity

For the arm architecture it was decided to build kernel less images, this would enable us to actually have the cleaned up image in place for just dumping it to a disk

Questions

Process currently used by ubiquity

Proposed process to be used by the tool

Image types

Gui consideration

Main window

-----------------------------------------------------------
| -------------------------------                         |
||Image Selector                |                         |
|--------------------------------                         |
|---------------------------------------------------------|
|-------- --------------------------------                |
||Output Format| |Advanced Partitioning |                 |
|-------- --------------------------------                |
|---------------------------------------------------------|
|--------------------------------                         |
||Select Kernel and Initramfs   |                         |
|--------------------------------                         |
|---------------------------------------------------------|
|| Load Config | Save Config |                    | DoIT! |
-----------------------------------------------------------

Image selection and target FS type

-----------------------------------------------------------
| Image | Size | Type | Mountpoint                        |
|---------------------------------------------------------|
| ...   | .... | ext3 |    /                              |
|       |      |      |                                   |
|---------------------------------------------------------|
|              | Add | Remove | Binary Blob | Cancel | Ok |
-----------------------------------------------------------

Possible Options


CategorySpec

specs/OfflineInstaller (last edited 2009-01-19 07:54:22 by p4081-ipbf2501marunouchi)