Czy możesz zmienić wersję metadanych na istniejącej tablicy?


21

Grub wymaga metadanych w wersji 0.90 Zastanawiam się, czy mogę zmienić istniejące tablice, aby użyć tego zamiast domyślnego, który jest 1.2. W ten sposób nie muszę przeprowadzać ponownej instalacji. Jeśli tak, jak mogę to zrobić?

Odpowiedzi:


5

W GRUB wiki potwierdza:

Ponadto (od 1.96 + 20080724) GRUB może uruchamiać się tylko z RAID, który korzysta z superbloku metadanych w wersji 0.90 (tj. Utworzonego z opcją --metadata = 0.90 dla mdadm).

Co ciekawe, strona man dla mdadm mówi

-e, --metadata =

Określ styl superbloku (metadanych rajdowych), który ma być używany. Wartość domyślna to 0,90 dla --create i zgadywania dla innych operacji.

mdadm -Q -D <device>Dla pewności sprawdziłbym dwukrotnie .

Następnie, jaki poziom macierzy RAID używasz? Najlepszy byłby scenariusz lustrzany (RAID 1)

  1. Rób kopie zapasowe
  2. Odmontuj tablicę 0
  3. Usuń urządzenie A z tablicy 0 nurządzeń
  4. Zerowy superblok na urządzeniu A
  5. Utwórz tablicę 1 za pomocą urządzenia A i n-1części zapasowych, jawnie używając starego formatu superbloku
  6. Powtórz dla pozostałych B za pośrednictwem n-1urządzeń
  7. (Opcjonalnie) ponownie numeruj tablicę

... ale zdecydowanie sprawdź, czy musisz to zrobić!


więc to potwierdziłem dawno temu. Korzystam z raid10, f2. oczywiście starałem się uniknąć odtworzenia tablicy.
ksenoterracid

Czy próbowałeś już linux-raid at vger.kernel.orglisty mailingowej?
Andrew

dziwne, że nie dostałem powiadomienia o tym. nie, nie próbowałem. Właśnie go wyczyściłem i odtworzyłem tablicę. Przyjmuję tę odpowiedź z krótkim rozwiązaniem, że jest NIE, a może (absurdalnie trudne)
ksenoterracid

16

Ta informacja jest prawdopodobnie za późna, aby pomóc OP, ale może pomoże komuś innemu.

Pierwsze polecenie usuwa super bloki, a drugie polecenie tworzy nową tablicę, ale zakłada, że ​​urządzenia są czyste. Właśnie to wykonałem i wszystko wydaje się być w porządku. Zdecydowanie poleciłbym kopię zapasową przed zrobieniem tego. Nie miałem danych do stracenia, a zatem nie można sprawdzić integralności. Chciałem tylko uniknąć kolejnej 4-godzinnej ponownej synchronizacji.

$ mdadm --zero-superblock /dev/sd[a-z]1
$ mdadm --create /dev/md0 --assume-clean \
    --level=10 --raid-devices=10 /dev/sd[a-z]1 --metadata=0.90

1
prawdopodobnie za późno na OP, ale mnie uratowałeś, dzięki za odpowiedź
neofutur,

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.