/[gentoo]/xml/htdocs/doc/en/handbook/hb-install-ppc64-kernel.xml
Gentoo

Contents of /xml/htdocs/doc/en/handbook/hb-install-ppc64-kernel.xml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.19 - (show annotations) (download) (as text)
Thu Oct 6 20:43:41 2005 UTC (12 years, 6 months ago) by so
Branch: MAIN
Changes since 1.18: +3 -3 lines
File MIME type: application/xml
bumped version

1 <?xml version='1.0' encoding='UTF-8'?>
2 <!DOCTYPE sections SYSTEM "/dtd/book.dtd">
3
4 <!-- The content of this document is licensed under the CC-BY-SA license -->
5 <!-- See http://creativecommons.org/licenses/by-sa/2.5 -->
6
7 <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/handbook/hb-install-ppc64-kernel.xml,v 1.18 2005/10/06 19:50:33 jkt Exp $ -->
8
9 <sections>
10
11 <version>2.7</version>
12 <date>2005-10-06</date>
13
14 <section>
15 <title>Timezone</title>
16 <body>
17
18 <p>
19 You first need to select your timezone so that your system knows where it is
20 located. Look for your timezone in <path>/usr/share/zoneinfo</path>, then make
21 a symlink to <path>/etc/localtime</path> using <c>ln</c>. Please avoid the
22 <path>/usr/share/zoneinfo/Etc/GMT*</path> timezones as their names do not
23 indicate the expected zones. For instance, <path>GMT-8</path> is in fact GMT+8.
24 </p>
25
26 <pre caption="Setting the timezone information">
27 # <i>ls /usr/share/zoneinfo</i>
28 <comment>(Suppose you want to use GMT)</comment>
29 # <i>ln -sf /usr/share/zoneinfo/GMT /etc/localtime</i>
30 </pre>
31
32 </body>
33 </section>
34 <section>
35 <title>Installing the Sources</title>
36 <subsection>
37 <title>Choosing a Kernel</title>
38 <body>
39
40 <p>
41 The core around which all distributions are built is the Linux kernel.
42 It is the layer between the user programs and your system hardware.
43 Gentoo provides its users several possible kernel sources. A full
44 listing with description is available at the <uri
45 link="/doc/en/gentoo-kernel.xml">Gentoo Kernel Guide</uri>.
46 </p>
47
48 <p>
49 For PPC64 you should use <c>gentoo-sources</c>. So let's continue with
50 <c>emerge</c>'ing the kernel sources:
51 </p>
52
53 <pre caption="Installing a kernel source">
54 # <i>emerge gentoo-sources</i>
55 </pre>
56
57 <p>
58 When you take a look in <path>/usr/src</path> you should see a symlink
59 called <path>linux</path> pointing to your kernel source:
60 </p>
61
62 <pre caption="Viewing the kernel source symlink">
63 # <i>ls -l /usr/src/linux</i>
64 lrwxrwxrwx 1 root root 12 Oct 13 11:04 /usr/src/linux
65 -&gt; linux-2.6.7-gentoo-r8
66 </pre>
67
68 <p>
69 If this isn't the case (i.e. the symlink points to a different kernel
70 source) change the symlink before you continue:
71 </p>
72
73 <pre caption="Changing the kernel source symlink">
74 # <i>rm /usr/src/linux</i>
75 # <i>cd /usr/src</i>
76 # <i>ln -s linux-2.6.7-gentoo-r8 linux</i>
77 </pre>
78
79 <p>
80 Now it is time to configure and compile your kernel source. There is the
81 ability to use "genkernel" which would create a generic kernel like the
82 ones used on the installation CDs, but it is not fully functional for PPC64 at
83 the moment.
84 </p>
85
86 <p>
87 Continue now with <uri link="#manual">Manual Configuration</uri>.
88 </p>
89
90 </body>
91 </subsection>
92 </section>
93 <section id="manual">
94 <title>Manual Configuration</title>
95 <subsection>
96 <title>Introduction</title>
97 <body>
98
99 <p>
100 Manually configuring a kernel is often seen as the most difficult procedure a
101 Linux user ever has to perform. Nothing is less true -- after configuring a
102 couple of kernels you don't even remember that it was difficult ;)
103 </p>
104
105 <p>
106 However, one thing <e>is</e> true: you must know your system when you
107 configuring a kernel manually. Most information can be gathered by emerging
108 pciutils (<c>emerge pciutils</c>) which contains <c>lspci</c>. You will now
109 be able to use <c>lspci</c> within the chrooted environment. You may safely
110 ignore any <e>pcilib</e> warnings (like pcilib: cannot open
111 /sys/bus/pci/devices) that <c>lspci</c> throws out. Alternatively, you can run
112 <c>lspci</c> from a <e>non-chrooted</e> environment. The results are the same.
113 You can also run <c>lsmod</c> to see what kernel modules the Installation CD
114 uses (it might provide you with a nice hint on what to enable).
115 </p>
116
117 <p>
118 Now go to your kernel source directory and execute <c>make
119 menuconfig</c>. This will fire up an ncurses-based configuration menu.
120 </p>
121
122 <pre caption="Invoking menuconfig">
123 # <i>cd /usr/src/linux</i>
124 # <i>make menuconfig</i>
125 </pre>
126
127 <p>
128 You will be greeted with several configuration sections. We'll first
129 list some options you must activate (otherwise Gentoo will not function,
130 or not function properly without additional tweaks).
131 </p>
132
133 </body>
134 </subsection>
135 <subsection>
136 <title>Activating Required Options</title>
137 <body>
138
139 <p>
140 First of all, activate the use of development and experimental
141 code/drivers. You need this, otherwise some very important code/drivers
142 won't show up:
143 </p>
144
145 <pre caption="Selecting experimental code/drivers, General setup">
146 Code maturity level options ---&gt;
147 [*] Prompt for development and/or incomplete code/drivers
148 General setup --->
149 [*] Support for hot-pluggable devices
150 </pre>
151
152 <p>
153 Now go to <c>File Systems</c> and select support for the filesystems you
154 use. <e>Don't</e> compile them as modules, otherwise your Gentoo system
155 will not be able to mount your partitions. Also select <c>Virtual
156 memory</c>, <c>/proc file system</c>, <c>/dev file system</c> +
157 <c>Automatically mount at boot</c> and <c>/dev/pts file system for
158 Unix98 PTYs</c>:
159 </p>
160
161 <pre caption="Selecting necessary file systems">
162 File systems ---&gt;
163 [*] Virtual memory file system support (former shm fs)
164 [*] /proc file system support
165 [*] /dev file system support (EXPERIMENTAL)
166 [*] Automatically mount at boot
167 [*] /dev/pts file system for Unix98 PTYs
168
169 <comment>(Select one or more of the following options as needed by your system)</comment>
170 &lt;*&gt; Reiserfs support
171 &lt;*&gt; Ext3 journalling file system support
172 &lt;*&gt; JFS filesystem support
173 &lt;*&gt; Second extended fs support
174 &lt;*&gt; XFS filesystem support
175 </pre>
176
177 <note>
178 You will find some of the mentioned options under <c>Pseudo
179 filesystems</c> which is a subpart of <c>File systems</c>.
180 </note>
181
182 <p>
183 If you are using PPPoE to connect to the Internet or you are using a
184 dial-up modem, you will need the following options in the kernel (you
185 will find the mentioned options under <c>Networking support</c> which is
186 a subpart of <c>Device Drivers</c>):
187 </p>
188
189 <pre caption="Selecting PPPoE necessary drivers">
190 Network device support ---&gt;
191 &lt;*&gt; PPP (point-to-point protocol) support
192 &lt;*&gt; PPP support for async serial ports
193 &lt;*&gt; PPP support for sync tty ports
194 </pre>
195
196 <p>
197 The two compression options won't harm but are not definitely needed, neither
198 does the <c>PPP over Ethernet</c> option, that might only be used by
199 <c>rp-pppoe</c> when configured to do kernel mode PPPoE.
200 </p>
201
202 <p>
203 If you require it, don't forget to include support in the kernel for your
204 ethernet card.
205 </p>
206
207 <p>
208 Disable ADB raw keycodes:
209 </p>
210
211 <pre caption="Disabling ADB raw keycodes">
212 Macintosh Device Drivers ---&gt;
213 [ ] Support for ADB raw keycodes
214 </pre>
215
216 <p>
217 When you're done configuring your kernel, continue with <uri
218 link="#compiling">Compiling and Installing</uri>.
219 </p>
220
221 </body>
222 </subsection>
223 <subsection id="compiling">
224 <title>Compiling and Installing</title>
225 <body>
226
227 <p>
228 Now that your kernel is configured, it is time to compile and install it. Exit
229 the configuration and start the compilation process:
230 </p>
231
232 <pre caption="Compiling the kernel">
233 (Apple/IBM) # <i>make &amp;&amp; make modules_install</i>
234 </pre>
235
236 <p>
237 When the kernel has finished compiling, copy the kernel image to
238 <path>/boot</path>.
239 </p>
240
241 <pre caption="Installing the kernel">
242 (Apple/IBM) # <i>cp vmlinux /boot/kernel-2.6.7-gentoo-r8</i>
243 </pre>
244
245 <p>
246 It is also wise to copy over your kernel configuration file to
247 <path>/boot</path>, just in case :)
248 </p>
249
250 <pre caption="Backing up your kernel configuration">
251 # <i>cp .config /boot/config-2.6.7-gentoo-r8</i>
252 </pre>
253
254 <p>
255 Now continue with <uri link="#kernel_modules">Configuring the Modules</uri>.
256 </p>
257
258 </body>
259 </subsection>
260 </section>
261 <section id="kernel_modules">
262 <title>Configuring the Modules</title>
263 <body>
264
265 <p>
266 You should list the modules you want automatically loaded in
267 <path>/etc/modules.autoload.d/kernel-2.6</path>. You can add extra
268 options to the modules too if you want.
269 </p>
270
271 <p>
272 To view all available modules, run the following <c>find</c> command. Don't
273 forget to substitute "&lt;kernel version&gt;" with the version of the kernel you
274 just compiled:
275 </p>
276
277 <pre caption="Viewing all available modules">
278 # <i>find /lib/modules/&lt;kernel version&gt;/ -type f -iname '*.o' -or -iname '*.ko'</i>
279 </pre>
280
281 <p>
282 For instance, to automatically load the <c>3c59x.o</c> module, edit the
283 <path>kernel-2.6</path> file and enter the module name in it.
284 </p>
285
286 <pre caption="Editing /etc/modules.autoload.d/kernel-2.6">
287 # <i>nano -w /etc/modules.autoload.d/kernel-2.6</i>
288 </pre>
289
290 <pre caption="/etc/modules.autoload.d/kernel-2.6">
291 3c59x
292 </pre>
293
294 <p>
295 Continue the installation with <uri link="?part=1&amp;chap=8">Configuring
296 your System</uri>.
297 </p>
298
299 </body>
300 </section>
301 </sections>

  ViewVC Help
Powered by ViewVC 1.1.20