help-guix
[Top][All Lists]
Advanced

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

Re: Guix System ext4 index full


From: Tobias Geerinckx-Rice
Subject: Re: Guix System ext4 index full
Date: Thu, 04 Jun 2020 15:05:14 +0200

Roel,

Roel Janssen 写道:
Thanks for the suggestion.  So I did:
$ tune2fs -O large_dir /dev/sdd3

.. and after a reboot I get booted into a GRUB resque shell.

Shart. It seems that GRUB still[0] can't read ext4 file systems with features newer than 2017 :-/ I'll never recommend this again (I use it myself…).

The flag can't be cleared once set:

 $ sudo tune2fs -O ^large_dir img
 tune2fs 1.45.6 (20-Mar-2020)
 Clearing filesystem feature 'large_dir' not supported.

Your data's perfectly safe.  This is just a GRUB limitation.

So.. do you have a suggestion for how I could boot into the Guix system
again?

I think realistic options are:

- Migrate to any other file system like btrfs, then use the live USB's GRUB to bootstrap it using ‘configfile (hdX,Y)/your/grub.cfg’ so you don't have to reinstall anything, just copy. This can even be done-in place[1], assuming you have back-ups.

- Use a separate /boot partition if you want to keep using ext4 for large /gnus. You'll have to manually copy each kernel & friends to /boot but this can be automated in your system .scm.

After booting from a live USB, I chrooted into the Guix system and when
running the following command, I get the following error:
$ guix system reconfigure /etc/config.scm
...
guix system: error: while setting up the build environment: cannot
pivot old root directory onto
'/gnu/store/4q1vpidsawmfhmqdwy4mxvjc720jxcjm-slim-
1.3.6.drv.chroot/real-root': Invalid argument

I think your in-chroot guix is talking to the live system's guix-daemon. Perhaps stopping the out-of-chroot daemon and starting a ‘guix-daemon --disable-chroot’ inside the chroot will work.

Kind regards,

T G-R

[0]: https://savannah.gnu.org/bugs/?56897
[1]: https://btrfs.wiki.kernel.org/index.php/Manpage/btrfs-convert

Attachment: signature.asc
Description: PGP signature


reply via email to

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