Re: Bug#861263: debian-installer: zfs support
On 06/05/2017, Ian Campbell <email@example.com> wrote:
> On Fri, 2017-05-05 at 22:52 +0100, Sam Kuper wrote:
>> If so, is there
>> any reason in principle why that installer could not in future be
>> distributed with the capability to (download and) compile and run ZFS,
>> and to provide the user with the option to install Debian onto a ZFS
>> root partition?
> There is no build toolchain (gcc et al) available for the installer
> environment itself, nor are kernel headers provided there.
I was not aware of that. Thank you for making this crucial point :)
> It would in theory be possible to arrange build and install modules
> during installation using the in-progress target installation (where
> the normal toolchain packages could be installed) such that they are
> available during the latter parts of the install procedure -- that is
> clearly of limited use for any modules which are required for the
> filesystems which you want to install to (certainly the root fs and
> perhaps any separate /usr or /var partition(s)).
Given that a machine intended to run ZFS is likely to be provisioned
with >2GB of RAM (much more than the Debian Installer would normally
require), might a viable workaround be for the Debian Installer to
take the following steps?
- Ensure that some minimum amount of RAM is available, and refuse to
proceed with a root-on-ZFS installation if not;
- install the toolchain, ZFS source, and any other packages from
"main" or "contrib" necessary to support these, to a RAM disk;
- compile and load ZFS functionality;
- format the target HDD/SSD using ZFS;
- copy the toolchain binaries and ZFS source packages, etc, to the
relevant places on the target HDD/SSD (/usr/bin ,
/var/cache/apt/archives/ , etc);
- resume the installation as usual.
> For most other
> partitions it would probably be just as easy to format them post-
> install anyway.
True. So to proceed towards solving this feature request, I guess the
initial focus should be on how to install the root ZFS
partition/dataset. Figuring out how to handle other
partitions/datasets can wait until that has been solved.