Kirjoittaja Aihe: Miten FreeBSD Grubiin? [Ratkaistu]  (Luettu 4887 kertaa)

0 jäsentä ja 2 Vierasta katselee tätä aihetta.

Poissa SuperOscar

  • Käännösryhmä
  • *
  • Viestejä: 945
  • Sukupuoli: Mies
  • Tänään täällä, huomenna poissa
    • Legisign.org
Miten FreeBSD Grubiin? [Ratkaistu]
« : 23.03.2023 - klo:12:39 »
Hieman vaikea tietää, kuuluisiko kysymys ”Muihin käyttöjärjestelmiin” vai tänne, mutta koneen pääasiallinen käyttis on openSUSE ja siitä käsin yritän asiaa muuttaa…

Vanhassa pöytäkoneessani on hyvin kiinnityspaikkoja kiintolevyille, joten käytän sitä kokeillessani eri käyttiksiä:

  • Nykyinen päälevy on M.2-levy /dev/nvme0n1, jolla on openSUSE Tumbleweed. Sen kautta haluaisin nyt yrittää lisätä Grubiin vielä yhden käyttiksen.
  • YaSTin os-prober löytää onnistuneesti Windows 10:n vanhalta 2½" mekaaniselta levyltä (/dev/sdc 500 Gt) ja lisää sen Grubiin.
  • Koneessa on lisäksi kaksi vanhaa mekaanista kiintolevyä (/dev/sdb 750 Gt ja /dev/sdd 3 Tt) openSUSEn varastolevyinä.
  • Sitten se murheenkryyni: /dev/sda on 250 Gt SSD-levy, jolle on asennettu FreeBSD. Sitä YaST ei onnistu havaitsemaan.

FreeBSD:n asennus teki automaattisesti tällaisen osituksen:

  • /dev/sda1: 260 Mt EFI-osio (vaikka siis NVMe-levyllä jo oli EFI-osio!)
  • /dev/sda2: 512 kt FreeBSD:n käynnistysosio
  • /dev/sda3: 2 Gt FreeBSD:n sivutusosio
  • /dev/sda4: 230 Gt (eli loput) zfs-alustettu juuriosio

Koska YaST ei auta, osaako joku sanoa, miten kannattaisi edetä? Mietin ensin Grub1-tyyliin yrittää kirjoittaa chainload-komentoa suoraan Grubin menu.cfg-tiedostoon, mutta sehän olisi ilmeisesti huono idea, koska se korvattaisiin aina ajettaessa grub2-mkconfig eli esimerkiksi ytimen päivityttyä.

Olisiko oikea tapa siis yrittää kirjoittaa /etc/grub.d-kansion valmiiseen skriptipohjaan 40_custom mitä haluaa menu.cfg:hen lisättävän – ja mitä se olisi?

MUOKS: Lisätään vielä se, että saan FreeBSD:n kyllä nykyisinkin käyntiin, mutta pitää mennä BIOS-asetuksiin ja valita sen käynnistysvalikosta kohta ”EFI:” + SSD-levyn sanallinen kuvaus.
« Viimeksi muokattu: 24.03.2023 - klo:23:32 kirjoittanut SuperOscar »
pöytäkone 1, NUC: openSUSE Leap 15.6; kannettavat 1–3: Debian GNU/Linux 12; pöytäkone 2: openSUSE Tumbleweed; RPi 1: FreeBSD 14-RELEASE; RPi 2: LibreELEC 11

Poissa SuperOscar

  • Käännösryhmä
  • *
  • Viestejä: 945
  • Sukupuoli: Mies
  • Tänään täällä, huomenna poissa
    • Legisign.org
Vs: Miten FreeBSD Grubiin?
« Vastaus #1 : 23.03.2023 - klo:13:42 »
Ankaran guuglauksen jälkeen hieman pidemmällä… FreeBSD:n saa Grubin valikkoon, kun /etc/grub.d/40_custom on seuraavanlainen, mutta EFI-tietuetta ei vielä löydy:

Koodia: [Valitse]
#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
### BEGIN /etc/grub.d/40_custom ###
menuentry "FreeBSD" {
    set root=(hd0,gpt1)
    chainloader /EFI/FreeBSD/loader.efi
}
### END /etc/grub.d/40_custom ###

Jos muistan oikein, Grubin kiintolevyjen numerointi alkaa nollasta mutta osioiden ykkösestä; tosin ajattelin vielä kokeilla myös (hd0,gpt0). Luultavimmin ongelma on kuitenkin tuossa (guuglatussa) EFI-tietueen nimessä.
pöytäkone 1, NUC: openSUSE Leap 15.6; kannettavat 1–3: Debian GNU/Linux 12; pöytäkone 2: openSUSE Tumbleweed; RPi 1: FreeBSD 14-RELEASE; RPi 2: LibreELEC 11

Poissa SuperOscar

  • Käännösryhmä
  • *
  • Viestejä: 945
  • Sukupuoli: Mies
  • Tänään täällä, huomenna poissa
    • Legisign.org
Vs: Miten FreeBSD Grubiin?
« Vastaus #2 : 24.03.2023 - klo:21:12 »
Vastaus olikin helppo: vaadittiin vain vielä FAT-moduulin lataus.

Koodia: [Valitse]
    insmod fat
(Tuo siis ennen set root -loitsua.)
pöytäkone 1, NUC: openSUSE Leap 15.6; kannettavat 1–3: Debian GNU/Linux 12; pöytäkone 2: openSUSE Tumbleweed; RPi 1: FreeBSD 14-RELEASE; RPi 2: LibreELEC 11