Feature #8209
openInstall to a boot environment
90%
Description
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.
Files
Updated by Alexander Pyhalov about 6 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: https://github.com/OpenIndiana/slim_source/pull/28
Test ISOs: http://buildzone.oi-build.r61.net/installer-zpool-install/2017-07-22/
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).
Updated by Nikola M. about 6 years ago
- File SelectStage20170821.jpg SelectStage20170821.jpg added
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
Cylinders
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
Updated by Alexander Pyhalov about 6 years ago
Please, specify all exact steps, how did you end up with this screen.
Updated by Nikola M. about 6 years ago
Hello,
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.
Updated by Alexander Pyhalov about 6 years ago
Well. It does what you asked it to do. On first installer screen hit f5 'InstallToExistingPool'.
Updated by Nikola M. about 6 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?
Updated by Nikola M. about 6 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.
https://mega.nz/#!OUwyQBJT!flJvb7rhfG2fNQp1YsYltVdZfSH4WCblAC9IeSc9Ym0
I 'cat' messages in log after manually entering the shell (after failed to recognize rpool).
Updated by Alexander Pyhalov about 6 years ago
Look at log. Likely it skip your pool as it has insufficient free space.
Updated by Nikola M. about 6 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.
Updated by Alexander Pyhalov about 6 years ago
Look at log, it should have some clues.
Updated by Nikola M. about 6 years ago
- File InstallLog20170823.jpg InstallLog20170823.jpg added
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
Password:
NAME SIZE ALLOC FREE EXPANDSZ FRAG CAP DEDUP HEALTH ALTROOT
rpool 109G 94.8G 14.2G - 66% 86% 1.00x ONLINE -
https://mega.nz/#!nEAmyTaJ!6XhpviUEYmKtQbygPZWgLXTcUwwfg2356chmr-pm8TU
Updated by Alexander Pyhalov about 6 years ago
The logic used to get free space can be found here: https://github.com/OpenIndiana/slim_source/blob/98092d8698a1b6e3998bab12ac5508034c15e604/usr/src/cmd/text-install/osol_install/text_install/ti_install_utils.py#L453 . You can try running commands one by one and see what can go wrong.
Updated by Nikola M. about 6 years ago
- File ColumsBEInstall.jpg ColumsBEInstall.jpg added
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.
https://mega.nz/#!TVhn3CaB!2HHOZs1HOz3LgLo5dykoaftDhHo-GfU6Z0k0om-A6c8