Jak przenieść RAID z oprogramowaniem Linux na nową maszynę?

20

Mam nowo zbudowaną maszynę ze świeżą instalacją Gentoo Linux i programową macierz RAID 5 z innej maszyny (4 dyski IDE podłączone do zewnętrznych kontrolerów PCI). Z powodzeniem przeniosłem kontrolery na nową maszynę; dyski są wykrywane przez jądro; i użyłem mdadm --examine i zweryfikowałem, że pojedyncza partycja RAID jest wykrywana, czyszczona, a nawet w „właściwej” kolejności (hde1 == dysk 0, hdg1 == dysk 1 itd.).

Nie mam dostępu do oryginalnych plików konfiguracyjnych ze starszego komputera. Jak powinienem ponownie aktywować tę tablicę bez utraty danych?

romany
źródło

Odpowiedzi:

20

Naprawdę potrzebujesz oryginalnego pliku mdadm.conf. Ale ponieważ go nie masz, musisz go odtworzyć. Najpierw, zanim cokolwiek zrobisz, przeczytaj na mdadm na stronie podręcznika . Po co szansa na utratę danych z powodu sytuacji lub polecenia, których nie miałeś pojęcia?

To powiedziawszy, ta rada jest na własne ryzyko. Możesz łatwo stracić wszystkie dane, używając niewłaściwych poleceń. Przed uruchomieniem czegokolwiek dokładnie sprawdź konsekwencje polecenia . Nie mogę ponosić odpowiedzialności za utratę danych lub inne problemy związane z podejmowanymi przez Ciebie działaniami - dlatego dokładnie sprawdź wszystko .

Możesz spróbować:

mdadm --assemble --scan --verbose /dev/md{number} /dev/{disk1} /dev/{disk2} /dev/{disk3} /dev/{disk4}

To powinno dać ci trochę informacji do rozpoczęcia pracy, wraz z identyfikatorem. Stworzy również nowe urządzenie tablicowe / dev / md {number}, z którego powinieneś być w stanie znaleźć dowolne mounty. Nie używaj tej --autoopcji, wersja strony man sugeruje, że w pewnych okolicznościach może to spowodować zastąpienie ustawień macierzy na dyskach. Prawdopodobnie tak nie jest, a strona prawdopodobnie musi zostać przepisana dla zachowania przejrzystości, ale po co to robić?

Jeśli tablica zostanie poprawnie złożona, a wszystko jest „normalne”, pamiętaj o zapisaniu i zapisaniu pliku mdadm.conf /etc, aby był dostępny w czasie uruchamiania. Dołącz nowy identyfikator z tablicy do pliku, aby mu pomóc.

Avery Payne
źródło
+1 - Zaraz! Przeniosłem kilka zestawów RAID-1 i RAID-5 między maszynami z systemem Linux. Nie jestem pewien, czy widzisz informacje o „--auto”. Ze strony podręcznika na komputerze CentOS 5.1 widzę tylko, że „--auto” tworzy wpis / dev / mdX dla tablicy. Nie widzę niczego, co mogłoby wskazywać, że zapisałby na dyskach. (W rzeczywistości „--auto = tak” jest domyślnym ustawieniem w mdadm na CentoS 5.1, jeśli nie podano „--auto”.) „--Update” może być twoim przyjacielem, jeśli chcesz przenieść tablicę do innej numer mdX z oryginału określonego w superbloku.
Evan Anderson
Doskonale, mogę z powodzeniem zamontować tablicę. Jedynym problemem jest to, że RAID nie pojawia się po ponownym uruchomieniu; Muszę uruchomić ponownie mdadm -Av / dev / md0. Masz pomysł, dlaczego?
romandas
Czy odtworzyłeś plik /etc/mdadm.conf? System przeszuka ten plik w czasie uruchamiania, aby znaleźć tablice.
Avery Payne
Zrobiłem. Różnica polegała na ponownej kompilacji jądra za pomocą CONFIG_MD_AUTO. Początkowo nie myślałem, ponieważ myślałem, że istnieje sposób, w jaki mdadm mógłby to zrobić. Przeczytałem tam, że kod jądra nie jest tak niezawodny, jak używanie mdadm do automatycznego montowania, ale nie mogę już nic znaleźć na poparcie tego.
romów
2

Chciałem tylko dodać moją pełną odpowiedź dla Debiana.

  • Zainstaluj menedżera raidów za pomocą -> sudo apt-get install mdadm
  • Wyszukaj stare dyski rajdowe za pomocą -> sudo mdadm --assemble --scan

  • W tym momencie lubię sprawdzać BLKIDi montować nalot ręcznie, aby potwierdzić.

    blkid mount /dev/md0 /mnt

  • Dołącz informacje do mdadm.conf przez -> mdadm --detail --scan >> /etc/mdadm/mdadm.conf
  • Zaktualizuj initramfs przez -> update-initramfs -u

  • Rozwiązywanie problemów:

Upewnij się, że wynik mdadm --detail --scanodpowiada twojemu/etc/mdadm/mdadm.conf

    nano /etc/mdadm/mdadm.conf

    ARRAY /dev/md/0 level=raid5 num-devices=3 metadata=00.90 UUID=a44a52e4:0211e47f:f15bce44:817d167c
  • Przykład FSTAB

    /dev/md0    /mnt/mdadm   ext4    defaults,nobootwait,nofail     0    2
    

/unix/23879/using-mdadm-examine-to-write-mdadm-conf/52935#52935

/ubuntu/729370/can-i-transfer-my-mdadm-software-raid-to-a-new-system-in-case-of-hardware-failur

Jak przenieść RAID z oprogramowaniem Linux na nową maszynę?

FreeSoftwareServers
źródło
1
mdadm -Ac partitions -m 0 /dev/md0

Przeskanuj wszystkie partycje i urządzenia wymienione w / proc / partitions i złóż / dev / md0 ze wszystkich takich urządzeń za pomocą superbloku RAID z niewielką liczbą 0.

jeśli konf zakończyło się powodzeniem, możesz dodać --detail --scan >> /etc/mdadm/mdadm.conf, aby złapał go przy starcie

elprup
źródło