Project

General

Profile

Dyson Installer

Requirements

To install Dyson you need:

  • 64-bit PC (amd64 aka x86_64),
  • CD-ROM drive,
  • 1.5 GiB of RAM,
  • 6 GiB of free space on a MBR partitioned disk,
  • network access to one of the Dyson mirrors (maybe your own).

You can also use virtual machines such as VirtualBox or QEMU.

Installing on QEMU

This is tested on Debian amd64 with QEMU version 1.1.2.

$ qemu-img create -f qcow2 dyson.qcow2 10G
$ qemu-system-x86_64 -hda dyson.qcow2 -m 1500 -cdrom dyson-netinst-2013-05-05-1506.iso

Getting the installer

Download the lastest ISO image of install CD from http://ftp.osdyson.org/iso/.

Network access from the install CD

When booting from CD the startup script tries to bring networking up via DHCP.

If no DHCP servers available you have to configure network manually. To configure network manually switch to the console (press the F2 key), and use commands dladm, ipadm, route, also remember to update the /etc/resolv.conf file with vim or nano. See appropriate man pages, e. i. man ipadm, for detail.

Example:

  1. Print available network interfaces:
    # dladm show-phys
    LINK         MEDIA                STATE      SPEED  DUPLEX    DEVICE
    e1000g0      Ethernet             unknown    1000   full      e1000g0
    
  2. Bring the "e1000g0" interface up (aka plumb):
    # ipadm create-if e1000g0
    

    A few seconds later, if you type dladm show-phys again, you will see that the state of the interface is changed from "unknown" to "up" or "down" (cable connected or not). If the state is "down" there is no reason to go with this interface until you connect the cable.
  3. Assign an address to the interface. You may want to try DHCP again:
    # ipadm create-addr -T dhcp e1000g0/dhcp
    

    or give it a static address, e. g.:
    # ipadm create-addr -T static -a 192.168.2.45/24 e1000g0/static
    
  4. If using static IP, set up the default gateway (e. g. 192.168.2.1), otherwise dhcpagent will do it for you:
    route -n add default -gateway 192.168.2.1
    

    You can view routing table with netstat:
    netstat -nr
    
  5. Setup name servers in /etc/resolv.conf

Getting closed source drivers

Dyson does not include closed source drivers, such as mpt (see https://www.illumos.org/issues/3).
There are instruction by Jason Upton on how to get closed source drivers and use them during installation:
http://lists.osdyson.org/pipermail/dyson-devel/2013-April/000041.html

Post-install configuration

Getting updates

Since the installer is a network installer it uses "testing" repository to install base system. "testing" repository is known to work. After installation you may want to switch to "unstable".

Dual boot with GRUB2 on Debian

Given that Dyson is installed on the primary partition N of the first drive, add following lines to /etc/grub.d/40_custom and run grub-mkconfig -o /boot/grub/grub.cfg to updated GRUB2 menu.

menuentry "Dyson" {
set root=(hd0,N) # change N to the partition number (1 to 4)
chainloader +1
}

With this configuration Debian's GRUB2 will show the "Dyson" item in its menu and will run Dyson's GRUB if you choose that item ("chain loading").

Obviously, Dyson's GRUB should be installed into a partition, not into MBR (Debian's GRUB2 holds MBR).

Installation process

This section describes an optimistic installation process on a clean virtual machine.

LiveCD GRUB menu:

LiveCD is booting:

The installer's start screen:

The console. You can switch to the console (press F2) and execute any commands as root. To switch back to the installer press F1:

First of all, the installer searches for hard disks and ZFS pools. The installer can install Dyson to existing ZFS pool, or can create a new one.

For new ZFS pool you need a disk with one Solaris partition:

cfdisk from util-linux is used for editing partitions :

Solaris partition has id = 0xbf:

After creating a Solaris partirion remember to choose "Write" in cfdisk menu, then - "Quit":

Now you are ready to install Dyson:

The installer will format Solaris partition (with a single slice) and create ZFS root pool and minimal ZFS filesystems (including swap, /home and /):

Choosing how big the installed system will be:

Then you will be asked to choose a Dyson mirror:

Next, installation of a base system begins (using debootstrap):

If you choose basic or desktop profile, additional packages will be installed (via apt-get):

Then - enter a hostname (aka nodename):

And finally, enter root password:

If installing more than just a minimal system, you will be asked to create a regular user:

Then the installer will create boot archive:

And populate initial SMF repository:

Dyson uses GRUB 1 for booting (aka GRUB legacy). It can be installed on master boot record (MBR) or on a partitions (which you've choosen for root ZFS pool). Note that is that partition is a logical partition, GRUB will be forcedly installed on MBR. If you are installing on an existing ZFS pool (e. g. created by OpenIndiana), you may want to just update GRUB menu, or completely skip GRUB configuration. In any case an example configuration is saved in /boot/grub/menu.lst on root filesystem.

Then, you are done:

Eject CD and reboot:

That was just the beginning...

00-GRUB.png View (22.4 KB) Igor Pashev, 2013-05-05 08:07 AM

01-booting.png View (29.1 KB) Igor Pashev, 2013-05-05 08:09 AM

02-welcome.png View (28.7 KB) Igor Pashev, 2013-05-05 08:10 AM

03-console.png View (29.3 KB) Igor Pashev, 2013-05-05 08:13 AM

04-hdd.png View (22.3 KB) Igor Pashev, 2013-05-05 08:17 AM

06-cfdisk.png View (24.3 KB) Igor Pashev, 2013-05-05 08:20 AM

05-no-part.png View (25.1 KB) Igor Pashev, 2013-05-05 08:20 AM

07-bf.png View (30.5 KB) Igor Pashev, 2013-05-05 08:21 AM

08-cfdisk-solaris.png View (25 KB) Igor Pashev, 2013-05-05 08:24 AM

09-ready.png View (26.9 KB) Igor Pashev, 2013-05-05 08:25 AM

10-format.png View (20.8 KB) Igor Pashev, 2013-05-05 08:29 AM

12-installing.png View (21 KB) Igor Pashev, 2013-05-05 10:08 AM

15-hostname.png View (21.5 KB) Igor Pashev, 2013-05-05 10:12 AM

16-root.png View (22.2 KB) Igor Pashev, 2013-05-05 10:16 AM

17-bootarchive.png View (20.7 KB) Igor Pashev, 2013-05-05 10:22 AM

18-smf.png View (21.4 KB) Igor Pashev, 2013-05-05 10:22 AM

19-grubinstall.png View (24.1 KB) Igor Pashev, 2013-05-05 10:27 AM

20-done.png View (21.7 KB) Igor Pashev, 2013-05-05 10:31 AM

21-installedgrub.png View (22.2 KB) Igor Pashev, 2013-05-05 10:35 AM

22-login.png View (29.1 KB) Igor Pashev, 2013-05-05 10:35 AM

12-apt-get.png View (20.2 KB) Igor Pashev, 2013-09-15 05:57 PM

16-create-user.png View (23.6 KB) Igor Pashev, 2013-09-15 05:57 PM

10-profile.png View (23.1 KB) Igor Pashev, 2013-09-15 05:57 PM

11-mirrors.png View (23.6 KB) Igor Pashev, 2013-09-15 05:58 PM

Also available in: PDF HTML TXT