Debian Installation Checklist

After Googling and ogling a lot of documentation about installing Debian in a chroot environment, I decided to put together this quick checklist, mostly for my own purposes, so that I wouldn't have to search around so much the next time I install Debian. Feel free to use it if you wish.

Pre-installation steps

  1. Partition the hard drive as you wish and create filesystems of your choice on the partitions to use. Make sure to have at least a root directory and a swap partition.
  2. Set the system time and date, if necessary.

Main procedure

  1. Get and install debootstrap. The Debian package can be fetched from /debian/pool/main/d/debootstrap on your preferred Debian mirror, such as ftp://ftp.se.debian.org/.
  2. Run debootstrap to bootstrap the base system. Quick command:
    debootstrap --arch i386 etch /mnt/debian ftp://ftp.se.debian.org/debian
  3. Mount /proc in Debian's prefix.
  4. Chroot into the bootstrapped system.
  5. Set the UTC setting in /etc/default/rcS and set the timezone by either symlinking the correct tz file into /etc or by running tzconfig.
  6. Set up /etc/fstab.
  7. Add LANG="en_US.UTF-8" or similar to /etc/default/locale.
  8. Set up network information in /etc/hostname, /etc/hosts and /etc/network/interfaces. A rather standard configuration for the last would be as follows:
    auto lo eth0
    
    iface lo inet loopback
    iface eth0 inet dhcp
    debootstrap should have gotten /etc/resolv.conf right, but it is wise to check to be sure.
  9. Set up /etc/apt/sources.list. The following is a rather sane default configuration for a stable system:
    deb http://ftp.se.debian.org/debian etch main contrib
    deb-src http://ftp.se.debian.org/debian etch main contrib
    deb http://security.debian.org/ etch/updates main contrib
    deb-src http://security.debian.org/ etch/updates main contrib
    Remember to run apt-get update afterwards.
  10. Set the root password.
  11. Install the locales-all package.
  12. Install the console-data, unicode-data and kbd packages.
  13. Install a kernel, such as linux-image-2.6-686.
  14. Install and set up GRUB. Sample config:
    timeout 10
    default 0
    
    title Debian Etch
    	root (hd0,0)
    	kernel /boot/vmlinuz rw root=/dev/hda1
    	initrd /boot/initrd.img
    Note, in particular, that Debian's rc system requires the root filesystem to be mounted in read-write mode.
  15. You can now boot into your Debian system, if you wish.

Post-installation goodies

You may want to run tasksel to get some common packages (for example, the standard set).

Useful extra packages

Valid XHTML 1.1! Valid CSS! Support open standards! Aim for XHTML 1.1 compliance!
Author: Fredrik Tolf <fredrik@dolda2000.com>
Last changed: Wednesday, 26-Dec-2007 01:25:43 CET