GRUB reinstall SW RAID1 esetén

Fórumok

Üdv mindenkinek,

Abba a problémába futottam bele, hogy egy szétesett szoftweres raid1 alatti merevlemez csere után képtelen vagyok telepíteni a grub-ot az új merevlemezre.

Sajnos az a lemez esett ki amenyikről indult a rendszer és másik merevlemezen nem volt telepített rendszerbetöltő. Így most van egy jó rendszerem (raid1 szinkronizálva) de nem tud elindulni.

Live cd segítségével próbáltam telepíteni a grub-ot (raid összeállt, root partíció rendben) de a grub nem úgy működik mint ahogy kellene.


$ grub-install /dev/sda
Searching for GRUB installation directory ... found: /boot/grub
The file /boot/grub/stage1 not read correctly.

Ha simán elindítom a grubot majd a grub promptnál megadom a root-ot akkor csak simán visszakapom a promptot és kész.


$ grub

grub> root (hd0,0)

grub>

Nem mondja azt, hogy...

Filesystem type is ext2fs, partition type 0xfd

Tehát így telepíteni sem lehet. Látott már valaki ilyet? Mi lehet a gond?

A válaszokat előre is köszönom.

Hozzászólások


grub-install /dev/md0

elvileg ennyi ;)

azt azert nezd meg, hogy a

/boot/grub/grub.cfg

fileban a kernel boot parameterei kozott legyen megadva, hogy az md0 mibol all (legutolso argumentum itt lent, ezta update-grub2 maga'tol nem teszi bele):


        insmod raid
        set root=(md0)
        linux   /boot/vmlinuz-xxx root=/dev/md0 ro md=0,/dev/sda1,/dev/sdb1
        initrd  /boot/initrd.img-xxx

szerk: igen, az alapfelteves a fentiekben hogy a /boot konyvtar az a /dev/md0-on van. a legtisztabb hogy nincs kulon /boot, hanem a /dev/md0 az maga a root fs.

A.

Sziasztok

Későbbiekre írnám, hogy más ne kerüljön ilyen helyzetbe.
Ha nincs is kedved, időd vagy akármi arra hogy a particiókat megtervezd, a /boot -ot nagyon érdemes külön RAID1-re tenni. És a jelen helyzetet is teljesen jól megoldotta volna. Nembeszélve arról hogy a rendszer indulna disz halál esetén is, ami elvárható ha RAID-ezünk. És tényleg pillanatok alatt megvan, és ha kölön van a /boot akkor a rendszer mehet nem csak RAID1-re.

Apal +1 szerintem teljesen járható

nagyon érdemes külön RAID1-re tenni
Ez jo kerdes, mindig is erdekelt, hogy miert? igazabol ha kulon /-t csinalsz (azaz a nagy helyigenyu" /usr, /var, stb kulon particion van), akkor szerintem szinte mindegy, hogy a /boot-ot most kulon particio, vagy a / re'sze (es akkor mar egyszerubb, hogy nincs kulon... . Vagy csak akkor erdemes a /boot-ot kulon tenni, ha a / ala' mindent (/usr, /var) o"mleszt az ember?

A.

Sziasztok!

Ugyan régi már a topic, de egy hasonló problémával bajlódom.
Adott egy boot partíció, valamint egy logikai lvm kötet, amin rajta van a többi csatolás. Ezt szeretném átköltöztetni 2 új merevlemezre, ami raid1-be van kötve.
A linuxakadémia egyik videóját használtam fel ehhez, viszont az ottaniktól több ízben el kellett térnem. (Linux rendszer költöztetése másik diszkre)
Létrehoztam md0 raid1 tömböt a boot partíciónak. rsync megoldással szépen átmásoltam a jelenlegi boot partíció tartalmát az md0-ra felcsatolt boot-ra. Fstab-ban átírtam a UUID-t is. Az lvm-nek egy md1-es tömböt hoztam létre. lvm szinten szépen átpakoltam mindent, majd az eredeti pv-t eltávolítottam a logikai kötetből. Mdadm.cof létrehozva, initramfs updatelve.
A problémám ott van, hogy nem tudom a grubot telepíteni, próbálkoztam az itt leírtakkal is. A videóban ubuntu rendszeren megy a történet, ezért nem tudom hasznát venni.
Valaki tudna egy kis támpontot, segítséget nyújtani?

Live rendszer alól:
Csatlakoztasd be a lemezt, amin a gyökér van.
pl:
mount /dev/sda1 /mnt/rendszer
grub-install root-directory=/mnt/rendszer /dev/sda

üdv: pomm

root (hd0,1)... A partíciók számozása egyel kezdődik, nem? :)


$ grub

grub> root (hd0,1)

grub> setup (hd0)

grub> root (hd1,1)

grub> setup (hd1)

Mondjuk előtte még nézd meg, hogy devices.map-ba jól vannak el a lemezek, mert attól függ, hogy mi a hd0 és hd1.
[szerk] Lehet mégsem hd0,1... :)
Próbáld meg úgy, hogy valami live rendszer elindítasz, valahova felmountolod szépen a dolgokat, min. / meg /boot, aztán chroot bele, és úgy próbálod meg újratenni.

--
Discover It - Have a lot of fun!

Köszönöm a tanácsokat.

