Hapus drive dari soft RAID

11

Saya memiliki server khusus dengan 3 drive SSD di RAID 1. Output dari cat / proc / mdstat:

    Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10] 
md4 : active raid1 sdc4[2] sdb4[1] sda4[0]
      106738624 blocks [3/3] [UUU]
      bitmap: 0/1 pages [0KB], 65536KB chunk

md2 : active raid1 sdc2[2] sda2[0] sdb2[1]
      5497792 blocks [3/3] [UUU]

md1 : active raid1 sda1[0] sdc1[2] sdb1[1]
      259008 blocks [3/3] [UUU]

unused devices: <none>

¿Bagaimana drive dapat dengan aman dihapus dari serangan lunak tanpa kehilangan data apa pun? Saya ingin menghapus drive dari array untuk memformat ulang dan menggunakannya secara independen, sambil menjaga data yang paling penting dicerminkan.

Terima kasih sebelumnya

Raul
sumber

Jawaban:

19

Anda memiliki mirror tiga arah di sana: setiap drive memiliki salinan lengkap dari semua data. Dengan asumsi drive yang ingin Anda hapus adalah /dev/sdc, dan Anda ingin menghapusnya dari ketiga array, Anda akan melakukan langkah-langkah berikut untuk /dev/sdc1, /dev/sdc2, dan /dev/sdc4.

Langkah 1: Hapus drive dari array. Anda tidak dapat menghapus perangkat yang aktif dari array, jadi Anda harus menandainya sebagai gagal dulu.

mdadm /dev/md1 --fail /dev/sdc1
mdadm /dev/md1 --remove /dev/sdc1

Langkah 2: Hapus metadata RAID sehingga kernel tidak akan mencoba untuk menambahkannya kembali:

wipefs -a /dev/sdc1

Langkah 3: Perkecil susunannya sehingga hanya berupa cermin dua arah, bukan cermin tiga arah dengan drive yang hilang:

mdadm --grow /dev/md1 --raid-devices=2

Anda mungkin perlu menghapus bitmap dari maksud /dev/md4sebelum menyusutkannya (manual tidak jelas tentang ini), dalam hal ini Anda akan melakukannya sebelum langkah 3 dengan mdadm --grow /dev/md4 --bitmap=none, kemudian kembalikan setelah itu dengan mdadm --grow /dev/md4 --bitmap=internal.

Menandai
sumber
Apakah ini menyimpan data pada disk yang Anda hapus? Yaitu, bisakah Anda kemudian mengakses data yang ada di RAID dari disk terpisah juga?
Tidak ada yang tahu
1
@Tidak ada, jika Anda ingin membaca data dari drive yang dihapus, Anda harus melewati langkah 2. Hampir semua data masih ada setelah berjalan wipefs(hanya menghapus beberapa byte kunci yang diperlukan untuk pengenalan sistem file), tetapi membacanya menjadi latihan. dalam pemulihan data, bukan hanya masalah memasukkan drive.
Mark
0

man mdadm:

   -r, --remove
          remove listed devices.  They must  not  be  active.   i.e.  they
          should be failed or spare devices.

          As well as the name of a device file (e.g.  /dev/sda1) the words
          failed, detached and names like set-A can be given to  --remove.
          The  first  causes  all failed device to be removed.  The second
          causes any device which is no longer  connected  to  the  system
          (i.e  an  'open'  returns  ENXIO) to be removed.  The third will
          remove a set as describe below under --fail.
Ipor Sircer
sumber