On 2025-01-23, Marek Paśnikowski wrote:
> 23.01.2025 19:47:50 CET Felix Lechner:
>> > suppose that I define a new filesystem for `/gnu/store` on another
>> > SSD.
>> 
>> That's a special case, i.e. the caveat from above, that requires great
>> care.  Not all filesystem paths are created equal.  Even experienced
>> Guixers pull their hair over it.
>> 
>> I would start with /home or /efi.
>> 
>
> Yes, I must not forget that it is very strongly coupled to the init system, 
> so 
> maybe not after all. I can see a layout where the root partition is mostly 
> dedicated to `/gnu/store` and everything else possible is on other drives.

Well, the challenge with guix is that basically everything is in
/gnu/store, the only thing left are a few smallish files in /etc, maybe
/boot/efi, /var and whatever files are in your homedir.

For example, on a minimal year-old system with ~30 generations over the
course of maybe 3 months (older generations were removed), the vast
majority is in /gnu:

sudo du -shc /* | sort -h
...
8.0K    /bin
16K     /lost+found
16K     /tmp
24K     /usr
264K    /etc
1.9M    /run
12M     /boot
289M    /var
3.0G    /root
4.7G    /home
41G     /gnu
49G     total

So, there is not really a lot that can be split elsewhere. /gnu/store is
mounted in a special namespace, and the files under it begin with unique
hashes, so you would have a hard time splitting that across multiple
drives...

You could probably build an entirely fresh guix system onto another disk
with something like:

  guix system init /path/to/config.scm /path/to/mounted/disk

Then it would set up an entirely new /gnu/store on that system(copying
from the old system anything it could), but you might loose the ability
to boot to the older generations, depending on how the bootloader was
configured, since it is effectively a new installation.

So for the most part, other that just splitting off your homedir, using
something like RAID or BtrFS or ZFS or BcacheFS or similar are the only
real options to spread the load across multiple disks.


live well,
  vagrant

Attachment: signature.asc
Description: PGP signature

Reply via email to