Kyle Manna posted on Tue, 20 Oct 2015 10:24:48 -0700 as excerpted:

> Hi all,
> 
> I have a collection of three (was 4) 1-2TB devices with data and
> metadata in a RAID1 mirror.  Last night I was struck by the Click of
> Death on an old Samsung drive.
> 
> I removed the device from the system, rebooted and mounted the volume
> with `-o degraded` and the file system seems fine and usable.  I'm
> waiting on a replacement, drive but want to remove the old drive and
> re-balance in the meantime.
> 
> How do I remove the missing device?  I tried the `btrfs device delete
> missing /mnt` but was greeted with "ERROR: missing is not a block
> device".  A quick look at that btrfs-progs git repo shows that
> `stat("missing")` is called, which of course fails since missing isn't a
> block device.  Nothing other then `btrfs replace` seemed intuitive and
> all the docs mention the older command.  What's the move?
> 
> Thanks!
> - Kyle
> 
> Versions:
> Kernel: 4.2.3-1-ARCH
> btrfs-progs: 4.2.2-1 ᐧ

I believe the current advice given here (that you were likely trying to 
follow, wrapped link)...

https://btrfs.wiki.kernel.org/index.php/
Using_Btrfs_with_Multiple_Devices#Replacing_failed_devices

... is dated and no longer works due to code change some time in the past.

There's a set of (very) recent patches, to the kernel and userspace both 
(I just updated userspace and it's in the git devel-branch v4.2.3-49-
g4db87a1 I just built, kernelspace, I don't see it in linus-mainline yet, 
so I'd guess it's in the btrfs-integration patches, to land in the v4.4 
commit window if not in 4.3 as it's getting late in the cycle for that.

btrfs fi show <path>

That will list the btrfs component devices together with their devids.

Then use the appropriate devid like so:

btrfs dev del <devid> <path>

The -progs commit is d462081f, by Anand Jain, titled:

btrfs-progs: Introduce device delete by devid

According to it, the required kernel commit (title only listed) is 
similar:

Btrfs: Introduce device delete by devid

You can probably find them on-list if you wish to cherry-pick them into a 
current version.

-- 
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

--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to