From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-oi0-f53.google.com ([209.85.218.53]:34491 "EHLO mail-oi0-f53.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750962AbcGESxE (ORCPT ); Tue, 5 Jul 2016 14:53:04 -0400 Received: by mail-oi0-f53.google.com with SMTP id s66so241652512oif.1 for ; Tue, 05 Jul 2016 11:53:03 -0700 (PDT) MIME-Version: 1.0 From: Chris Murphy Date: Tue, 5 Jul 2016 12:53:02 -0600 Message-ID: Subject: 64-btrfs.rules and degraded boot To: Btrfs BTRFS Content-Type: text/plain; charset=UTF-8 Sender: linux-btrfs-owner@vger.kernel.org List-ID: For some reason I thought it was possible to do degraded Btrfs boots by removing root=UUID= in favor of a remaining good block device, e.g. root=/dev/vda2, and then adding degraded to rootflags. But this doesn't work either on CentOS 7.2 or Fedora Rawhide. What happens is systemd waits for vda2 (or by UUID) indefinitely, it doesn't even try to mount the volume. I think it's due to the udev rule that's basically saying the device isn't ready because not all of its devices are there. [root@f24m ~]# cat /usr/lib/udev/rules.d/64-btrfs.rules # do not edit this file, it will be overwritten on update SUBSYSTEM!="block", GOTO="btrfs_end" ACTION=="remove", GOTO="btrfs_end" ENV{ID_FS_TYPE}!="btrfs", GOTO="btrfs_end" # let the kernel know about this btrfs filesystem, and check if it is complete IMPORT{builtin}="btrfs ready $devnode" # mark the device as not ready to be used by the system ENV{ID_BTRFS_READY}=="0", ENV{SYSTEMD_READY}="0" LABEL="btrfs_end" I am kinda confused about this "btrfs ready $devnode" portion. Isn't it "btrfs device ready $devnode" if this is based on user space tools? -- Chris Murphy