From: Duncan <1i5t5.duncan@cox.net>
To: linux-btrfs@vger.kernel.org
Subject: Re: RAID5 doesn't mount on boot, but you can afterwards?
Date: Thu, 1 Oct 2015 02:21:23 +0000 (UTC) [thread overview]
Message-ID: <pan$b6f45$856590$f682594c$bd5aae60@cox.net> (raw)
In-Reply-To: 1627746.fEEz2JqgZk@hoefnix
Sjoerd posted on Wed, 30 Sep 2015 18:49:21 +0200 as excerpted:
> A RAID5 setup on raw devices doesn't want to automount on boot. After I
> skip mounting I can log in (Ubuntu server 14.04 on kernel 4.1.8) and
> just do a "sudo mount -a" to get all mounted fine. So the array doesn't
> seem to be broken. "btrfs fi show /data" doesn't show anything wrong
> either.
>
> The only weird thing I see in the syslog is :
>
> BTRFS info (device sdd): disk space caching is enabled BTRFS: has skinny
> extents BTRFS: failed to read the system array on sdd BTRFS: open_ctree
> failed
>
> If I reboot the machine the drive in the log changed and looks random
> (i've seen in 3 boots sda, sdc and sde passing by)
>
> I am using btrfs-progs 4.2.1 if that matters in this case...
>
> Anyone have a clue whyt it's not automounting? Or something I can do to
> troubleshoot?
That's very likely because unlike traditional single-device filesystems
(including single-device btrfs), multi-device btrfs has multiple devices
it must know about before it can mount the device, while mount only feeds
it one device.
There are two ways to tell btrfs (the kernel side) about the other
devices.
1) Do a btrfs device scan before trying to mount.
2) Name the component devices in the mount options, using the device=
option (multiple times as necessary to list all devices).
For various reasons including dynamic device discovery effectively
randomizing device sd* assignment, btrfs device scan is the normally used
option.
What's probably happening is that at some point in the boot process,
btrfs device scan is being automatically run, but it's after the attempt
to mount the filesystem during boot, so the boot attempt to mount fails,
but doing a manual mount succeeds, because the scan has already been done
by the time you get a prompt in ordered to run the command.
So what you need to do is find the service that runs the btrfs device
scan, and make the mount depend on it, so the scan is done before the
attempt to mount. Then it should work.
Or if it's easier, simply create a new service that runs the scan, and
have it run before the mount, since rerunning the scan twice won't hurt
anything, it simply needs to run before the mount is attempted in ordered
for btrfs to know what devices compose the filesystem, so it can be
mounted.
--
Duncan - List replies preferred. No HTML msgs.
"Every nonfree program has a lord, a master --
and if you use the program, he is your master." Richard Stallman
next prev parent reply other threads:[~2015-10-01 2:21 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-09-30 16:49 RAID5 doesn't mount on boot, but you can afterwards? Sjoerd
2015-09-30 19:04 ` Leonidas Spyropoulos
[not found] ` <1501fba4ad0.2767.ff8c1290f37e89588b661f56613851bb@sjomar.eu>
2015-09-30 19:29 ` Sjoerd
2015-10-01 2:21 ` Duncan [this message]
2015-10-01 17:04 ` Sjoerd
2015-10-01 17:46 ` Hugo Mills
2015-10-02 1:11 ` Duncan
2015-10-03 20:53 ` guido_kuenne
2015-10-04 2:28 ` Duncan
2015-10-04 11:51 ` Sjoerd
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='pan$b6f45$856590$f682594c$bd5aae60@cox.net' \
--to=1i5t5.duncan@cox.net \
--cc=linux-btrfs@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).