~psusi/ubuntu/precise/installation-guide/partitions

« back to all changes in this revision

Viewing changes to eu/appendix/chroot-install.xml

  • Committer: Bazaar Package Importer
  • Author(s): Colin Watson
  • Date: 2010-06-25 10:28:30 UTC
  • mfrom: (2.1.4 sid)
  • Revision ID: james.westby@ubuntu.com-20100625102830-nvfcrroep8mvhkeo
Tags: 20100518ubuntu1
* Resynchronise with Debian.  Remaining changes:
  - Build only English (for now, until we figure out how to avoid trashing
    translations quite so badly with Ubuntu branding etc.).
  - Build only Ubuntu architectures (amd64, armel, i386, ia64, powerpc,
    sparc).
  - Extensive (although possibly incomplete) Ubuntu branding, adjustments
    for our mirror layout, etc.
  - Add "Ubuntu and Debian" and "What is Ubuntu?" section, text borrowed
    from the Ubuntu web site. Disable the "What is Debian GNU/Linux?"
    section.
  - Direct installation reports to ubuntu-users for now.
  - Adjust various memory and disk space requirements. Talk about the
    default Ubuntu desktop and Ubuntu tasks rather than Debian tasks.
  - Document mounting /sys in various places.
  - Unset supports-floppy-boot for all our architectures.
  - Add a few more supports-floppy-boot and bootable-usb conditionals.
  - Document our root password and sudo arrangements.
  - Document netboot-style USB images. Still mention the hd-media images,
    but they're downplayed since many USB sticks are too small for a full
    Ubuntu ISO image.
  - Document Kickstart installations (currently only the basics, a
    reference to Red Hat's documentation, and the differences from
    Anaconda).
  - Update keyboard preseeding documentation for console-setup.
  - Update chroot-install guide for console-setup and language packs; add
    a bit more advice about installing grub.
  - Disable documentation of win32-loader.
  - Document new simplified partman preseeding.
  - Document mirror/udeb/components.
  - Document apt-setup/security_path.
  - Don't recommend passing http://archive.ubuntu.com/ubuntu to
    debootstrap.
  - Document pkgsel/update-policy.
  - Document preseeding user-setup's home directory encryption facility.
  - Improve examples of tasksel/first preseeding to avoid mentioning
    standard, which is installed by default.
  - Document partman-auto-lvm/guided_size.
  - Document scheme for preseeding the use of CC.archive.ubuntu.com
    mirrors.
  - Document pkgsel/updatedb.
  - Document partman/default_filesystem.
  - Document how to override the weak password check.
  - Remove comments about automatic installation methods that have been
    removed from Ubuntu.
  - Remove documentation of
    base-installer/kernel/linux/initramfs-generators; setting this to
    anything other than the default will cause the installer to fail.
* Adjust list of armel architectures for Ubuntu.
* Bump kernelversion to 2.6.35.
* Bump release version and names for Maverick.
* Update Canonical's copyright years.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
<!-- retain these comments for translator revision tracking -->
2
 
<!-- original version: 15442 untranslated -->
3
 
 
4
 
 <sect1 id="linux-upgrade">
5
 
 <title>Installing &debian; from a Unix/Linux System</title>
6
 
 
7
 
<para>
8
 
 
9
 
This section explains how to install &debian; from an existing
10
 
Unix or Linux system, without using the ncurses-based, menu-driven
11
 
installer as explained in the rest of the manual. This "cross-install"
12
 
HOWTO has been requested by users switching to &debian; from
13
 
Redhat, Mandrake, and SUSE. In this section some familiarity with
14
 
entering *nix commands and navigating the file system is assumed. In
15
 
this section, <prompt>$</prompt> symbolizes a command to be entered in
16
 
the user's current system, while <prompt>#</prompt> refers to a
17
 
command entered in the Debian chroot.
18
 
 
19
 
</para><para>
20
 
 
21
 
Once you've got the new Debian system configured to your preference,
22
 
you can migrate your existing user data (if any) to it, and keep on
23
 
rolling. This is therefore a "zero downtime" &debian;
24
 
install. It's also a clever way for dealing with hardware that
25
 
otherwise doesn't play friendly with various boot or installation
26
 
media.
27
 
 
28
 
</para>
29
 
 
30
 
  <sect2>
31
 
  <title>Getting Started</title>
32
 
<para>
33
 
 
34
 
With your current *nix partitioning tools, repartition the hard
35
 
drive as needed, creating at least one filesystem plus swap. You
36
 
need at least 150MB of space available for a console only install,
37
 
or at least 300MB if you plan to install X.
38
 
 
39
 
