B.5. Debian Partitioning Programs

Several varieties of partitioning programs have been adapted by Debian developers to work on various types of hard disks and computer architectures. Following is a list of the program(s) applicable for your architecture.


Recommended partitioning tool in Debian. This Swiss army knife can also resize partitions, create filesystems and assign them to the mountpoints.


A simple-to-use, full-screen disk partitioner for the rest of us.

Note that cfdisk doesn't understand FreeBSD partitions at all, and, again, device names may differ as a result.

One of these programs will be run by default when you select Partition a Hard Disk. If the one which is run by default isn't the one you want, quit the partitioner, go to the shell (tty2) by pressing Alt and F2 keys together, and manually type in the name of the program you want to use (and arguments, if any). Then skip the Partition a Hard Disk step in debian-installer and continue to the next step.

If you will be working with more than 20 partitions on your ide disk, you will need to create devices for partitions 21 and beyond. The next step of initializing the partition will fail unless a proper device is present. As an example, here are commands you can use in tty2 or under Execute A Shell to add a device so the 21st partition can be initialized:

# cd /dev
# mknod hda21 b 3 21
# chgrp disk hda21
# chmod 660 hda21

Booting into the new system will fail unless proper devices are present on the target system. After installing the kernel and modules, execute:

# cd /target/dev
# mknod hda21 b 3 21
# chgrp disk hda21
# chmod 660 hda21

B.5.1. Partitioning for PA-RISC

PALO, the HPPA boot loader, requires a partition of type “F0” somewhere in the first 2GB. This is where the boot loader and an optional kernel and RAMdisk will be stored, so make it big enough for that — at least 4Mb (I like 8–16MB). An additional requirement of the firmware is that the Linux kernel must reside within the first 2GB of the disk. This is typically achieved by making the root ext2 partition fit entirely within the first 2GB of the disk. Alternatively you can create a small ext2 partition near the start of the disk and mount that on /boot, since that is the directory where the Linux kernel(s) will be stored. /boot needs to be big enough to hold whatever kernels you might wish load; 8–16MB is generally sufficient.