Not*_*ble 15 linux raid hard-drive btrfs
我正在尝试决定一个文件系统,并想知道是否可以在不停机的情况下更换 btrfs RAID 中的故障驱动器。
假设我使用以下命令创建了一个新的 btrfs 文件系统
mkfs.btrfs -d raid1 /dev/sdb /dev/sdc
Run Code Online (Sandbox Code Playgroud)现在假设有一天/dev/sdc
失败了。有两种可能性:它可能会逐渐失败,显示 SMART 错误 - 在这种情况下,我可以添加一个新设备,btrfs device add /dev/sde /mnt; btrfs filesystem balance /mnt
然后删除旧设备btrfs device delete /dev/sdc /mnt
。
但是如果它突然失败,变得不可读......网络搜索说在这种情况下我必须首先卸载文件系统,以降级模式挂载,添加一个新设备,然后删除丢失的设备。
umount /mnt
mount -o degraded /dev/sdb /mnt
btrfs device add /dev/sdf /mnt
btrfs device delete missing /mnt
Run Code Online (Sandbox Code Playgroud)卸载显然是一个破坏性的操作,所以会有停机时间——任何使用文件系统的应用程序都会出现 I/O 错误。但是考虑到 btrfs 正在大力发展,这些关于 btrfs 的“教程”看起来已经过时了。
问题是:考虑到 btrfs 的当前状态,是否可以在线执行此操作,即无需卸载?
如果没有,是否有可以满足这种需求的纯软件解决方案?
Bri*_*ian 11
在 Linux 3.8 中,btrfs replace mountpoint old_disk new_disk
添加了。如果您运行的是最新内核,它将提供您正在寻找的功能。
归档时间: |
|
查看次数: |
6553 次 |
最近记录: |