</para><para>
40
 
 
41
 
To create file systems on your partitions. For example, to create an 
42
 
ext3 file system on partition <filename>/dev/hda6</filename> (that's  
43
 
our example root partition):
44
 
 
45
 
<informalexample><screen>
46
 
 
47
 
 $ mke2fs -j /dev/hda6
48
 
 
49
 
</screen></informalexample>
50
 
 
51
 
To create an ext2 file system instead, omit <userinput>-j</userinput>.
52
 
 
53
 
</para><para>
54
 
 
55
 
Initialize and activate swap (substitute the partition number for 
56
 
your intended Debian swap partition):
57
 
 
58
 
<informalexample><screen>
59
 
 
60
 
 $ mkswap /dev/hda5
61
 
 $ sync; sync; sync
62
 
 $ swapon /dev/hda5
63
 
 
64
 
</screen></informalexample>
65
 
 
66
 
</para><para>
67
 
 
68
 
Mount one partition as <filename>/mnt/debinst</filename> (the
69
 
installation point, to be the root (<filename>/</filename>) filesystem
70
 
on your new system). The mount point name is strictly arbitrary, it is
71
 
referenced later below.
72
 
 
73
 
<informalexample><screen>
74
 
 
75
 
 $ mkdir /mnt/debinst
76
 
 $ mount /dev/hda6 /mnt/debinst
77
 
 
78
 
</screen></informalexample>
79
 
 
80
 
</para>
81
 
  </sect2>
82
 
 
83
 
  <sect2>
84
 
  <title>Install <command>debootstrap</command></title>
85
 
<para>
86
 
 
87
 
The tool that the Debian installer uses, which is recognized as the
88
 
official way to install a Debian base system, is
89
 
<command>debootstrap</command>. It uses <command>wget</command>, but
90
 
otherwise depends only on <classname>glibc</classname>. Install
91
 
<command>wget</command> if it isn't already on your current system,
92
 
then download and install <command>debootstrap</command>.
93
 
 
94
 
</para><para>
95
 
 
96
 
If you have an rpm-based system, you can use alien to convert the 
97
 
.deb into .rpm, or download an rpm-ized version at 
98
 
<ulink url="http://people.debian.org/~blade/install/debootstrap"></ulink>
99
 
 
100
 
</para><para>
101
 
 
102
 
Or, you can use the following procedure to install it
103
 
manually. Make a work folder for extracting the .deb into:
104
 
 
105
 
<informalexample><screen>
106
 
 
107
 
 $ mkdir work
108
 
 $ cd work
109
 
 
110
 
</screen></informalexample>
111
 
</para><para>
112
 
 
113
 
The <command>debootstrap</command> binary is located in the Debian
114
 
archive (be sure to select the proper file for your
115
 
architecture). Download the <command>debootstrap</command> .deb from
116
 
the <ulink url="http://ftp.debian.org/debian/pool/main/d/debootstrap/">
117
 
pool</ulink>, copy the package to the work folder, and extract the
118
 
binary files from it. You will need to have root privileges to install
119
 
the binaries.
120
 
 
121
 
<informalexample><screen>
122
 
 
123
 
 $ ar -xf debootstrap_0.X.X_arch.deb
124
 
 $ cd /
125
 
 $ zcat &#60; /full-path-to-work/work/data.tar.gz | tar xv
126
 
 
127
 
</screen></informalexample>
128
 
 
129
 
</para>
130
 
  </sect2>
131
 
 
132
 
  <sect2>
133
 
  <title>Run <command>debootstrap</command> (Network-connected)</title>
134
 
<para>
135
 
 
136
 
<command>debootstrap</command> can download the needed files directly
137
 
from the archive when you run it. You can substitute any Debian
138
 
archive mirror for <userinput>http.us.debian.org/debian</userinput> in
139
 
the command example below, preferably a mirror close to you
140
 
network-wise. Mirrors are listed at 
141
 
<ulink url="http://www.debian.org/misc/README.mirrors"></ulink>.
142
 
 
143
 
</para><para>
144
 
 
145
 
If you have a woody version &debian; CD mounted at
146
 
<filename>/cdrom</filename>, you could substitute a file URL instead
147
 
of the http URL: <userinput>file:/cdrom/debian/</userinput>
148
 
 
149
 
</para><para>
150
 
 
151
 
Substitute one of the following for <replaceable>ARCH</replaceable> 
152
 
in the <command>debootstrap</command> command: 
153
 
 
154
 
<userinput>alpha</userinput>, 
155
 
<userinput>arm</userinput>,
156
 
<userinput>hppa</userinput>, 
157
 
