void-linux/void-runit

03-filesystems.sh: too emergency_shell prone?

gt7-void opened this issue · 2 comments

In particular I was bitten by

[ -x /bin/btrfs ] && btrfs device scan || emergency_shell

Since I don't use it I had blacklisted the btrfs module, causing btrfs device scan to fail.


It's very unfortunate when emergency_shell is triggered without a real cause, since my headless maching gets stuck until I can go to school to fix it (i.e. type "exit" at the shell).

I should point out that this particular server I switched from debian to void when I got fed up with systemd-mount doing exactly that thing... (blocking the boot).

More info: I had forgotten that a few months ago I had tested btrfs in this server. I think I erased everything but apparently the disk still "looks like" a btrfs (partitionless) disk:

# file -s /dev/sde
/dev/sde: BTRFS Filesystem ...

In fact, in a system without any disk that "looks like btrfs", running btrfs device scan does not result in a failure, even if btrfs is blacklisted.

Summary: I had to do TWO non-standard things to trigger this (unexpected, undesired) behaviour: blacklist btrfs AND have a disk that was formatted with btrfs at some poin

Would it not be simpler to uninstall btrfs-progs so as to not trip the [ -x /bin/btrfs ] test?

$ xbps-query -o $(which btrfs)
btrfs-progs-5.11.1_1: /usr/bin/btrfs (regular file)