1 | <?xml version='1.0' encoding="UTF-8"?> |
1 | <?xml version='1.0' encoding="UTF-8"?> |
2 | <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/gentoo-x86-quickinstall.xml,v 1.20 2004/09/25 13:06:26 swift Exp $ --> |
2 | <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/gentoo-x86-quickinstall.xml,v 1.64 2006/10/08 19:38:11 nightmorph Exp $ --> |
3 | |
3 | |
4 | <!DOCTYPE guide SYSTEM "/dtd/guide.dtd"> |
4 | <!DOCTYPE guide SYSTEM "/dtd/guide.dtd"> |
5 | |
5 | |
6 | <guide link="/doc/en/gentoo-x86-quickinstall.xml"> |
6 | <guide link="/doc/en/gentoo-x86-quickinstall.xml" lang="en"> |
7 | <title>Gentoo Linux Install Reference</title> |
7 | <title>Gentoo Linux x86 Quick Install Guide</title> |
8 | <author title="Author">Steven Wagner</author> |
8 | |
9 | <author title="Editor"> |
9 | <author title="Author"> |
|
|
10 | <mail link="neysx@gentoo.org">Xavier Neys</mail> |
|
|
11 | </author> |
|
|
12 | <author title="Author"> |
10 | <mail link="swift@gentoo.org">Sven Vermeulen</mail> |
13 | <mail link="swift@gentoo.org">Sven Vermeulen</mail> |
11 | </author> |
14 | </author> |
|
|
15 | <author title="Author">Steven Wagner</author> |
12 | |
16 | |
13 | <abstract> |
17 | <abstract> |
14 | The Quick install reference covers all details of the install process in a |
18 | The Quick install guide covers the Gentoo install process in a non-verbose |
15 | non-verbose manner. Users should already have prior experience with |
19 | manner. Its purpose is to allow users to perform a stage3 install in no time. |
16 | installing Gentoo Linux if they want to follow this guide. |
20 | Users should already have prior experience with installing Gentoo Linux if they |
|
|
21 | want to follow this guide. |
17 | </abstract> |
22 | </abstract> |
18 | |
23 | |
|
|
24 | <!-- The content of this document is licensed under the CC-BY-SA license --> |
|
|
25 | <!-- See http://creativecommons.org/licenses/by-sa/2.5 --> |
19 | <license/> |
26 | <license/> |
20 | |
27 | |
21 | <version>1.15</version> |
28 | <version>9</version> |
22 | <date>September 25, 2004</date> |
29 | <date>2006-10-08</date> |
23 | |
30 | |
24 | <chapter> |
31 | <chapter> |
25 | <title>Quick Install Reference</title> |
32 | <title>Introduction</title> |
|
|
33 | <section> |
|
|
34 | <body> |
|
|
35 | |
|
|
36 | <p> |
|
|
37 | This guide contains all commands you should use to complete a stage3 |
|
|
38 | installation of Gentoo. You need a connection to the Internet to download the |
|
|
39 | stage3 and Portage snapshots. |
|
|
40 | </p> |
|
|
41 | |
|
|
42 | <p> |
|
|
43 | Timing output follows all commands that take more than a couple of seconds to |
|
|
44 | finish. Commands were timed on an AMD 2000 1.66 Ghz PC with 512 MB of RAM and |
|
|
45 | two SATA disks connected to a hardware controller. |
|
|
46 | </p> |
|
|
47 | |
|
|
48 | <pre caption="Test box specs"> |
|
|
49 | <comment>(The following specs and the timing information should help you determine |
|
|
50 | a rough estimate of the time you need to complete your install)</comment> |
|
|
51 | |
|
|
52 | # <i>grep bogo /proc/cpuinfo</i> |
|
|
53 | bogomips : 3337.81 |
|
|
54 | |
|
|
55 | # <i>hdparm -tT /dev/sda</i> |
|
|
56 | /dev/sda: |
|
|
57 | Timing cached reads: 1100 MB in 2.00 seconds = 549.97 MB/sec |
|
|
58 | Timing buffered disk reads: 224 MB in 3.01 seconds = 74.36 MB/sec |
|
|
59 | |
|
|
60 | # <i>grep MemTotal /proc/meminfo</i> |
|
|
61 | MemTotal: 509248 kB |
|
|
62 | </pre> |
|
|
63 | |
|
|
64 | </body> |
26 | <section> |
65 | </section> |
|
|
66 | </chapter> |
|
|
67 | |
|
|
68 | <chapter> |
|
|
69 | <title>Quick Install Guide</title> |
|
|
70 | <section> |
|
|
71 | <title>Installation Media</title> |
|
|
72 | <body> |
|
|
73 | |
|
|
74 | <p> |
|
|
75 | Download a CD from one of our <uri link="/main/en/mirrors.xml">mirrors</uri>. |
|
|
76 | You can find the minimal CD ISO in |
|
|
77 | <path>releases/x86/<release>/installcd</path> or the LiveCD ISO in |
|
|
78 | <path>releases/x86/<release>/livecd</path>. The <e>minimal</e> |
|
|
79 | installation CD is only useful for Internet-based installations. You can use |
|
|
80 | the <e>LiveCD</e> to perform a networkless installation as documented in the |
|
|
81 | <uri link="/doc/en/handbook/2006.1/handbook-x86.xml">2006.1 x86 installation |
|
|
82 | handbook</uri>. The minimal CD is recommended. |
|
|
83 | </p> |
|
|
84 | |
|
|
85 | <p> |
|
|
86 | <uri link="/doc/en/faq.xml#isoburning">Burn</uri> the CD and boot it. |
|
|
87 | </p> |
|
|
88 | |
27 | <body> |
89 | </body> |
|
|
90 | </section> |
|
|
91 | <section> |
|
|
92 | <title>Booting the CD</title> |
|
|
93 | <body> |
28 | |
94 | |
29 | <p> |
|
|
30 | The installation ISOs are on the <uri link= |
|
|
31 | "http://www.gentoo.org/main/en/mirrors.xml">Gentoo |
|
|
32 | Mirrors</uri>. Detailed descriptions of the different CDs are |
|
|
33 | available in the <uri link="http://store.gentoo.org">Gentoo |
|
|
34 | Store</uri>. A universal CD contains everything you need to install Gentoo Linux |
|
|
35 | quickly and without a connection to the Internet. A Package CD is optional and |
|
|
36 | contains pre-compiled packages such as KDE, GNOME, OpenOffice, |
|
|
37 | Mozilla, Evolution and more. |
|
|
38 | </p> |
95 | <p> |
39 | |
96 | Press |
|
|
97 | <c>F2</c> at the boot screen to find out what boot options exist. You can |
|
|
98 | either start <c>gentoo</c> or <c>gentoo-nofb</c>, the latter disables the |
|
|
99 | framebuffer. If you booted the LiveCD, don't forget to add the <c>nox</c> |
|
|
100 | option to prevent the X graphical environment from starting. Several options |
|
|
101 | allow to enable or disable some features. If all goes well, your hardware will |
|
|
102 | be detected and all modules will be loaded. If the kernel fails to boot |
|
|
103 | properly or if your computer hangs during the boot procedure, you may have to |
|
|
104 | experiment with different configurations. The safest way is probably to use the |
|
|
105 | <c>nodetect</c> option and then load required modules explicitly. |
40 | <p> |
106 | </p> |
41 | Boot from the Universal CD. Press <F1> and/or <F2> to |
107 | |
42 | see what boot options are available. Press <ENTER> at the bootscreen to |
108 | <pre caption="Boot the minimal CD"> |
43 | continue with the default kernel. You'll eventually receive a prompt. |
109 | Gentoo Linux Installation LiveCD http://www.gentoo.org |
|
|
110 | Enter to Boot; F1 for kernels F2 for options. |
|
|
111 | boot: <i>gentoo-nofb</i> |
|
|
112 | <comment>(or in case of problems)</comment> |
|
|
113 | boot: <i>gentoo-nofb nodetect</i> |
|
|
114 | </pre> |
|
|
115 | |
|
|
116 | </body> |
|
|
117 | </section> |
|
|
118 | <section> |
|
|
119 | <title>Optional: loading modules</title> |
|
|
120 | <body> |
|
|
121 | |
44 | </p> |
122 | <p> |
45 | |
123 | If you used the <c>nodetect</c> option, once booted, load the required modules. |
46 | <pre caption="Beginning settings"> |
124 | You need to enable networking and have access to your disks. The <c>lspci</c> |
47 | # <i>date</i> (Make sure your time and date is correct. If wrong, set it with <i>date MMDDhhmmCCYY</i> ) |
125 | command can help you identify your hardware. |
48 | # <i>modprobe module_name</i> (Optional - Load any necessary modules) |
|
|
49 | # <i>net-setup eth0</i> (Configure the network) |
|
|
50 | # <i>fdisk /dev/hda</i> (Partition your drive) |
|
|
51 | </pre> |
|
|
52 | |
|
|
53 | <p> |
126 | </p> |
54 | The recommended setup is a 64 meg boot volume with ext2, a swap partition |
127 | |
55 | twice the size of your available RAM, and the rest for your root partition |
128 | <pre caption="Load required modules"> |
56 | using ReiserFS. |
129 | livecd root # <i>lspci</i> |
|
|
130 | <comment>(Use lspci's output to identify required modules)</comment> |
|
|
131 | |
|
|
132 | <comment>(The following is an example, adapt it to your hardware)</comment> |
|
|
133 | livecd root # <i>modprobe 3w-9xxx</i> |
|
|
134 | livecd root # <i>modprobe r8169</i> |
|
|
135 | </pre> |
|
|
136 | |
|
|
137 | </body> |
|
|
138 | </section> |
|
|
139 | <section> |
|
|
140 | <title>Network Configuration</title> |
|
|
141 | <body> |
|
|
142 | |
57 | </p> |
143 | <p> |
58 | |
144 | If your network does not work already, you can use <c>net-setup</c> to configure |
|
|
145 | your network. You might need to load support for your network card using |
|
|
146 | <c>modprobe</c> prior to the configuration. If you have ADSL, use |
|
|
147 | <c>pppoe-setup</c> and <c>pppoe-start</c>. For PPTP support, first edit |
|
|
148 | <path>/etc/ppp/chap-secrets</path> and <path>/etc/ppp/options.pptp</path> and |
|
|
149 | then use <c>pptp <server ip></c>. |
59 | <p> |
150 | </p> |
60 | Initialise your partitions using <c>mke2fs</c> (Ext2), <c>mke2fs |
151 | |
61 | -j</c> (Ext3), <c>mkreiserfs</c> (ReiserFS), <c>mkfs.xfs</c> (XFS), |
|
|
62 | <c>mkfs.jfs</c> (JFS) and <c>mkswap</c> (swap partition). For instance: |
|
|
63 | <c>mke2fs -j /dev/hda3</c>. |
|
|
64 | </p> |
152 | <p> |
65 | |
153 | For wireless access, use <c>iwconfig</c> to set the wireless parameters and then |
|
|
154 | use either <c>net-setup</c> again or run <c>ifconfig</c>, <c>dhcpcd</c> and/or |
|
|
155 | <c>route</c> manually. |
66 | <p> |
156 | </p> |
67 | Continue by mounting the partitions and extracting the appropriate stage |
157 | |
68 | file. |
|
|
69 | </p> |
158 | <p> |
70 | |
159 | If you are behind a proxy, do not forget to initialize your system using |
71 | <pre caption="Preparing the Installation"> |
160 | <c>export http_proxy</c>, <c>ftp_proxy</c> and <c>RSYNC_PROXY</c>. |
72 | (Activate the swap partition) # <i>swapon /dev/hdax</i> |
|
|
73 | (Mount the root partition) # <i>mount /dev/hdax /mnt/gentoo</i> |
|
|
74 | (Create the boot mountpoint) # <i>mkdir /mnt/gentoo/boot</i> |
|
|
75 | (Mount the boot partition) # <i>mount /dev/hdax /mnt/gentoo/boot</i> |
|
|
76 | (Go to the mountpoint) # <i>cd /mnt/gentoo</i> |
|
|
77 | (Extract a stage tarball...) # <i>tar -xvjpf /mnt/cdrom/stages/stage<your stage>.tar.bz2</i> |
|
|
78 | (<comment>or</comment> download the latest tarball...) # <i>links http://www.gentoo.org/main/en/mirrors.xml</i> |
|
|
79 | ( ... and extract) # <i>tar -xvjpf stage<your stage>.tar.bz2</i> |
|
|
80 | (Optional: unpack a portage tree) # <i>tar -xvjf /mnt/cdrom/snapshots/portage-*.tar.bz2 -C /mnt/gentoo/usr</i> |
|
|
81 | (Optional: copy over distfiles) # <i>cd /mnt/gentoo/usr/portage; mkdir distfiles; cp /mnt/cdrom/distfiles/* distfiles/</i> |
|
|
82 | (Select a mirror) # <i>mirrorselect -a -s4 -o | grep 'GENTOO_MIRRORS=' >> /mnt/gentoo/etc/make.conf</i> |
|
|
83 | (Copy over nameserver information) # <i>cp -L /etc/resolv.conf /mnt/gentoo/etc/resolv.conf</i> |
|
|
84 | (Mount the proc filesystem) # <i>mount -t proc none /mnt/gentoo/proc</i> |
|
|
85 | (Chroot into the new environment) # <i>chroot /mnt/gentoo /bin/bash</i> |
|
|
86 | (Load the necessary variables) # <i>env-update; source /etc/profile</i> |
|
|
87 | (Network-only, non-GRP: update Portage) # <i>emerge sync</i> |
|
|
88 | </pre> |
|
|
89 | |
|
|
90 | <p> |
161 | </p> |
91 | Now we install Gentoo: |
162 | |
|
|
163 | <pre caption="Configure networking the guided way"> |
|
|
164 | livecd root # <i>net-setup eth0</i> |
|
|
165 | </pre> |
|
|
166 | |
92 | </p> |
167 | <p> |
93 | |
168 | Alternatively, you can start networking manually. The following example assigns |
94 | <pre caption = "Installing Gentoo"> |
169 | the IP address 192.168.1.10 to your PC and defines 192.168.1.1 as your router |
95 | (Change USE, CFLAGS and CXXFLAGS. Stage1 can also change CHOST) # <i>nano -w /etc/make.conf</i> |
170 | and name server. |
96 | (Stage1 only: bootstrap system) # <i>cd /usr/portage; scripts/bootstrap.sh</i> |
|
|
97 | (Stage1, Stage2 only: install base system) # <i>emerge system</i> |
|
|
98 | </pre> |
|
|
99 | |
|
|
100 | <p> |
171 | </p> |
101 | Next we set up the necessary information: |
172 | |
|
|
173 | <pre caption="Configure networking the manual way"> |
|
|
174 | livecd root # <i>ifconfig eth0 192.168.1.10/24</i> |
|
|
175 | livecd root # <i>route add default gw 192.168.1.1</i> |
|
|
176 | livecd root # <i>echo nameserver 192.168.1.1 > /etc/resolv.conf</i> |
|
|
177 | </pre> |
|
|
178 | |
102 | </p> |
179 | <p> |
103 | |
180 | The installation CD allows you to start an <c>sshd</c> server, add additional |
104 | <pre caption = "Setting up Configuration Files"> |
181 | users, run <c>irssi</c> (a command-line chat client) and surf the web using |
105 | (Set timezone information) # <i>ln -sf /usr/share/zoneinfo/<comment><path to time zone file></comment> /etc/localtime</i> |
182 | <c>lynx</c> or <c>links</c>. |
106 | (Edit fstab file) # <i>nano -w /etc/fstab</i> |
|
|
107 | </pre> |
|
|
108 | |
|
|
109 | <p> |
183 | </p> |
110 | Use the following as a <e>template</e> (don't copy verbatim) for |
184 | |
111 | <path>/etc/fstab</path>: |
185 | </body> |
|
|
186 | </section> |
|
|
187 | <section> |
|
|
188 | <title>Optional: connect to your new box over ssh</title> |
|
|
189 | <body> |
|
|
190 | |
112 | </p> |
191 | <p> |
113 | |
192 | The most interesting feature is of course <c>sshd</c>. You can start it and |
114 | <pre caption="/etc/fstab"> |
193 | then connect from another machine and cut and paste commands from this guide. |
115 | # <fs> <mountpoint> <type> <opts> <dump/pass> |
|
|
116 | /dev/hdax /boot ext2 noauto,noatime 1 2 |
|
|
117 | /dev/hdax none swap sw 0 0 |
|
|
118 | /dev/hdax / reiserfs noatime 0 1 |
|
|
119 | /dev/cdroms/cdrom0 /mnt/cdrom auto noauto,user 0 0 |
|
|
120 | none /proc proc defaults 0 0 |
|
|
121 | none /dev/shm tmpfs defaults 0 0 |
|
|
122 | </pre> |
|
|
123 | |
|
|
124 | <p> |
194 | </p> |
125 | Continue by installing the Linux kernel: |
195 | |
|
|
196 | <pre caption="Start sshd"> |
|
|
197 | livecd root # <i>time /etc/init.d/sshd start</i> |
|
|
198 | * Generating hostkey ... |
|
|
199 | <comment>(sshd generates the key and displays more output)</comment> |
|
|
200 | * starting sshd ... [ok] |
|
|
201 | |
|
|
202 | real 0m13.688s |
|
|
203 | user 0m9.420s |
|
|
204 | sys 0m0.090s |
|
|
205 | </pre> |
|
|
206 | |
126 | </p> |
207 | <p> |
127 | |
208 | Now, set the root password on the liveCD so that you can connect to it from |
128 | <pre caption="Installing the Kernel"> |
209 | another PC. Please note that allowing root to connect over ssh is not |
129 | (Install the kernel sources) # <i>emerge <comment><kernel-package-here></comment></i> |
210 | recommended under normal circumstances. If you can't trust your local network, |
130 | (Configure your kernel using genkernel...) # <i>emerge genkernel; genkernel --menuconfig all</i> |
211 | use a long and complex password, you should use it only once as it will |
131 | (<comment>or</comment> (1) manually build your kernel) # <i>cd /usr/src/linux; make menuconfig;</i> |
212 | disappear after your first reboot. |
132 | ( (2) Include VM fs, /proc fs, /dev fs, /dev fs auto mount at boot) |
|
|
133 | ( (3) Compile your kernel) # <i>make dep && make clean bzImage modules modules_install</i> |
|
|
134 | ( (4) Copy over the kernel) # <i>cp arch/i386/boot/bzImage /boot; cp System.map /boot</i> |
|
|
135 | </pre> |
|
|
136 | |
|
|
137 | <p> |
213 | </p> |
138 | Now install other tools you might want: |
214 | |
|
|
215 | <pre caption="Set the root password"> |
|
|
216 | livecd root # <i>passwd</i> |
|
|
217 | New UNIX password: <comment>type_a_password</comment> |
|
|
218 | Retype new UNIX password: <comment>type_a_password</comment> |
|
|
219 | passwd: password updated successfully |
|
|
220 | </pre> |
|
|
221 | |
139 | </p> |
222 | <p> |
140 | |
223 | Now, you can start a terminal on another PC and connect to your new box, follow |
141 | <pre caption = "Install important system tools"> |
224 | the rest of this guide in another window, and cut and paste commands. |
142 | (Install system logger; choice: sysklogd, metalog, msyslog, syslog-ng) # <i>emerge syslog-ng </i> |
|
|
143 | (Have the systemlogger automatically started at boot) # <i>rc-update add syslog-ng default</i> |
|
|
144 | (Install cron daemon; choice: vixie-cron, dcron, fcron) # <i>emerge vixie-cron</i> |
|
|
145 | (Have the cron daemon automatically started at boot) # <i>rc-update add vixie-cron default</i> |
|
|
146 | (genkernel users only: install hotplug) # <i>emerge hotplug</i> |
|
|
147 | (genkernel users only: have hotplug automatically started at boot) # <i>rc-update add hotplug default</i> |
|
|
148 | (Non-ext2,ext3 users only; choice: reiserfsprogs, xfsprogs, jfsutils) # <i>emerge reiserfsprogs</i> |
|
|
149 | (Domain name init script) # <i>rc-update add domainname default</i> |
|
|
150 | </pre> |
|
|
151 | |
|
|
152 | <p> |
225 | </p> |
153 | If you need specialised kernel ebuilds, now is a good time to install them: |
226 | |
|
|
227 | <pre caption="Connect to your new box from another PC"> |
|
|
228 | <comment>(Use the IP address of your new box)</comment> |
|
|
229 | $ <i>ssh root@192.168.1.10</i> |
|
|
230 | The authenticity of host '192.168.1.10 (192.168.1.10)' can't be established. |
|
|
231 | RSA key fingerprint is 96:e7:2d:12:ac:9c:b0:94:90:9f:40:89:b0:45:26:8f. |
|
|
232 | Are you sure you want to continue connecting (yes/no)? <i>yes</i> |
|
|
233 | Warning: Permanently added '192.168.1.10' (RSA) to the list of known hosts. |
|
|
234 | Password: <comment>type_the_password</comment> |
|
|
235 | </pre> |
|
|
236 | |
|
|
237 | </body> |
|
|
238 | </section> |
|
|
239 | <section> |
|
|
240 | <title>Preparing the Disks</title> |
|
|
241 | <body> |
|
|
242 | |
154 | </p> |
243 | <p> |
155 | |
244 | Use <c>fdisk</c> or <c>cfdisk</c> to create your partition layout. You need at |
156 | <pre caption = "Install Specialised Kernel Ebuilds"> |
245 | least a swap partition (type 82) and one Linux partition (type 83). The |
157 | # <i>emerge pcmcia-cs</i> (or <i>nforce-net</i>, <i>nforce-audio</i>, <i>e100</i>, <i>e1000</i>, <i>ati-drivers</i>, <i>rp-pppoe</i>) |
246 | following scenario creates a <path>/boot</path>, a swap and a main partition |
158 | # <i>VIDEO_CARDS="yourcard" emerge xfree-drm</i> (for ATI Radeon up to 9200, Rage128, Matrox, Voodoo and other cards) |
247 | as used in our handbook. The device name is likely to be either |
159 | </pre> |
248 | <path>/dev/sda</path> for a SATA or SCSI disk, or <path>/dev/hda</path> for an |
160 | |
249 | IDE disk. |
161 | <p> |
250 | </p> |
162 | Finalise the settings for your Gentoo system: |
251 | |
|
|
252 | <pre caption="Create the partitions"> |
|
|
253 | livecd ~ # <i>fdisk /dev/sda</i> |
|
|
254 | |
|
|
255 | <comment>(The rest of this guide uses the following partitioning scheme)</comment> |
|
|
256 | livecd ~ # <i>fdisk -l /dev/sda</i> |
|
|
257 | |
|
|
258 | Disk /dev/sda: 599.9 GB, 599978409984 bytes |
|
|
259 | 255 heads, 63 sectors/track, 72943 cylinders |
|
|
260 | Units = cylinders of 16065 * 512 = 8225280 bytes |
|
|
261 | |
|
|
262 | Device Boot Start End Blocks Id System |
|
|
263 | /dev/sda1 1 12 96358+ 83 Linux |
|
|
264 | /dev/sda2 13 110 787185 82 Linux swap / Solaris |
|
|
265 | /dev/sda3 111 72943 585031072+ 83 Linux |
|
|
266 | </pre> |
|
|
267 | |
163 | </p> |
268 | <p> |
164 | |
269 | Use <c>mke2fs</c>, <c>mke2fs -j</c>, <c>mkreiserfs</c>, <c>mkfs.xfs</c> and |
165 | <pre caption = "Finalise the Configuration Settings"> |
270 | <c>mkfs.jfs</c> to create file systems on your Linux partitions. Initialize your |
166 | (Set root password) # <i>passwd</i> |
271 | swap partition using <c>mkswap</c> and <c>swapon</c>. |
167 | (Create a user) # <i>useradd your_user -m -G users,wheel,audio -s /bin/bash</i> |
|
|
168 | (Set password for that user) # <i>passwd your_user</i> |
|
|
169 | (Set the system hostname) # <i>echo mymachine > /etc/hostname</i> |
|
|
170 | (Set the system domainname) # <i>echo mydomain.com > /etc/dnsdomainname</i> |
|
|
171 | (Set the hostsfile, ex:"127.0.0.1 localhost mymachine") # <i>nano -w /etc/hosts</i> |
|
|
172 | (Configure basic system settings; follow comments) # <i>nano -w /etc/rc.conf</i> |
|
|
173 | </pre> |
|
|
174 | |
|
|
175 | <pre caption = "Set up Networking"> |
|
|
176 | (Setup networking; dhcp-users should set iface_eth0="dhcp") # <i>nano -w /etc/conf.d/net</i> |
|
|
177 | (List modules to be loaded at startup) # <i>nano -w /etc/modules.autoload.d/kernel-<comment><version></comment></i> |
|
|
178 | (Non-PCMCIA only: start networking automatically at boot) # <i>rc-update add net.eth0 default</i> |
|
|
179 | (Only if you have multiple network interfaces:) |
|
|
180 | (1) Create initscripts for each interface) # <i>ln -s /etc/init.d/net.eth0 /etc/init.d/net.ethx</i> |
|
|
181 | (2) Automatically start at boot if no PCMCIA) # <i>rc-update add net.ethx default</i> |
|
|
182 | (PCMCIA only: verify /etc/conf.d/pcmcia and load PCMCIA at boot) # <i>rc-update add pcmcia boot</i> |
|
|
183 | </pre> |
|
|
184 | |
|
|
185 | <p> |
272 | </p> |
186 | Now install a bootloader. |
273 | |
|
|
274 | <pre caption="Create the file systems and activate swap"> |
|
|
275 | <comment>(ext2 is all you need on the /boot partition)</comment> |
|
|
276 | livecd ~ # <i>mke2fs /dev/sda1</i> |
|
|
277 | |
|
|
278 | <comment>(Let's use ext3 on the main partition)</comment> |
|
|
279 | livecd ~ # <i>mke2fs -j /dev/sda3</i> |
|
|
280 | |
|
|
281 | <comment>(Create and activate swap)</comment> |
|
|
282 | livecd ~ # <i>mkswap /dev/sda2 && swapon /dev/sda2</i> |
|
|
283 | </pre> |
|
|
284 | |
187 | </p> |
285 | <p> |
|
|
286 | Mount the freshly created file systems on <path>/mnt/gentoo</path>. Create |
|
|
287 | directories for the other mount points (like <path>/mnt/gentoo/boot</path>) if |
|
|
288 | you need them and mount them too. |
|
|
289 | </p> |
188 | |
290 | |
189 | <pre caption="Install and configure GRUB"> |
291 | <pre caption="Mount the file systems"> |
190 | # <i>emerge grub</i> |
292 | livecd ~ # <i>mount /dev/sda3 /mnt/gentoo</i> |
191 | # <i>grub</i> |
293 | livecd ~ # <i>mkdir /mnt/gentoo/boot</i> |
192 | grub> <i>root (hd0,0)</i> |
294 | livecd ~ # <i>mount /dev/sda1 /mnt/gentoo/boot</i> |
193 | grub> <i>setup (hd0)</i> |
295 | </pre> |
194 | grub> <i>quit</i> |
296 | |
|
|
297 | </body> |
|
|
298 | </section> |
|
|
299 | <section> |
|
|
300 | <title>Setting Up The Stage</title> |
|
|
301 | <body> |
|
|
302 | |
|
|
303 | <p> |
|
|
304 | First make sure your date and time is set correctly using <c>date |
|
|
305 | MMDDhhmmYYYY</c>. Use UTC time. |
|
|
306 | </p> |
|
|
307 | |
|
|
308 | <pre caption="Set the date and UTC time"> |
|
|
309 | <comment>(Check the clock)</comment> |
|
|
310 | livecd ~ # <i>date</i> |
|
|
311 | Mon Mar 6 00:14:13 UTC 2006 |
|
|
312 | |
|
|
313 | <comment>(Set the current date and time if required)</comment> |
|
|
314 | livecd ~ # <i>date 030600162006</i> <comment>(Format is MMDDhhmmYYYY)</comment> |
|
|
315 | Mon Mar 6 00:16:00 UTC 2006 |
|
|
316 | </pre> |
|
|
317 | |
|
|
318 | <p> |
|
|
319 | Next, download a stage from one of our <uri |
|
|
320 | link="/main/en/mirrors.xml">mirrors</uri>. Go to <path>/mnt/gentoo</path> and |
|
|
321 | unpack the stage using <c>tar xjpf <stage3 tarball></c>. |
|
|
322 | </p> |
|
|
323 | |
|
|
324 | <pre caption="Download a stage3 archive"> |
|
|
325 | livecd ~ # <i>cd /mnt/gentoo</i> |
|
|
326 | livecd gentoo # <i>links http://www.gentoo.org/main/en/mirrors.xml</i> |
|
|
327 | <comment>(Pick a mirror, move to the releases/x86/current/stages directory |
|
|
328 | highlight the stage3 of your choice, probably stage3-i686-2006.1.tar.bz2 |
|
|
329 | and press D to download it)</comment> |
|
|
330 | |
|
|
331 | <comment>(<b>Or</b> download it directly with wget without choosing a nearby mirror)</comment> |
|
|
332 | livecd ~ # <i>cd /mnt/gentoo</i> |
|
|
333 | livecd gentoo # <i>wget http://gentoo.osuosl.org/releases/x86/current/stages/stage3-i686-2006.1.tar.bz2</i> |
|
|
334 | </pre> |
|
|
335 | |
|
|
336 | <pre caption="Unpack the stage3 archive"> |
|
|
337 | livecd gentoo # <i>time tar xjpf stage3*</i> |
|
|
338 | |
|
|
339 | real 1m13.157s |
|
|
340 | user 1m2.920s |
|
|
341 | sys 0m7.230s |
|
|
342 | </pre> |
|
|
343 | |
|
|
344 | <p> |
|
|
345 | Install the latest Portage snapshot. Proceed as for the stage3 archive: choose |
|
|
346 | a nearby mirror from our <uri link="/main/en/mirrors.xml">list</uri>, download |
|
|
347 | the latest snapshot and unpack it. |
|
|
348 | </p> |
|
|
349 | |
|
|
350 | <pre caption="Download the latest Portage snapshot"> |
|
|
351 | livecd gentoo # <i>cd /mnt/gentoo/usr</i> |
|
|
352 | livecd usr # <i>links http://www.gentoo.org/main/en/mirrors.xml</i> |
|
|
353 | <comment>(Pick a mirror, move to the snapshots/ directory, |
|
|
354 | highlight <b>portage-latest.tar.bz2</b> and press D to download it)</comment> |
|
|
355 | |
|
|
356 | <comment>(<b>Or</b> download it directly with wget without choosing a nearby mirror)</comment> |
|
|
357 | livecd gentoo # <i>cd /mnt/gentoo/usr</i> |
|
|
358 | livecd usr # <i>wget http://gentoo.osuosl.org/snapshots/portage-latest.tar.bz2</i> |
|
|
359 | </pre> |
|
|
360 | |
|
|
361 | <pre caption="Unpack the Portage snapshot"> |
|
|
362 | livecd usr # <i>time tar xjf portage*</i> |
|
|
363 | |
|
|
364 | real 0m51.523s |
|
|
365 | user 0m28.680s |
|
|
366 | sys 0m12.840s |
|
|
367 | </pre> |
|
|
368 | |
|
|
369 | </body> |
|
|
370 | </section> |
|
|
371 | <section> |
|
|
372 | <title>Chrooting</title> |
|
|
373 | <body> |
|
|
374 | |
|
|
375 | <p> |
|
|
376 | Mount the <path>/proc</path> file system, copy over the |
|
|
377 | <path>/etc/resolv.conf</path> file, then chroot into your Gentoo environment. |
|
|
378 | </p> |
|
|
379 | |
|
|
380 | <pre caption="Chroot"> |
|
|
381 | livecd usr # <i>cd /</i> |
|
|
382 | livecd / # <i>mount -t proc proc /mnt/gentoo/proc</i> |
|
|
383 | livecd / # <i>cp -L /etc/resolv.conf /mnt/gentoo/etc/</i> |
|
|
384 | livecd / # <i>chroot /mnt/gentoo /bin/bash</i> |
|
|
385 | livecd / # <i>env-update && source /etc/profile</i> |
|
|
386 | >>> Regenerating /etc/ld.so.cache... |
|
|
387 | </pre> |
|
|
388 | |
|
|
389 | </body> |
|
|
390 | </section> |
|
|
391 | <section> |
|
|
392 | <title>Set your timezone</title> |
|
|
393 | <body> |
|
|
394 | |
|
|
395 | <p> |
|
|
396 | Set your time zone information by copying the correct file from |
|
|
397 | <path>/usr/share/zoneinfo</path> over the <path>/etc/localtime</path> file. |
|
|
398 | </p> |
|
|
399 | |
|
|
400 | <pre caption="Copy your timezone file"> |
|
|
401 | <comment>(Using Brussels as an example)</comment> |
|
|
402 | livecd / # <i>cp /usr/share/zoneinfo/Europe/Brussels /etc/localtime</i> |
|
|
403 | livecd / # <i>date</i> |
|
|
404 | Wed Mar 8 00:46:05 CET 2006 |
|
|
405 | </pre> |
|
|
406 | |
|
|
407 | </body> |
|
|
408 | </section> |
|
|
409 | <section> |
|
|
410 | <title>Set your host and domain name</title> |
|
|
411 | <body> |
|
|
412 | |
|
|
413 | <p> |
|
|
414 | Set your host name in <path>/etc/conf.d/hostname</path> and |
|
|
415 | <path>/etc/hosts</path>. In the following example, we use <c>mybox</c> as host |
|
|
416 | name and <c>at.myplace</c> as domain name. You can either edit the config |
|
|
417 | files with <c>nano</c> or use the following commands: |
|
|
418 | </p> |
|
|
419 | |
|
|
420 | <pre caption="Set host and domain name"> |
|
|
421 | livecd / # <i>cd /etc</i> |
|
|
422 | livecd etc # <i>echo "127.0.0.1 mybox.at.myplace mybox localhost" > hosts</i> |
|
|
423 | livecd etc # <i>sed -i -e 's/HOSTNAME.*/HOSTNAME="mybox"/' conf.d/hostname</i> |
|
|
424 | <comment>(Use defined host name and check)</comment> |
|
|
425 | livecd etc # <i>hostname mybox</i> |
|
|
426 | livecd etc # <i>hostname -f</i> |
|
|
427 | mybox.at.myplace |
|
|
428 | </pre> |
|
|
429 | |
|
|
430 | </body> |
|
|
431 | </section> |
|
|
432 | <section> |
|
|
433 | <title>Kernel Configuration</title> |
|
|
434 | <body> |
|
|
435 | |
|
|
436 | <p> |
|
|
437 | Install a kernel source (usually <c>gentoo-sources</c> or |
|
|
438 | <c>vanilla-sources</c>), configure it, compile it and copy the |
|
|
439 | <path>arch/i386/boot/bzImage</path> file to <path>/boot</path>. |
|
|
440 | </p> |
|
|
441 | |
|
|
442 | <pre caption="Install a kernel source, compile it and install the kernel"> |
|
|
443 | livecd etc # <i>time emerge gentoo-sources</i> |
|
|
444 | |
|
|
445 | real 2m51.435s |
|
|
446 | user 0m58.220s |
|
|
447 | sys 0m29.890s |
|
|
448 | livecd etc # <i>cd /usr/src/linux</i> |
|
|
449 | livecd linux # <i>make menuconfig</i> |
|
|
450 | <comment>(Configure your kernel)</comment> |
|
|
451 | livecd linux # <i>time make -j2</i> |
|
|
452 | |
|
|
453 | <comment>(Elapsed time depends highly on the options you selected)</comment> |
|
|
454 | real 3m51.962s |
|
|
455 | user 3m27.060s |
|
|
456 | sys 0m24.310s |
|
|
457 | |
|
|
458 | livecd linux # <i>make modules_install</i> |
|
|
459 | livecd linux # <i>cp arch/i386/boot/bzImage /boot/kernel</i> |
|
|
460 | </pre> |
|
|
461 | |
|
|
462 | </body> |
|
|
463 | </section> |
|
|
464 | <section> |
|
|
465 | <title>Configure the system</title> |
|
|
466 | <body> |
|
|
467 | |
|
|
468 | <p> |
|
|
469 | Edit your <path>/etc/fstab</path> and replace <c>BOOT</c>, <c>ROOT</c> and |
|
|
470 | <c>SWAP</c> with the actual partition names. Don't forget to check that the |
|
|
471 | file systems match your installation. |
|
|
472 | </p> |
|
|
473 | |
|
|
474 | <pre caption="Example fstab"> |
|
|
475 | livecd linux # <i>cd /etc</i> |
|
|
476 | livecd etc # <i>nano -w fstab</i> |
|
|
477 | /dev/<i>sda1</i> /boot ext2 noauto,noatime 1 2 |
|
|
478 | /dev/<i>sda3</i> / ext3 noatime 0 1 |
|
|
479 | /dev/<i>sda2</i> none swap sw 0 0 |
|
|
480 | </pre> |
|
|
481 | |
|
|
482 | <p> |
|
|
483 | Configure your network in <path>/etc/conf.d/net</path>. Add the <c>net.eth0</c> |
|
|
484 | init script to the default run level. If you have multiple NICs, symlink them |
|
|
485 | to the <c>net.eth0</c> init script and add them to the default run level as |
|
|
486 | well. Either edit <path>/etc/conf.d/net</path> with <c>nano</c> or use the |
|
|
487 | following commands: |
|
|
488 | </p> |
|
|
489 | |
|
|
490 | <pre caption="Configure networking"> |
|
|
491 | livecd etc # <i>cd conf.d</i> |
|
|
492 | livecd conf.d # <i>echo 'config_eth0=( "192.168.1.10/24" )' >> net</i> |
|
|
493 | livecd conf.d # <i>echo 'routes_eth0=( "default via 192.168.1.1" )' >> net</i> |
|
|
494 | livecd conf.d # <i>rc-update add net.eth0 default</i> |
|
|
495 | <comment>(If you compiled your network card driver as a module, |
|
|
496 | add it to /etc/modules.autoload.d/kernel-2.6)</comment> |
|
|
497 | livecd conf.d # <i>echo r8169 >> /etc/modules.autoload.d/kernel-2.6</i> |
|
|
498 | <comment>(If you want to reconnect via ssh after you have rebooted your new box:)</comment> |
|
|
499 | livecd conf.d # <i>rc-update add sshd default</i> |
|
|
500 | </pre> |
|
|
501 | |
|
|
502 | <note> |
|
|
503 | Emerge <c>pcmcia-cs</c> and add it to the default run level if you need it. |
|
|
504 | </note> |
|
|
505 | |
|
|
506 | <p> |
|
|
507 | Set the root password using <c>passwd</c>. |
|
|
508 | </p> |
|
|
509 | |
|
|
510 | <pre caption="Set the root password"> |
|
|
511 | livecd conf.d # <i>passwd</i> |
|
|
512 | New UNIX password: <comment>type_the_password</comment> |
|
|
513 | Retype new UNIX password: <comment>type_the_password_again</comment> |
|
|
514 | passwd: password updated successfully |
|
|
515 | </pre> |
|
|
516 | |
|
|
517 | <p> |
|
|
518 | Check the system configuration in <path>/etc/rc.conf</path>, |
|
|
519 | <path>/etc/conf.d/rc</path>, <path>/etc/conf.d/keymaps</path>, |
|
|
520 | <path>/etc/conf.d/clock</path> and edit any of those files if required. |
|
|
521 | </p> |
|
|
522 | |
|
|
523 | <pre caption="Optional: edit some config files"> |
|
|
524 | livecd conf.d # <i>nano -w /etc/rc.conf</i> |
|
|
525 | livecd conf.d # <i>nano -w /etc/conf.d/rc</i> |
|
|
526 | livecd conf.d # <i>nano -w /etc/conf.d/keymaps</i> |
|
|
527 | livecd conf.d # <i>nano -w /etc/conf.d/clock</i> |
|
|
528 | </pre> |
|
|
529 | |
|
|
530 | </body> |
|
|
531 | </section> |
|
|
532 | <section> |
|
|
533 | <title>Installing System Tools</title> |
|
|
534 | <body> |
|
|
535 | |
|
|
536 | <p> |
|
|
537 | Install a system logger like <c>syslog-ng</c> and a cron daemon like |
|
|
538 | <c>vixie-cron</c>, and add them to the default run level. |
|
|
539 | </p> |
|
|
540 | |
|
|
541 | <note> |
|
|
542 | Cron daemons depend on an MTA. <c>mail-mta/ssmtp</c> will be pulled in as a |
|
|
543 | dependency. If you want to use a more advanced MTA, you might want to install |
|
|
544 | it now. If you are in a hurry, let ssmtp be installed and remove it later when |
|
|
545 | you install the MTA of your choice. |
|
|
546 | </note> |
|
|
547 | |
|
|
548 | <pre caption="Install a syslogger and a cron daemon"> |
|
|
549 | livecd conf.d # <i>time emerge syslog-ng vixie-cron</i> |
|
|
550 | |
|
|
551 | real 1m52.699s |
|
|
552 | user 1m1.630s |
|
|
553 | sys 0m35.220s |
|
|
554 | livecd conf.d # <i>rc-update add syslog-ng default</i> |
|
|
555 | livecd conf.d # <i>rc-update add vixie-cron default</i> |
|
|
556 | </pre> |
|
|
557 | |
|
|
558 | <p> |
|
|
559 | Install the necessary file system tools (<c>xfsprogs</c>, <c>reiserfsprogs</c> |
|
|
560 | or <c>jfsutils</c>) and networking tools (<c>dhcpcd</c> or <c>rp-pppoe</c>) if |
|
|
561 | you need any. |
|
|
562 | </p> |
|
|
563 | |
|
|
564 | <pre caption="Install extra tools if required"> |
|
|
565 | livecd conf.d # <i>emerge xfsprogs</i> <comment>(If you use the XFS file system)</comment> |
|
|
566 | livecd conf.d # <i>emerge jfsutils</i> <comment>(If you use the JFS file system)</comment> |
|
|
567 | livecd conf.d # <i>emerge reiserfsprogs</i> <comment>(If you use the Reiser file system)</comment> |
|
|
568 | livecd conf.d # <i>emerge dhcpcd</i> <comment>(If you need a DHCP client)</comment> |
|
|
569 | livecd conf.d # <i>USE="-X" emerge rp-pppoe</i> <comment>(If you need PPPoE ADSL connectivity)</comment> |
|
|
570 | </pre> |
|
|
571 | |
|
|
572 | </body> |
|
|
573 | </section> |
|
|
574 | <section> |
|
|
575 | <title>Configuring the Bootloader</title> |
|
|
576 | <body> |
|
|
577 | |
|
|
578 | <p> |
|
|
579 | Emerge <c>grub</c> or <c>lilo</c>. Configure either |
|
|
580 | <path>/boot/grub/grub.conf</path> or <path>/etc/lilo.conf</path> and install |
|
|
581 | the bootloader you have emerged. |
|
|
582 | </p> |
|
|
583 | |
|
|
584 | <p> |
|
|
585 | <b>1. Using grub</b> |
|
|
586 | </p> |
|
|
587 | |
|
|
588 | <pre caption="Emerge grub and edit its configuration file"> |
|
|
589 | livecd conf.d # <i>time emerge grub</i> |
|
|
590 | |
|
|
591 | real 1m8.634s |
|
|
592 | user 0m39.460s |
|
|
593 | sys 0m15.280s |
195 | # <i>nano -w /boot/grub/grub.conf</i> |
594 | livecd conf.d # <i>nano -w /boot/grub/grub.conf</i> |
|
|
595 | </pre> |
|
|
596 | |
|
|
597 | <pre caption="Example grub.conf"> |
196 | default 0 |
598 | default 0 |
197 | timeout 15 |
599 | timeout 10 |
198 | splashimage=(hd0,0)/grub/splash.xpm.gz |
|
|
199 | |
600 | |
200 | title=Gentoo Linux |
601 | title=Gentoo |
201 | root (hd0,0) |
602 | root (hd0,0) |
202 | <comment># genkernel users:</comment> |
603 | kernel /boot/kernel root=/dev/sda3 |
203 | kernel /kernel-<comment><kernel version></comment> root=/dev/ram0 init=/linuxrc real_root=/dev/hda3 |
604 | </pre> |
204 | initrd /initrd-<comment><kernel version></comment> |
605 | |
205 | <comment># non-genkernel users:</comment> |
606 | <pre caption="Install grub"> |
206 | kernel /kernel-<comment><kernel version></comment> root=/dev/hda3 |
607 | livecd conf.d # <i>grub</i> |
|
|
608 | Probing devices to guess BIOS drives. This may take a long time. |
|
|
609 | |
|
|
610 | grub> <i>root (hd0,0)</i> |
|
|
611 | Filesystem type is ext2fs, partition type 0x83 |
|
|
612 | |
|
|
613 | grub> <i>setup (hd0)</i> |
|
|
614 | Checking if "/boot/grub/stage1" exists... yes |
|
|
615 | Checking if "/boot/grub/stage2" exists... yes |
|
|
616 | Checking if "/boot/grub/e2fs_stage1_5" exists... yes |
|
|
617 | Running "embed /boot/grub/e2fs_stage1_5 (hd0)"... 16 sectors are embedded. |
|
|
618 | succeeded |
|
|
619 | Running "install /boot/grub/stage1 (hd0) (hd0)1+16 p (hd0,0)/boot/grub/stage2 /boot/ |
|
|
620 | grub/menu.lst"... succeeded |
|
|
621 | Done. |
|
|
622 | |
|
|
623 | grub> <i>quit</i> |
|
|
624 | </pre> |
|
|
625 | |
|
|
626 | <p> |
|
|
627 | Now, proceed with the <uri link="#reboot">rebooting section</uri>. |
207 | </pre> |
628 | </p> |
208 | |
629 | |
209 | <pre caption="Install and configure LILO"> |
630 | <p> |
210 | # <i>emerge lilo</i> |
631 | <b>2. Using lilo</b> |
|
|
632 | </p> |
|
|
633 | |
|
|
634 | <pre caption="Emerge lilo and edit its configuration file"> |
|
|
635 | livecd conf.d # <i>time emerge lilo</i> |
|
|
636 | |
|
|
637 | real 0m47.016s |
|
|
638 | user 0m22.770s |
|
|
639 | sys 0m5.980s |
211 | # <i>nano -w /etc/lilo.conf</i> |
640 | livecd conf.d # <i>nano -w /etc/lilo.conf</i> |
|
|
641 | </pre> |
|
|
642 | |
|
|
643 | <pre caption="Example lilo.conf"> |
212 | boot=/dev/hda |
644 | boot=/dev/sda |
213 | prompt |
645 | prompt |
214 | timeout=50 |
646 | timeout=50 |
215 | default=gentoo |
647 | default=gentoo |
216 | |
648 | |
217 | image=/boot/kernel-<comment><kernel version></comment> |
649 | image=/boot/kernel |
218 | label=gentoo |
650 | label=Gentoo |
219 | read-only |
651 | read-only |
220 | <comment># genkernel users:</comment> |
|
|
221 | append="init=/linuxrc real_root=/dev/hda3" |
|
|
222 | root=/dev/ram0 |
|
|
223 | initrd=/boot/initrd-<comment><kernel version></comment> |
|
|
224 | <comment># non-genkernel users:</comment> |
|
|
225 | root=/dev/hda3 |
652 | root=/dev/sda3 |
226 | |
|
|
227 | # <i>/sbin/lilo</i> |
|
|
228 | </pre> |
|
|
229 | |
|
|
230 | <p> |
|
|
231 | Now unmount all partitions and reboot into your new system: |
|
|
232 | </p> |
653 | </pre> |
233 | |
654 | |
234 | <pre caption="Finishing off and installing GUI"> |
655 | <pre caption="Install lilo"> |
235 | (Exiting the chroot) # <i>exit; cd /</i> |
656 | livecd conf.d # <i>lilo</i> |
236 | (Unmounting partitions) # <i>umount /mnt/gentoo/boot /mnt/gentoo/proc /mnt/gentoo</i> |
657 | Added Gentoo * |
237 | (Reboot; Remove the universal CD from the tray) # <i>reboot</i> |
|
|
238 | (After booting:) |
|
|
239 | (ADSL-users only) # <i>adsl-setup</i> |
|
|
240 | (GRP-users only) |
|
|
241 | (1) Mount Package CD # <i>mount /dev/cdrom /mnt/cdrom</i> |
|
|
242 | (2) Copy over packages # <i>mkdir /usr/portage/packages</i> |
|
|
243 | # <i>cp -a /mnt/cdrom/* /usr/portage/packages/</i> |
|
|
244 | (3) Install extra software # <i>USE="bindist" emerge -k xfree gnome kde mozilla openoffice-bin</i> |
|
|
245 | (4) Configure your Xserver # <i>/usr/X11R6/bin/xf86config</i> |
|
|
246 | </pre> |
|
|
247 | |
|
|
248 | <p> |
|
|
249 | You can get more information from the <uri |
|
|
250 | link="http://www.gentoo.org/doc/en/index.xml">Gentoo |
|
|
251 | Documentation</uri>. |
|
|
252 | </p> |
658 | </pre> |
|
|
659 | |
|
|
660 | </body> |
|
|
661 | </section> |
|
|
662 | <section id="reboot"> |
|
|
663 | <title>Reboot</title> |
253 | </body> |
664 | <body> |
|
|
665 | |
|
|
666 | <p> |
|
|
667 | Exit the chrooted environment, unmount all file systems and reboot: |
|
|
668 | </p> |
|
|
669 | |
|
|
670 | <pre caption="Reboot"> |
|
|
671 | livecd conf.d # <i>exit</i> |
|
|
672 | livecd / # <i>umount /mnt/gentoo/proc /mnt/gentoo/boot /mnt/gentoo</i> |
|
|
673 | livecd / # <i>reboot</i> |
|
|
674 | <comment>(Don't forget to remove the CD)</comment> |
|
|
675 | </pre> |
|
|
676 | |
|
|
677 | </body> |
|
|
678 | </section> |
|
|
679 | <section id="after-reboot"> |
|
|
680 | <title>Finalizing the Installation</title> |
|
|
681 | <body> |
|
|
682 | |
|
|
683 | <note> |
|
|
684 | The <b>total</b> elapsed time between the display of the boot prompt on the |
|
|
685 | minimal CD and the display of the login prompt after the reboot was |
|
|
686 | <b>00:42:31</b> on our test box. Yes, less than one hour! Note that this time |
|
|
687 | also includes the stage3, Portage snapshot and several packages download time |
|
|
688 | and the time spent configuring the kernel. |
|
|
689 | </note> |
|
|
690 | |
|
|
691 | <p> |
|
|
692 | Log in as <c>root</c>, then add one or more users for daily use with |
|
|
693 | <c>useradd</c>. |
|
|
694 | </p> |
|
|
695 | |
|
|
696 | <pre caption="Connect to your new box from another PC"> |
|
|
697 | <comment>(Clean up your known_hosts file because your new box |
|
|
698 | has generated a new definitive hostkey)</comment> |
|
|
699 | $ <i>nano -w ~/.ssh/known_hosts</i> |
|
|
700 | <comment>(Look for the IP of your new PC and delete the line, |
|
|
701 | then save the file and exit nano)</comment> |
|
|
702 | |
|
|
703 | <comment>(Use the IP address of your new box)</comment> |
|
|
704 | $ <i>ssh root@192.168.1.10</i> |
|
|
705 | The authenticity of host '192.168.1.10 (192.168.1.10)' can't be established. |
|
|
706 | RSA key fingerprint is 96:e7:2d:12:ac:9c:b0:94:90:9f:40:89:b0:45:26:8f. |
|
|
707 | Are you sure you want to continue connecting (yes/no)? <i>yes</i> |
|
|
708 | Warning: Permanently added '192.168.1.10' (RSA) to the list of known hosts. |
|
|
709 | Password: <comment>type_the_password</comment> |
|
|
710 | </pre> |
|
|
711 | |
|
|
712 | <pre caption="Add a new user"> |
|
|
713 | mybox ~ # <i>adduser -g users -G lp,wheel,audio,cdrom,portage,cron -m john</i> |
|
|
714 | mybox ~ # <i>passwd john</i> |
|
|
715 | New UNIX password: <comment>Set John's password</comment> |
|
|
716 | Retype new UNIX password: <comment>Type John's password again</comment> |
|
|
717 | passwd: password updated successfully |
|
|
718 | </pre> |
|
|
719 | |
|
|
720 | </body> |
|
|
721 | </section> |
254 | </section> |
722 | <section> |
|
|
723 | <title>Last configuration touches</title> |
|
|
724 | <body> |
|
|
725 | |
|
|
726 | <p> |
|
|
727 | Start by selecting nearby mirrors either by defining the <c>RSYNC</c> and |
|
|
728 | <c>GENTOO_MIRRORS</c> variables in <path>/etc/make.conf</path> or by using |
|
|
729 | <c>mirrorselect</c>. You can also define the number of concurrent compilation |
|
|
730 | processes at this point. |
|
|
731 | </p> |
|
|
732 | |
|
|
733 | <pre caption="Use mirrorselect and set MAKEOPTS"> |
|
|
734 | mybox ~ # <i>emerge mirrorselect</i> |
|
|
735 | mybox ~ # <i>mirrorselect -i -o >> /etc/make.conf</i> |
|
|
736 | mybox ~ # <i>mirrorselect -i -r -o >> /etc/make.conf</i> |
|
|
737 | <comment>(Usually, (the number of processors + 1) is a good value)</comment> |
|
|
738 | mybox ~ # <i>echo 'MAKEOPTS="-j2"' >> /etc/make.conf</i> |
|
|
739 | </pre> |
|
|
740 | |
|
|
741 | <p> |
|
|
742 | Now is a good time to enable or disable some USE flags. Run <c>emerge -vpe |
|
|
743 | world</c> to list all currently installed packages and their enabled and |
|
|
744 | disabled USE flags. Either edit <path>/etc/make.conf</path> or use the |
|
|
745 | following command to define the USE variable: |
|
|
746 | </p> |
|
|
747 | |
|
|
748 | <pre caption="View USE flags in use and enable or disable some"> |
|
|
749 | mybox ~ # <i>emerge -vpe world</i> |
|
|
750 | <comment>(Portage displays the packages and their USE flags, as an example, let's |
|
|
751 | disable ipv6 and fortran, and enable userlocales and unicode)</comment> |
|
|
752 | mybox ~ # <i>echo 'USE="nptl nptlonly -ipv6 -fortran userlocales unicode"' >> /etc/make.conf</i> |
|
|
753 | </pre> |
|
|
754 | |
|
|
755 | <p> |
|
|
756 | If you enabled the <c>userlocales</c> USE flag for versions of glibc that still |
|
|
757 | support it, you should edit <path>/etc/locales.build</path> and define the |
|
|
758 | locales you want to build. |
|
|
759 | </p> |
|
|
760 | |
|
|
761 | <p> |
|
|
762 | Later versions of glibc ignore the userlocales USE flag and use |
|
|
763 | <path>/etc/locale.gen</path> instead. If you are upgrading glibc to such a |
|
|
764 | version, you should create <path>/etc/locale.gen</path> <e>and remove</e> |
|
|
765 | <path>/etc/locales.build</path>. Check the output of <c>emerge -vpe world</c> |
|
|
766 | to know whether glibc supports the userlocales USE flag. |
|
|
767 | </p> |
|
|
768 | |
|
|
769 | <pre caption="Define locales"> |
|
|
770 | mybox ~ # <i>cd /etc</i> |
|
|
771 | <comment>(For versions of glibc with the userlocales USE flag)</comment> |
|
|
772 | mybox etc # <i>nano -w locales.build</i> |
|
|
773 | |
|
|
774 | <comment>(For recent versions of glibc, convert locales.build)</comment> |
|
|
775 | mybox etc # <i>grep '^[^#].*' locales.build | sed 's:/: :' >locale.gen</i> |
|
|
776 | mybox etc # <i>rm locales.build</i> |
|
|
777 | mybox etc # <i>nano -w locale.gen</i> |
|
|
778 | </pre> |
|
|
779 | |
|
|
780 | <p> |
|
|
781 | Last but not least, you may want to alter the <c>CFLAGS</c> variable in your |
|
|
782 | <path>/etc/make.conf</path> to optimise the code to your specific needs. Please |
|
|
783 | note that using a long list of flags is rarely needed and can even lead to a |
|
|
784 | broken system. It is recommended to specify the processor type in the |
|
|
785 | <c>march</c> option and stick to <c>-O2 -pipe</c>. |
|
|
786 | </p> |
|
|
787 | |
|
|
788 | <p> |
|
|
789 | You may also want to switch to <b>~x86</b>. You should only do this if you can |
|
|
790 | deal with the odd broken ebuild or package. If you'd rather keep your system |
|
|
791 | stable, don't add the <c>ACCEPT_KEYWORDS</c> variable. Adding |
|
|
792 | <c>FEATURES="parallel-fetch ccache"</c> is also a good idea. |
|
|
793 | </p> |
|
|
794 | |
|
|
795 | <pre caption="Last edit of make.conf"> |
|
|
796 | mybox etc # <i>nano -w make.conf</i> |
|
|
797 | <comment>(Set -march to your CPU type in CFLAGS)</comment> |
|
|
798 | CFLAGS="-O2 -march=<i>athlon-xp</i> -pipe" |
|
|
799 | <comment>(Add the following line)</comment> |
|
|
800 | FEATURES="parallel-fetch ccache" |
|
|
801 | <comment>(Only add the following if you know what you're doing)</comment> |
|
|
802 | ACCEPT_KEYWORDS="~x86" |
|
|
803 | </pre> |
|
|
804 | |
|
|
805 | <p> |
|
|
806 | You might want to recompile your whole system twice to make full use of your |
|
|
807 | latest configuration changes. It would take quite a long time to complete and |
|
|
808 | yield minimal speed benefits. You can let your system optimise itself gradually |
|
|
809 | over time when new versions of packages are released. However, recompiling is |
|
|
810 | a still good idea from the standpoint of maintaining system consistency. Please |
|
|
811 | see the <uri link="/doc/en/gcc-upgrading.xml">Gentoo GCC Upgrading Guide</uri> |
|
|
812 | for a discussion on the benefits of ensuring a consistently built system and |
|
|
813 | world. |
|
|
814 | </p> |
|
|
815 | |
|
|
816 | <p> |
|
|
817 | Recompiling only the packages that have already been updated since the release |
|
|
818 | or that are affected by your new USE flags will take enough time. You might |
|
|
819 | also have to remove packages that block your upgrade. Look for "[blocks |
|
|
820 | <brite>B</brite> ]" in the output of <c>emerge -vpuD --newuse world</c> and |
|
|
821 | use <c>emerge -C</c> to remove them. |
|
|
822 | </p> |
|
|
823 | |
|
|
824 | <pre caption="Update your packages"> |
|
|
825 | <comment>(Install ccache)</comment> |
|
|
826 | mybox etc # <i>emerge ccache</i> |
|
|
827 | |
|
|
828 | <comment>(Please note that the switch to ~x86 causes many packages to be upgraded)</comment> |
|
|
829 | mybox etc # <i>emerge -vpuD --newuse world</i> |
|
|
830 | <comment>(Take a good look at the package list and their USE flags, |
|
|
831 | remove blocking packages if any, and start the lengthy process)</comment> |
|
|
832 | mybox etc # <i>time emerge -vuD --newuse world</i> |
|
|
833 | <comment>(79 packages have been (re)compiled)</comment> |
|
|
834 | |
|
|
835 | real 180m13.276s |
|
|
836 | user 121m22.905s |
|
|
837 | sys 36m31.472s |
|
|
838 | |
|
|
839 | <comment>(Remerge libtool to avoid further potential problems)</comment> |
|
|
840 | mybox etc # <i>emerge libtool</i> |
|
|
841 | |
|
|
842 | <comment>(Update config files, make sure you <b>do not</b> let etc-update |
|
|
843 | update config files you have edited)</comment> |
|
|
844 | mybox etc # <i>etc-update</i> |
|
|
845 | |
|
|
846 | <comment>(If perl has been updated, you should run the perl-cleaner script)</comment> |
|
|
847 | mybox etc # <i>time perl-cleaner all</i> |
|
|
848 | real 1m6.495s |
|
|
849 | user 0m42.699s |
|
|
850 | sys 0m10.641s |
|
|
851 | |
|
|
852 | <comment>(In case of a major upgrade of python, you should run the python-updater script)</comment> |
|
|
853 | mybox etc # <i>python-updater</i> |
|
|
854 | </pre> |
|
|
855 | |
|
|
856 | </body> |
|
|
857 | </section> |
|
|
858 | <section> |
|
|
859 | <title>What to do next</title> |
|
|
860 | <body> |
|
|
861 | |
|
|
862 | <p> |
|
|
863 | Depending on what your new Gentoo machine is supposed to do, you will probably |
|
|
864 | want to install server applications or a desktop system. Just as an example, |
|
|
865 | <c>emerge gnome</c> and <c>emerge kde</c> have been timed on the ~x86 system |
|
|
866 | installed as describe above. Both have been installed from the same starting |
|
|
867 | point. |
|
|
868 | </p> |
|
|
869 | |
|
|
870 | <p> |
|
|
871 | You should check our <uri link="/doc/en/">documentation index</uri> to find out |
|
|
872 | how to install and configure the applications of your choice. |
|
|
873 | </p> |
|
|
874 | |
|
|
875 | <impo> |
|
|
876 | The following is only an example. It is in no way meant as a recommended setup. |
|
|
877 | </impo> |
|
|
878 | |
|
|
879 | <pre caption="Emerge GNOME"> |
|
|
880 | mybox etc # <i>emerge -vp gnome</i> |
|
|
881 | <comment>(Look at the list of packages and their USE flags, |
|
|
882 | then edit make.conf if required.</comment> |
|
|
883 | mybox etc # <i>nano -w /etc/make.conf</i> |
|
|
884 | <comment>(The following USE flags have been defined)</comment> |
|
|
885 | USE="nptl nptlonly -ipv6 -fortran unicode svg hal dbus \ |
|
|
886 | -kde -qt3 -qt4 -arts -eds -esd gnome gstreamer gtk -xmms firefox" |
|
|
887 | |
|
|
888 | mybox etc # <i>time emerge gnome</i> |
|
|
889 | <comment>(326 packages have been emerged)</comment> |
|
|
890 | |
|
|
891 | real 520m44.532s |
|
|
892 | user 339m21.144s |
|
|
893 | sys 146m22.337s |
|
|
894 | </pre> |
|
|
895 | |
|
|
896 | <pre caption="Emerge KDE"> |
|
|
897 | mybox etc # <i>emerge -vp kde-meta</i> |
|
|
898 | <comment>(Look at the list of packages and their USE flags, |
|
|
899 | then edit make.conf if required.</comment> |
|
|
900 | mybox etc # <i>nano -w /etc/make.conf</i> |
|
|
901 | <comment>The following USE flags have been defined)</comment> |
|
|
902 | USE="nptl nptlonly -ipv6 -fortran unicode svg hal dbus \ |
|
|
903 | kde qt3 qt4 -arts -eds -esd -gnome -gstreamer -gtk -xmms -firefox" |
|
|
904 | |
|
|
905 | mybox etc # <i>time emerge kde-meta</i> |
|
|
906 | <comment>(391 packages have been emerged)</comment> |
|
|
907 | |
|
|
908 | real 1171m25.318s |
|
|
909 | user 851m26.393s |
|
|
910 | sys 281m45.629s |
|
|
911 | </pre> |
|
|
912 | |
|
|
913 | </body> |
|
|
914 | </section> |
255 | </chapter> |
915 | </chapter> |
256 | </guide> |
916 | </guide> |
257 | |
|
|