<userinput>i386</userinput>, 
158
 
<userinput>ia64</userinput>, 
159
 
<userinput>m68k</userinput>,
160
 
<userinput>mips</userinput>, 
161
 
<userinput>mipsel</userinput>, 
162
 
<userinput>powerpc</userinput>, 
163
 
<userinput>s390</userinput>, or
164
 
<userinput>sparc</userinput>.
165
 
 
166
 
<informalexample><screen>
167
 
 
168
 
 $ /usr/sbin/debootstrap --arch ARCH woody \
169
 
     /mnt/debinst http://http.us.debian.org/debian
170
 
 
171
 
</screen></informalexample>
172
 
 
173
 
</para>
174
 
 
175
 
  </sect2>
176
 
 
177
 
  <sect2>
178
 
  <title>Run <command>debootstrap</command> 
179
 
  (Using <filename>basedebs.tar</filename>)</title>
180
 
<para>
181
 
 
182
 
<command>debootstrap</command> can use the
183
 
<filename>basedebs.tar</filename> file, if you have already downloaded
184
 
it ahead of time. The <filename>basedebs.tar</filename> file is
185
 
generated only every once in a while, so you'll get the latest version
186
 
of the base system by pointing <command>debootstrap</command> directly
187
 
to a Debian archive as shown in the previous section.
188
 
 
189
 
</para><para>
190
 
 
191
 
The <filename>basedebs.tar</filename> file is found in the
192
 
<filename>base-images-current</filename> directory of the Debian
193
 
archive for your architecture, for example: 
194
 
<ulink url="http://http.us.debian.org/debian/dists/woody/main/disks-&architecture;/base-images-current/basedebs.tar"></ulink>
195
 
 
196
 
</para><para>
197
 
 
198
 
Substitute one of the following for <replaceable>ARCH</replaceable> in the
199
 
<command>debootstrap</command> command: 
200
 
 
201
 
<userinput>alpha</userinput>, 
202
 
<userinput>arm</userinput>,
203
 
<userinput>hppa</userinput>, 
204
 
<userinput>i386</userinput>, 
205
 
<userinput>ia64</userinput>, 
206
 
<userinput>m68k</userinput>,
207
 
<userinput>mips</userinput>, 
208
 
<userinput>mipsel</userinput>, 
209
 
<userinput>powerpc</userinput>, 
210
 
<userinput>s390</userinput>, or
211
 
<userinput>sparc</userinput>.
212
 
<informalexample><screen>
213
 
 
214
 
$ /usr/sbin/debootstrap --arch ARCH --unpack-tarball \
215
 
    /path-to-downloaded/basedebs.tar woody /mnt/debinst
216
 
 
217
 
</screen></informalexample>
218
 
</para>
219
 
  </sect2>
220
 
 
221
 
  <sect2>
222
 
  <title>Configure The Base System</title>
223
 
 
224
 
<para>
225
 
 
226
 
Now you've got a real Debian system, though rather lean, on disk.
227
 
<command>Chroot</command> into it:
228
 
 
229
 
<informalexample><screen>
230
 
 
231
 
 $ chroot /mnt/debinst /bin/bash
232
 
 
233
 
</screen></informalexample>
234
 
</para>
235
 
 
236
 
   <sect3>
237
 
   <title>Mount Partitions</title>
238
 
<para>
239
 
 
240
 
You need to create <filename>/etc/fstab</filename>.
241
 
 
242
 
<informalexample><screen>
243
 
 
244
 
 # editor /etc/fstab
245
 
 
246
 
</screen></informalexample>
247
 
 
248
 
</para><para>
249
 
 
250
 
Here is a sample you can modify to suit:
251
 
 
252
 
<informalexample><screen>
253
 
 
254
 
# /etc/fstab: static file system information.
255
 
#
256
 
# file system    mount point   type    options                  dump pass
257
 
/dev/XXX         /             ext2    defaults                 0    0
258
 
/dev/XXX         /boot         ext2    ro,nosuid,nodev          0    2
259
 
 
260
 
/dev/XXX         none          swap    sw                       0    0
261
 
proc             /proc         proc    defaults                 0    0
262
 
 
263
 
/dev/fd0         /mnt/floppy   auto    noauto,rw,sync,user,exec 0    0
264
 
/dev/cdrom       /mnt/cdrom    iso9660 noauto,ro,user,exec      0    0
265
 
 
266
 
/dev/XXX         /tmp          ext2    rw,nosuid,nodev          0    2
267
 
/dev/XXX         /var          ext2    rw,nosuid,nodev          0    2
268
 
/dev/XXX         /usr          ext2    rw,nodev                 0    2
269
 
