硬件是一个外部 2TB 总线供电的 USB 磁盘。
我想要的是 2x 1TB btrfs 的 RAID1 设置。
__
我使用 RAID1 btrfs 的动机是因为我刚刚阅读了一篇文章,讨论了当一个卷上的校验和失败时,这种设置如何自动修复损坏的文件。
.jpeg
只需翻转一位就会发生什么的示例(我为此使用了 vim。:%!xxd -b
)
这个答案是一个指南,用于展示我是如何做到这一点的。
我创建了一个 GPT 分区表,其中使用gparted
. 随意命名分区,创建 RAID 时这些名称无论如何都会丢失。
获取设备 ID:
$ sudo btrfs filesystem show
Label: none uuid: 607b4153-7aa9-444d-bc15-c5fe9038f255
Total devices 2 FS bytes used 28.00KB
devid 1 size 1.82TB used 2.03GB path /dev/sdc
*** Some devices missing
Label: 'Max' uuid: b6647427-9f27-4157-b47b-77f74054b885
Total devices 1 FS bytes used 28.00KB
devid 1 size 931.49GB used 2.04GB path /dev/sdc1 // first one
Label: 'Moritz' uuid: d0eaf97d-249e-4b7c-88a5-b60cc2d489d9
Total devices 1 FS bytes used 28.00KB
devid 1 size 931.49GB used 2.04GB path /dev/sdc2 // second one
Run Code Online (Sandbox Code Playgroud)创建 RAID:
$ sudo mkfs.btrfs -L RAID-Datensicherung -m raid1 -d raid1 /dev/sdc1 /dev/sdc2
Run Code Online (Sandbox Code Playgroud)由于您还不能写入它,您需要成为新设备的所有者并更改权限。将设备安装在鹦鹉螺中,或者然后:
$ cd /media
$ sudo chown julien:julien RAID-Datensicherung
$ sudo chmod 700 RAID-Datensicherung
Run Code Online (Sandbox Code Playgroud)在 nautilus 中安装设备时,会显示两个卷,但只有其中一个会显示为已安装。
一旦您将文件从另一个外部驱动器复制到磁盘,您将看到由于 RAID 镜像,RAID 卷的写入速度是其他外部设备读取速度的两倍。
我仍然需要找出如何检查自我修复是否有效,并将相应地更新此答案。
用户@Oli 正在询问有关翻转一位的相关问题。就像他一样,我需要隐秘地做这件事,即没有我互动的时间戳或类似的东西。
如果在挂载文件系统时更改一位,则会注册更改并立即镜像。更改/“损坏”的文件仅被视为更新 - 而不是bitrot。
我假设您使用 2 个外部驱动器或 1 个容纳 2 个或更多驱动器的机柜。理论上,设备是否通过 USB 或 SATA 连接并不重要,btrfs 一旦找到各个驱动器/分区就应该能够组装阵列。
您应该查看btrfs 内核 wiki。第一个用例似乎涵盖了您的要求:
mkfs.btrfs -m raid1 -d raid1 /dev/sda1 /dev/sdb1
Run Code Online (Sandbox Code Playgroud)
但我不确定自我修复部分。我只从ZFS知道这一点。
归档时间: |
|
查看次数: |
7974 次 |
最近记录: |