Végül is megoldódott a dolog csak nem értem, hogy mi volt a hiba.

Rossz működés alkalmával a követlkezőket próbáltam:
- Debian Linux telepítő cd rescue mode
- Grub újratelepítése menüpont (jött a hiba)
- Promptot kértem a /dev/md0 -ra (root fájlrendszer)
- grub-install /dev/sda (jött a hiba)

Atán megpróbáltam egy knoppix-al is:
- Knoppix indítása a gépen
- mdadm --assemble /dev/md0 /dev/sda1 /dev/sdb1
- mount /dev/md0 /mnt/tmp
- grub-install --root-directory=/mnt/tmp /dev/sda
- grub-install --root-directory=/mnt/tmp /dev/sdb

A második esetben működött a dolog... csak azt nem értem, hogy a debian telepítővel miért nem?

--
maszili

Az első esetben egy promptot kértem a /dev/md0-ra (chroot) így nem kell megmondani, hogy mit hol keressen mert minden ott van ahol lenni szokott.

A második esetben a root fájlrendszer fel van csatolva egy ideiglenes könyvtárba ezért meg kellett mondani a grubnak, hogy ott keresse a hozzávalókat.

--
maszili

És most, hogy működik - jöhet a mocskos-halál próba.
Vagyis az egész előlről - friss emlékekkel újra megalkothatod, mert még emlékszel a jó szekvenciára.

  1. Azt amelyikről most indul, azt lehúzod, helyére átdugod a másikat - lesz szíves a cucc elindulni a másik féllábúról.
  2. Aztán visszadugod az előbb lehúzottat a mostani boot disk előbbi helyére - lesz szíves a cucc elindulni normálisan
  3. Az 1., utána 2. pont újbóli végre hajtása
  4. Ha most is jó, akkor csakugyan jó
  5. Bevésed az általad jónak ítélt eljárást a blogodba - trey biztos nem hányja el a cetlit, nem önti le kávéval, nem dobja ki lomtalanításkor
  6. A szokásos befejezés: elégedetten hátradőlsz (a háttámla felé)
  7. ...akár tíz percre is

Tegyük föl a példa kedvéért, hogy az 1. partíción van a /boot könyvtárad - akár a root, akár egy külön /boot partíció ez. Tegyük föl azt is, hogy tükrözve van.

Bebootolsz, a szoftveres RAID1-et be se kell kapcsolni, elég, ha a tömb rendben van és a GRUB file-jai a helyükön vannak. Ilyenkor behívod a GRUB-ot és:


devive (hd0) /dev/sda
root (hd0,0)
setup (hd0)
device (hd0) /dev/sdb
root (hd0,0)
setup (hd0)

Ha IDE egyégeid vannak, akkor értelemszerűen helyettesítsd az sda-sdb párost.

A fönti pár parancs mindkét lemezre úgy telepíti a GRUB-ot, mintha bootolásnál az a lemez lenne az első a sorban (0x80-as). Köszönhetően a hulladék PC BIOS bootfolyamatának, az eszközök mindig sorba állnak és nem abszolút egységszámmal hivatkozik rájuk, hanem relatívval. Ezért kell az, hogy sdb-re is úgy rakod föl, mintha az lenne az 1. vinyó - így ha sda kidöglik, arról ugyanúgy tudsz bootolni.

Egyébként a Linux eszközelnevezéseiben ugyanez az idiotizmus jelenik meg (de ez nem a Linux hibája): nem abszolút nevekkel hivatkozik (mint pl. a Solaris), hanem sda, sdb stb. A NetBSD/OpenBSD wd0, wd1 stb. elnevezése dettó ugyanez.

--
Wir sind erfaßt, sind infiziert,
Jedes Gespräch wird kontrolliert.

Ha a hibás esetben kiadtam a ...

root (hd0,0)

... parancsot akkor nem mondott semmit a grub. A jól működő esetben meg azt mondta, hogy OK ez egy raid partíció és van ott egy ext2fs fájlrendszer. (Filesystem type is ext2fs, partition type 0xfd)

Tehát amit nem értek az az, hogy az első esetben miért nem ment.

--
maszili

Sziasztok!

Nem akartam új topicot nyitni....

Abba futottam bele, hogy az egyik gépen -pár óra eltéréssel- elhalálozott két ssd, ami raid1-ben volt.
A rajta lévő dolgokról volt mentés, igazából már nyugdíjba küldött lemezek voltak, helyüket már egy ideje átvette két nvme eszköz. Ami viszont problémát okoz, hogy a grub figyelmetlenségből nem lett elköltöztetve ezekről az eszközökről.

Most adott 2 db. nvme ssd raid 1-ben, grub nélkül és két halott sata ssd.  Hogyan lehetne a lehető legegyszerűbben valami live alól grubot telepíteni a müködő raid 1-ben lévő diszkekre?

Előre is köszi!

üdv: pomm

A 852-es kídlap telepötúsa sikeresen befejezádétt

https://help.ubuntu.com/community/Grub2/Installing#via_the_LiveCD_termi…

a mount az a raid device legyen (dev/mdX), a grub installnak viszont a az nvme devicet (/dev/nvme0n1) add meg. ne felejtsd el a grub.cfg-be is belenezni hogy ott mi szerepel. uuid-ek jok legyenek.

A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!