[Gentoo] Probleem met grub patch

Pagina: 1
Acties:

  • Ryceck
  • Registratie: Oktober 2001
  • Laatst online: 09:05

Ryceck

Constants and Variables

Topicstarter
Ik heb dus thuis mijn eigen stage1 Gentoo 1.4 bakkie nu eindelijk draaien met Grub als bootloader.
Nu had ik hier al eens gevraagd of er de mogelijkheid was om tegen grub te zeggen dattie eenmalig automatisch een bootoption moet uitvoeren. Ofwel in linux tegen grub zeggen dat de volgende restart option=1 moet zijn waardoor mijn Windows wordt geboot ipv me linux (handig voor remote werken).
Nu ging dit niet in grub zelf maar wel via een patch, de grub-0.93-oneshot.patch.
Nu was dit al wat gelazer om dit in gentoo aan de praat te krijgen want ik zit met de .ebuilds

Wat ik heb gedaan is het volgende:
code:
1
2
3
4
5
6
7
ebuild [path]/grub.ebuild unpack
Apply patch to sourcecode
ebuild [path]/grub.ebuild compile
ebuild [path]/grub.ebuild preinst
ebuild [path]/grub.ebuild install
ebuild [path]/grub.ebuild postinst
ebuild [path]/grub.ebuild qmerge


Op deze manier werkt alles geweldig, ik kan de functionaliteiten gebruiken om de volgende code uit te voeren:
code:
1
savedefault --default=1 --once

Waarmee mijn windows pc boot.

Maar zodra als ik dan mijn linux weer boot kan ik die savedefault niet meer gebruiken. Dan is het net alsof hij de oude versie van grub heeft teruggezet. Voordat ik dan dit weer kan doen moet ik eerst
code:
1
2
ebuild [path]/grub.ebuild install
ebuild [path]/grub.ebuild qmerge

uitvoeren voordat ik weer een savedefault commando kan sturen.

Is er iemand die hier een oplossing voor heeft?

If everything is working perfect, break something before someone else fucks up.


Verwijderd

Wilde gok, maar weet je zeker dat je je /boot partitie wel gemount hebt als je het savedefault commando uitvoerd na een boot? Op die manier vind ie namelijkde stage2 file niet die savedefault checked. emerge/ebuild zal je /boot waarschijnlijk automatisch mounten tijdens een install/qmerge.

Je kan bovendien ook gewoon je patch commando in de originele .ebuild zetten, precies waar de andere "epatch" commando's gegeven worden. Dan hoef je alleen nogmaar een "emerge grub" uittevoeren, ipv al die losse ebuild commandos.

Je gedite versie kan eventueel zelfs in de PORTAGE_OVERLAY directory neergezet worden zodat ie niet overschreven word als je weer een keer rsynced.

  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

offtopic:
LILO lijkt dit standaard te kunnen; mocht je erg hard een oplossing zoeken zou je LILO kunnen installeren :)

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


  • Ryceck
  • Registratie: Oktober 2001
  • Laatst online: 09:05

Ryceck

Constants and Variables

Topicstarter
Verwijderd schreef op 17 december 2003 @ 10:20:
Wilde gok, maar weet je zeker dat je je /boot partitie wel gemount hebt als je het savedefault commando uitvoerd na een boot? Op die manier vind ie namelijkde stage2 file niet die savedefault checked. emerge/ebuild zal je /boot waarschijnlijk automatisch mounten tijdens een install/qmerge.

Je kan bovendien ook gewoon je patch commando in de originele .ebuild zetten, precies waar de andere "epatch" commando's gegeven worden. Dan hoef je alleen nogmaar een "emerge grub" uittevoeren, ipv al die losse ebuild commandos.

Je gedite versie kan eventueel zelfs in de PORTAGE_OVERLAY directory neergezet worden zodat ie niet overschreven word als je weer een keer rsynced.
Het is gewoon te lomp voor woorden maar je hebt gewoon nog gelijk ook, als ik me /boot mount dan werkt het wel.... |:( |:( |:( |:(

Hoe add ik trouwens dan die patch in me ebuild? Dat zou wel heel mooi zijn :)

@Spider.007
Ik wilde juist van Lilo af :) Vind Grub veel leuker (en het scheelt iedere keer dat /usr/sbin/lilo command na een wijziging)
plus dattik al vaker met lilo heb gewerkt en eens een keer wat nieuws wilde proberen :)

[ Voor 12% gewijzigd door Ryceck op 17-12-2003 11:34 ]

If everything is working perfect, break something before someone else fucks up.