[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Move /gnu/store to another filesystem

From: Théo Maxime Tyburn
Subject: Move /gnu/store to another filesystem
Date: Wed, 25 May 2022 18:56:23 +0200
User-agent: mu4e 1.6.10; emacs 28.0.90


I am running out of space on my 128GB SDD. It seems to be too small for
holding 2 months of store with regular updates. So I want to "transfer"
it to an interal HDD which is much larger and has a btrfs on it.

This is what I tried so far. I created a btrfs subvolume on my HDD and
called it gnu-store. I then booted from a usb-stick, and copied
/gnu/store/* directly into the subvolume. As a final preparation I moved
/gnu/store to /gnu/store-backup and created an empty /gnu/store folder. I 
booted from a system which basically mounts gnu-store on /gnu/store (see
the definition below). Note that I ran "guix system reconfigure ..." before
doing the copy, so the stores are identical. It boots but
complains that there is "no such language scheme".

Maybe this portion of the system definition will make it clearer:

--8<---------------cut here---------------start------------->8---
(define %boot-fs
  (file-system (device (file-system-label "boot-fs"))
               (mount-point "/boot")
               (type "ext2")))

(define %root-fs
  (file-system (device (file-system-label "root-fs"))
               (mount-point "/")
               (type "ext3")))

(define %store-fs ;; <--- This is what I want to add.
  (file-system (device (file-system-label "storage-fs"))
               (mount-point mt-point)
               (type "/gnu/store")
               (options (string-append "subvol=" "gnu-store"))
               (needed-for-boot? #t)
               (dependencies %root-fs)))

 (file-systems (append
                (list %boot-fs %root-fs %store-fs)
--8<---------------cut here---------------end--------------->8---

What am I doing wrong here? I though with this config root would be mounted 
first then the store
will be mounted on it. But this error seems to tell that something is

Anyway this is probably not the right way to do it. Simply coping
/gnu/store around looks a bit brutal. 

I’d appreciate any kind of help :)


reply via email to

[Prev in Thread] Current Thread [Next in Thread]