/dev/XXX         /home         ext2    rw,nosuid,nodev          0    2
270
 
 
271
 
</screen></informalexample>
272
 
 
273
 
</para><para>
274
 
 
275
 
Use <userinput>mount -a</userinput> to mount all the file systems you
276
 
have specified in your <filename>/etc/fstab</filename>, or to mount
277
 
file systems individually use:
278
 
 
279
 
<informalexample><screen>
280
 
 
281
 
 # mount /path  # e.g.:  mount /usr
282
 
 
283
 
</screen></informalexample>
284
 
 
285
 
</para><para>
286
 
 
287
 
You can mount the proc file system multiple times and to arbitrary
288
 
locations, though /proc is customary. If you didn't use
289
 
<userinput>mount -a</userinput>, be sure to mount proc before
290
 
continuing:
291
 
 
292
 
<informalexample><screen>
293
 
 
294
 
 # mount -t proc proc /proc
295
 
 
296
 
</screen></informalexample>
297
 
 
298
 
</para>
299
 
 
300
 
<para>
301
 
A RedHat user reports that on his system, this should be 
302
 
 
303
 
<informalexample><screen>
304
 
 
305
 
 # mount -t none proc /proc
306
 
 
307
 
</screen></informalexample>
308
 
</para>
309
 
   </sect3>
310
 
 
311
 
   <sect3>
312
 
   <title>Configure Keyboard</title>
313
 
 
314
 
<para>
315
 
 
316
 
To configure your keyboard:
317
 
 
318
 
<informalexample><screen>
319
 
 
320
 
 # dpkg-reconfigure console-data
321
 
 
322
 
</screen></informalexample>
323
 
 
324
 
</para>
325
 
   </sect3>
326
 
 
327
 
   <sect3>
328
 
   <title>Configure Networking</title>
329
 
<para>
330
 
 
331
 
To configure networking, edit
332
 
<filename>/etc/network/interfaces</filename>,
333
 
<filename>/etc/resolv.conf</filename>, and
334
 
<filename>/etc/hostname</filename>.
335
 
 
336
 
<informalexample><screen>
337
 
 
338
 
 # editor /etc/network/interfaces 
339
 
 
340
 
</screen></informalexample>
341
 
 
342
 
</para><para>
343
 
 
344
 
Here are some simple examples from
345
 
<filename>/usr/share/doc/ifupdown/examples</filename>:
346
 
 
347
 
<informalexample><screen>
348
 
######################################################################
349
 
# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
350
 
# See the interfaces(5) manpage for information on what options are 
351
 
# available.
352
 
######################################################################
353
 
 
354
 
# We always want the loopback interface.
355
 
#
356
 
auto lo
357
 
iface lo inet loopback
358
 
 
359
 
# To use dhcp:
360
 
#
361
 
# auto eth0
362
 
# iface eth0 inet dhcp
363
 
 
364
 
# An example static IP setup: (broadcast and gateway are optional)
365
 
#
366
 
# auto eth0
367
 
# iface eth0 inet static
368
 
#     address 192.168.0.42
369
 
#     network 192.168.0.0
370
 
#     netmask 255.255.255.0
371
 
#     broadcast 192.168.0.255
372
 
#     gateway 192.168.0.1
373
 
</screen></informalexample>
374
 
 
375
 
</para><para>
376
 
 
377
 
Enter your nameserver(s) and search directives in
378
 
<filename>/etc/resolv.conf</filename>:
379
 
 
380
 
<informalexample><screen>
381
 
 
382
 
 # editor /etc/resolv.conf
383
 
 
384
 
</screen></informalexample>
385
 
 
386
 
</para><para>
387
 
 
388
 
A simple <filename>/etc/resolv.conf</filename>:
389
 
 
390
 
<informalexample><screen>
391
 
 
392
 
# search hqdom.local\000
393
 
# nameserver 10.1.1.36
394
 
# nameserver 192.168.9.100
395
 
 
396
 
</screen></informalexample>
397
 
 
398
 
</para><para>
399
 
 
400
 
Enter your system's host name (2 to 63 characters):
401
 
 
402
 
<informalexample><screen>
403
 
 
404
 
 # echo DebianHostName &#62; /etc/hostname
405
 
 
406
 
</screen></informalexample>
407
 
 
408
 
</para><para>
409
 
 
410
 
If you have multiple network cards, you should arrange the names of
411
 
driver modules in the <filename>/etc/modules</filename> file into the
412
 
desired order. Then during boot, each card will be associated with the
413
 
interface name (eth0, eth1, etc.) that you expect.
414
 
 
415
 
