1 |
Okay, I genuinely have grub2 installed and doing exactly what it's |
2 |
supposed to do: boot your machine using only partition LABELS, not |
3 |
device names/numbers. |
4 |
|
5 |
Below are a series of steps that *any* gentoo fan should recognize and |
6 |
be comfortable with. |
7 |
|
8 |
If you are not familiar with any of these steps, you really *should* |
9 |
become familiar with them. |
10 |
|
11 |
If you don't *want* to become familiar with them, have you tried ubuntu? |
12 |
|
13 |
First, skip grub-1.98 and go for grub-1.99-rc1 because it's much better. |
14 |
|
15 |
Yes, you could unmask sys-boot/grub-9999, but that's way more trouble |
16 |
than it's worth. Learn to do it the way it's meant to be done and you |
17 |
will be pleased with your new skills :) |
18 |
|
19 |
You need to get the source tarball first. Many different ways to do |
20 |
that, but my brain-dead way is to use firefox and enter this URL: |
21 |
|
22 |
ftp://alpha.gnu.org/gnu/grub/ |
23 |
|
24 |
Click on the file grub-1.99~rc1.tar.gz to start downloading it. If you |
25 |
don't know where firefox is saving the file, shame on you. |
26 |
|
27 |
You should become familiar with building software in your own home |
28 |
directory. At work or school you may not have root privileges, so |
29 |
be brave now and learn how easy it is: |
30 |
|
31 |
$ cd |
32 |
$ mkdir src |
33 |
$ cd src |
34 |
$ tar -xvzf <wherever>/grub-1.99~rc1.tar.gz <lots of screen output> |
35 |
$ cd grub-1.99~rc1 |
36 |
|
37 |
Many projects will include the 'configure' file as part of the tarball, |
38 |
but grub2 does not. Lots of files like configure.ac, config.in, etc, |
39 |
but you won't find 'configure' this time. |
40 |
|
41 |
So, you need to create a brand new 'configure' by running the autogen.sh |
42 |
script that the grub2 devs include for that purpose. (You may need to |
43 |
emerge sys-devel/autogen if you don't already have it.) |
44 |
|
45 |
$ ./autogen.sh (tons of screen output> |
46 |
$ mkdir build |
47 |
$ cd build |
48 |
$ ../configure --prefix=$HOME <the default is /usr/local, but you are |
49 |
not root, so you can't install anything |
50 |
in /usr/local> |
51 |
$ make all install <compile and install grub2 in your home dir> |
52 |
|
53 |
This step, if it works, will install grub stuff in ~/sbin ~/bin ~/etc |
54 |
~/share and ~/lib/grub. The directories should be created if they |
55 |
don't already exist, I think. |
56 |
|
57 |
Up to now your system files have not been touched because you are not |
58 |
root and therefore you are not able to break your system. |
59 |
|
60 |
I'm taking a break now to answer any questions about problems you may |
61 |
encounter, and because I've had enough beer for today already. |
62 |
|
63 |
All of this should be old material for gentooers. If it's new to you, |
64 |
then please try the steps above just to learn the basics of building |
65 |
(any) linux software. Even if you fail you will learn in the process. |