Gentoo Archives: gentoo-user

From: "Bruce Hill
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] Can't boot upgraded kerne;
Date: Tue, 13 Mar 2012 12:54:08
Message-Id: 1274842082.612634.1331643174539.JavaMail.open-xchange@email.1and1.com
In Reply to: Re: [gentoo-user] Can't boot upgraded kerne; by Mick
1 On March 13, 2012 at 3:10 AM Mick <michaelkintzios@×××××.com> wrote:
2
3 > On Tuesday 13 Mar 2012 05:36:38 roger@×××××××.edu wrote:
4 > > I recently decided to update my AMD64 box from 2.38 to the new 3.2
5 kernel.
6 > > I used genkernel all to compile the upgraded kernel but when I go to
7 boot
8 > > I get the following error.
9 > >
10 > > >>Loading modules
11 > > >>Determining root device
12 > >
13 > > !!Block device /dev/sdb2 is not a valid root device
14 > > !!Could not find the root block device in .
15 > > Pleas specify another value or" press enter for the same, type "shell"
16 for
17 > > a shell, or "q"to skip..
18 > > root block device()::
19 > >
20 > > However at this point the computer is hung and I am no longer able to
21 > > input anything. I just switched over to gentoo from bsd a year or so
22 ago
23 > > and am still a newbie at some of the installation procedures but I
24 believe
25 > > I have followed the manual correctly with the only change being that
26 /boot
27 > > is located on the root partition and not a seperate partition. I'm
28 still
29 > > able to use my older kernel without a problem and the only difference
30 that
31 > > I can note between the two is that older kernel seems to load in a
32 bunch
33 > > of modules and starts mdev, I believe, before trying to locate root. I
34 am
35 > > also using Lilo since my motherboard doesn't seem to like grub. Any
36 help I
37 > > could get would be appreciated.
38 > >
39 > > roger
40 > >
41 > > Here is a print out of lilo.conf
42 > > boot=/dev/sdb
43 > > map=/boot/map
44 > >
45 > > prompt
46 > > timeout=50
47 > > default=Windows
48 > >
49 > > image=/boot/kernel-genkernel-x86_64-2.6.38-gentoo-r6
50 > > label=2.6.38
51 > > read-only
52 > > append="real_root=/dev/sdb2"
53 > > vga=773
54 > > initrd=/boot/initramfs-genkernel-x86_64-2.6.38-gentoo-r6
55 > >
56 > > image=/boot/kernel-genkernel-x86_64-3.2.1-gentoo-r2
57 > > label=3.2.1
58 > > read-only
59 > > append="real_root=/dev/sdb2"
60 > > initrd=/boot/initramfs-genkernel-x86_64-3.2.1-gentoo-r2
61 > >
62 > >
63 > > other=/dev/sda1
64 > > label=Windows
65 > >
66 > >
67 > > Here is a print out of fdisk
68 > > Disk /dev/sdb: 80.0 GB, 80026361856 bytes
69 > > 255 heads, 63 sectors/track, 9729 cylinders, total 156301488 sectors
70 > > Units = sectors of 1 * 512 = 512 bytes
71 > > Sector size (logical/physical): 512 bytes / 512 bytes
72 > > I/O size (minimum/optimal): 512 bytes / 512 bytes
73 > > Disk identifier: 0x37cd3650
74 > >
75 > > Device Boot Start End Blocks Id System
76 > > /dev/sdb1 2048 12584959 6291456 82 Linux swap /
77 > > Solaris /dev/sdb2 * 12584960 14682111 1048576 83 Linux
78 > > /dev/sdb3 14682112 156301487 70809688 5 Extended
79 > > /dev/sdb5 14684160 18878463 2097152 83 Linux
80 > > /dev/sdb6 18880512 23074815 2097152 83 Linux
81 > > /dev/sdb7 23076864 65019903 20971520 83 Linux
82 > > /dev/sdb8 65021952 156301487 45639768 83 Linux
83 > >
84 > > Here is a print out of fstab
85 > > # /etc/fstab: static file system information.
86 > > #
87 > > # noatime turns off atimes for increased performance (atimes normally
88 > > aren't # needed); notail increases performance of ReiserFS (at the
89 expense
90 > > of storage
91 > > # efficiency). It's safe to drop the noatime options if you want and
92 to
93 > > # switch between notail / tail freely.
94 > > #
95 > > # The root filesystem should have a pass number of either 0 or 1.
96 > > # All other filesystems should have a pass number of 0 or greater than
97 1.
98 > > #
99 > > # See the manpage fstab(5) for more information.
100 > > #
101 > >
102 > > # <fs> <mountpoint> <type>
103 > > <opts> <dump/pass>
104 > >
105 > > # NOTE: If your BOOT partition is ReiserFS, add the notail option to
106 opts.
107 > > /dev/sdb2 / ext3 noatime
108 > > 0 1
109 > > /dev/sdb1 none swap sw
110 > > 0 0
111 > >
112 > > /dev/sdb5 /var ext3
113 defaults
114 > > 1 2
115 > > /dev/sdb6 /tmp ext3
116 defaults
117 > > 1 2
118 > > /dev/sdb7 /usr ext3
119 defaults
120 > > 1 2
121 > > /dev/sdb8 /home ext3
122 defaults
123 > > 1 2
124 > >
125 > > /dev/cdrom /mnt/cdrom auto
126 noauto,ro
127 > > 0 0
128 > >
129 > > /dev/sda2 /mnt/Windows ntfs
130 defaults
131 > > 1 2
132 > >
133 > > proc /proc proc
134 > > defaults 0 0
135 > > shm /dev/shm tmpfs
136 > > nodev,nouisd,noexec 0 0
137 > >
138 > > #tmpfs /var/tmp/portage tmpfs
139 > > size=500M,mode=0777 0 0
140 >
141 >
142 > In all likelihood you have not included in your kernel (built in, not as
143 > modules) the corresponding SATA controller driver. Run a diff between
144 old and
145 > new kernel .config to find out what's missing, or cp your old .config
146 into your
147 > new kernel tree and run 'make oldconfig'.
148 > --
149 > Regards,
150 > Mick
151
152
153 It would not matter that he has his / fs drive controller as a module and
154 not built in with an initrd. That's the purpose of an initrd image ... to
155 load modules needed before the kernel is loaded. Now, his initrd might not
156 be built correctly, but that's another story.
157
158 Roger, it looks like you didn't run "lilo" as root with your /boot
159 partition mounted, to install LiLO in the MBR of your computer. This is
160 why. The message you posted has:
161
162 "Pleas specify another value or" press enter for the same, type "shell" for
163 a shell, or "q"to skip.."
164
165 LiLO doesn't have a shell ... that is a GrUB message.
166
167 Kudos for saving your old, good, working kernel! Boot back into it and
168 install LiLO to the MBR by issuing "lilo" as root.
169
170 One other thing ... you have "boot=/dev/sdb" but LiLO is probably going to
171 install in the MBR of the first hard drive, which is /dev/sda, unless you
172 specifically issue commands for it to do otherwise.
173
174 If I am correct about the sdb sda issue, then fix that, also, before
175 installing LiLO.
176
177 You can also had a panic statement in your kernel append line, so that if
178 the kernel panics, it will automatically reboot for you. Like this:
179
180 append="real_root=/dev/sdb2 panic=10"
181
182 Notice the " is moved to the end of that line, and there is a space between
183 your root append and panic. 10 is the number of seconds it waits before
184 rebooting. You can increase of decrease that for your desire.
185
186 Hope that helps!
187
188 Bruce
189 --
190 Happy Penguin Computers >`)
191 126 Fenco Drive ( \
192 Tupelo, MS 38801 ^^
193 662-269-2706; 662-491-8613
194 support at happypenguincomputers dot com
195 http://www.happypenguincomputers.com