Mała ilość historii:
Mam mały system plików multimedialnych, w którym przechowuję różne filmy i programy telewizyjne używane do konfiguracji HTPC. Zostało to pierwotnie skonfigurowane przy użyciu btrfs
zewnętrznego dysku WD 1 TB.
Później zdecydowałem się na zakup innego dysku, aby dać temu systemowi plików możliwość kopiowania RAID1. Ten dysk to Seagate Barracuda (2 TB, BARRACUDA 7200.14 FAMILY). Niestety nie był to dobry wybór napędu. Dysk zaczął wkrótce rozwijać dużą liczbę błędów odczytu, chociaż BTRFS był w stanie je naprawić.
Ostatnio wzrosła liczba błędów odczytu z tego dysku, a jego stan stale się pogarsza. BTRFS zaczyna się teraz zawieszać:
kernel: RSP: 0018:ffff88005f0e7cc0 EFLAGS: 00010282
kernel: RIP: 0010:[<ffffffffa0081736>] [<ffffffffa0081736>] btrfs_check_repairable+0xf6/0x100 [btrfs]
kernel: task: ffff88001b5c4740 ti: ffff88005f0e4000 task.ti: ffff88005f0e4000
kernel: Workqueue: btrfs-endio btrfs_endio_helper [btrfs]
kernel: CPU: 1 PID: 3136 Comm: kworker/u8:3 Tainted: G O 4.5.3-1-ARCH #1
kernel: invalid opcode: 0000 [#1] PREEMPT SMP
kernel: kernel BUG at fs/btrfs/extent_io.c:2309!
kernel: ------------[ cut here ]------------
kernel: BTRFS info (device sdc1): csum failed ino 73072 extent 1531717287936 csum 3335082470 wanted 3200325796 mirror 0
kernel: ata3: EH complete
kernel: BTRFS error (device sdc1): bdev /dev/sda3 errs: wr 0, rd 18, flush 0, corrupt 0, gen 0
kernel: blk_update_request: I/O error, dev sda, sector 2991635296
Chciałbym usunąć wadliwy dysk z macierzy RAID1, wracając do braku nadmiarowości na jednym dysku. Niestety wydaje się, że brakuje dokumentacji, jak to zrobić.
Wiem, że można uruchomić następujące czynności:
sudo btrfs balance start -dconvert=single /media
przekonwertować profil danych do single
trybu, ale nie jestem pewien, gdzie GDZIE dane zostaną umieszczone. Ponieważ jeden z dysków ulega awarii, chciałbym być w stanie zapewnić, że BTRFS nie usunie sumiennie wszystkich danych z dobrego dysku i umieści jedną kopię na złym dysku - zamiast tego chciałbym po prostu zachowywać się tak, jakby drugi dysk nigdy nie istniał (jak w, przekonwertować z powrotem do mojej starej konfiguracji)
To nie działa:
$ sudo btrfs device delete /dev/sda3 /media
ERROR: error removing device '/dev/sda3': unable to go below two devices on raid1
Co mam zrobić Pomoc byłaby bardzo mile widziana.
TL; DR: zacząłem z 1 dyskiem w BTRFS single
, dodałem inny dysk, sprawiłem , że RAID1
inny dysk jest teraz w błędzie, w jaki sposób powrócić do tylko jednego dysku (w szczególności znanego dobrego) z single
?
dconvert=single
dla jednego fragmentu robi tylko to, czego się obawiałem i usuwa znaną dobrą kopię. :(