</para>
416
 
   </sect3>
417
 
 
418
 
   <sect3>
419
 
   <title>Configure Timezone, Users, and APT</title>
420
 
 
421
 
<para>
422
 
 
423
 
Set your timezone, add a normal user, and choose your <command>apt</command>
424
 
sources by running
425
 
 
426
 
<informalexample><screen>
427
 
 
428
 
 # /usr/sbin/base-config
429
 
 
430
 
</screen></informalexample>
431
 
</para>
432
 
   </sect3>
433
 
 
434
 
   <sect3>
435
 
   <title>Configure Locales</title>
436
 
<para>
437
 
 
438
 
To configure your locale settings to use a language other than
439
 
English, install the locales support package and configure it:
440
 
 
441
 
<informalexample><screen>
442
 
 
443
 
 # apt-get install locales
444
 
 # dpkg-reconfigure locales
445
 
 
446
 
</screen></informalexample>
447
 
 
448
 
NOTE: Apt must be configured before, ie. during the base-config phase.
449
 
Before using locales with character sets other than ASCII or latin1,
450
 
please consult the appropriate localisation HOWTO.
451
 
 
452
 
</para>
453
 
   </sect3>
454
 
  </sect2>
455
 
 
456
 
  <sect2>
457
 
  <title>Install a Kernel</title>
458
 
 
459
 
<para>
460
 
 
461
 
If you intend to boot this system, you probably want a Linux kernel
462
 
and a boot loader. Identify available pre-packaged kernels with
463
 
 
464
 
<informalexample><screen>
465
 
 
466
 
 # apt-cache search kernel-image
467
 
 
468
 
</screen></informalexample>
469
 
 
470
 
</para><para>
471
 
 
472
 
Then install your choice using its package name.
473
 
 
474
 
<informalexample><screen>
475
 
 
476
 
 # apt-get install kernel-image-2.X.X-arch-etc
477
 
 
478
 
</screen></informalexample>
479
 
 
480
 
</para>
481
 
  </sect2>
482
 
 
483
 
  <sect2>
484
 
<title>Set up the Boot Loader</title>
485
 
<para>
486
 
 
487
 
To make your &debian; system bootable, set up your boot loader to load
488
 
the installed kernel with your new root partition.
489
 
 
490
 
</para><para arch="x86">
491
 
 
492
 
Check <userinput>man lilo.conf</userinput> for instructions on setting
493
 
up the bootloader.  If you are keeping the system you used to install
494
 
Debian, just add an entry for the Debian install to your existing
495
 
lilo.conf.  You could also copy it to the new system and edit it
496
 
there. After you are done editing, call lilo (remember it will use
497
 
lilo.conf relative to the system you call it from).
498
 
 
499
 
</para><para arch="x86">
500
 
 
501
 
Here is a basic /etc/lilo.conf as an example:
502
 
 
503
 
<informalexample><screen>
504
 
 
505
 
boot=/dev/hda6
506
 
root=/dev/hda6
507
 
install=/boot/boot-menu.b
508
 
delay=20
509
 
lba32
510
 
image=/vmlinuz
511
 
label=Debian
512
 
 
513
 
</screen></informalexample>
514
 
 
515
 
</para><para arch="powerpc">
516
 
 
517
 
Check <userinput>man yaboot.conf</userinput> for instructions on
518
 
setting up the bootloader.  If you are keeping the system you used to
519
 
install Debian, just add an entry for the Debian install to your
520
 
existing yaboot.conf.  You could also copy it to the new system and
521
 
edit it there. After you are done editing, call ybin (remember it will
522
 
use yaboot.conf relative to the system you call it from).
523
 
 
524
 
</para><para arch="powerpc">
525
 
 
526
 
Here is a basic /etc/yaboot.conf as an example:
527
 
 
528
 
<informalexample><screen>
529
 
 
530
 
boot=/dev/hda2
531
 
device=hd:
532
 
partition=6
533
 
root=/dev/hda6
534
 
magicboot=/usr/lib/yaboot/ofboot
535
 
timeout=50
536
 
image=/vmlinux
537
 
label=Debian
538
 
 
539
 
</screen></informalexample>
540
 
 
541
 
On some machines, you may need to use <userinput>ide0:</userinput> 
542
 
instead of <userinput>hd:</userinput>. 
543
 
 
544
 
</para><para arch="not-x86;not-powerpc">
545
 
 
546
 
<phrase condition="FIXME">
547
 
FIXME: Someone may eventually supply an example for this architecture.
548
 
</phrase>
549
 
 
550
 
</para>
551
 
  </sect2>
552
 
 </sect1>