Feature #8209


Install to a boot environment

Added by Dan MacDonald about 4 years ago. Updated almost 4 years ago.

In Progress
Caiman (Installer)
Target version:
Start date:
Due date:
% Done:


Estimated time:


Hi Illumos devs

For well over 25 years of my life, installing OSs didn't really change - partition your drive, format it - install. That was until I tried the latest TrueOS which delighted me by enhancing this procedure for those already using ZFS. Seeing as I already had FreeBSD 11 installed on my home server, TrueOS detected this and asked if I'd like to install into a boot environment so all I had to do was pick the zpool I wanted to create the new bootenv on / install to.

I'd love it if the OI installer could also do this - ideally every OS that supports ZFS will adopt this feature. Hopefully the difference in bootloaders won't cause an issue here?

PS Last time I tried Hipster on my home server (a Gigabyte N3150N D3V w/ 8GB RAM) a few months ago it failed to boot but I've not tried the latest release yet. I'll give it a go this weekend.


SelectStage20170821.jpg (159 KB) SelectStage20170821.jpg Requesting rpool1 instead of rpool Nikola M., 2017-08-21 11:11 AM
F5_Log-NotFindingRpool20170823.jpg (264 KB) F5_Log-NotFindingRpool20170823.jpg Nikola M., 2017-08-23 12:54 PM
InstallLog20170823.jpg (314 KB) InstallLog20170823.jpg Nikola M., 2017-08-23 09:11 PM
ColumsBEInstall.jpg (129 KB) ColumsBEInstall.jpg Nikola M., 2017-08-25 10:06 AM
Actions #1

Updated by Alexander Pyhalov about 4 years ago

  • Status changed from New to In Progress
  • Assignee changed from OI Caiman to Alexander Pyhalov
  • % Done changed from 0 to 90

GitHub PR:
Test ISOs:

This adds new option to text-install. When welcome screen is present, you can press
[F5] and try installing OS to existing pool. You'll be asked what pool to use,
what BE to use (it will be created in existing pool from scratch) and overwrite
pool's boot configuration or not (if not, you'll have to create it manually).

Actions #2

Updated by Nikola M. almost 4 years ago

I couldn't install on a new BE , tried to install from the Test USB image.
It asks for 'rpool1' pool and sees some 'backup' pool that is not supposed to be there..

My disk looks like this in format>fdisk :
Total disk size is 19457 cylinders
Cylinder size is 16065 (512 byte) blocks
Partition Status Type Start End Length % ========= ====== ============ ===== === ====== ===
1 Active IFS: NTFS 0 5098 5099 26
2 Solaris2 5099 19457 14359 74

It showed having only one Solaris slice in the previous step of text install. Could it be that it is installed directly on MBR partition and not on slice?
Here is the image: mega:#!2YAyzZzR!jOPqLMR19m8ha4hx946sZpUYjdBJ7Qph8-6xwTWJAYM

Actions #3

Updated by Alexander Pyhalov almost 4 years ago

Please, specify all exact steps, how did you end up with this screen.

Actions #4

Updated by Nikola M. almost 4 years ago

By USB boot, hitting Enter for defaults then selecting "Use partition (MBR)", then "Solaris 2 partition" (already selected) and then select "Use a slice" - and then got that image requesting rpool1.

Selecting "Use a whole partition" scares me of killing whole rpool so didn't go further after it.

Actions #5

Updated by Alexander Pyhalov almost 4 years ago

Well. It does what you asked it to do. On first installer screen hit f5 'InstallToExistingPool'.

Actions #6

Updated by Nikola M. almost 4 years ago

Ok, will try again and report.

Then that F5 key option is barely visible and F-keys legend at the bottom has very poor contrast to be seen.

Maybe it could be improved by using more contrast colort and/or make it more visible by letting
'Install to existing pool' it be presented as an install option instead of as on F5 key?

Actions #7

Updated by Nikola M. almost 4 years ago

Ok I tried with 'F5' and it does not work.
It can't find the pool to install to (rpool).

If this can help, this is the picture messages in log file in /tmp.!OUwyQBJT!flJvb7rhfG2fNQp1YsYltVdZfSH4WCblAC9IeSc9Ym0
I 'cat' messages in log after manually entering the shell (after failed to recognize rpool).

Actions #8

Updated by Alexander Pyhalov almost 4 years ago

Look at log. Likely it skip your pool as it has insufficient free space.

Actions #9

Updated by Nikola M. almost 4 years ago

Had around 13GB free on the pool. Probaly does not count as insufficient disk space.
I more think could be something about if rpool is on top of partition or the slice in partition, but there's free space.
Will recheck but I don't think it's free space.

Actions #10

Updated by Alexander Pyhalov almost 4 years ago

Look at log, it should have some clues.

Actions #11

Updated by Nikola M. almost 4 years ago

This is all the log.
It just gives up thinking there's no free space and it again thinks there is just 2G available, no matter how much space there is.
$ sudo zpool list
rpool 109G 94.8G 14.2G - 66% 86% 1.00x ONLINE -!nEAmyTaJ!6XhpviUEYmKtQbygPZWgLXTcUwwfg2356chmr-pm8TU

Actions #12

Updated by Alexander Pyhalov almost 4 years ago

The logic used to get free space can be found here: . You can try running commands one by one and see what can go wrong.

Actions #13

Updated by Nikola M. almost 4 years ago

Hi, sorry for the late response,
As you suggested,
zpool import -fN before installation makes instalaltion see the target rpoool and go into the process of installation .

Probably for the same reason live-usb/dvd session also need to use zpool import -f(H), because working root pool is supposedly never 'zpool export' -ed before new BE installation.

Yet I couldn't log in, because password entered during instalaltion into new BE,
didn't work after booting that BE for root/password.
Maybe new BE install could also have both 'root' password and new admin user account username and password, so it could be logged in afterwards? (And maybe login as root is disabled?)

Also I found that columns on BE naming stage, that present size and Notes are not aligned and
it probably should read: "Free Size" and be aligned with column.!TVhn3CaB!2HHOZs1HOz3LgLo5dykoaftDhHo-GfU6Z0k0om-A6c8


Also available in: Atom PDF