Installation steps

Debian is a large and complex operating system. The possible installation scenarios are even more numerous than the platforms supported. The following basic steps would be most useful for the home user, who wishes to run Debian as a safe, secure, easy to use, and stable desktop operating system.

UEFI PC: Read before you continue

If you are running a newer computer, chances are your system uses (U)EFI firmware, rather than BIOS. BIOS was tried and tested, and everything worked fine, and while (U)EFI brings a lot of improvements, it also introduced more problems. Most of these issues come from bad or buggy vendor implementations, lack of testing, or probably even pressure from other operating system vendors to make it difficult, nay impossible to use anything else on the (U)EFI firmware. A lot of the bad/buggy (U)EFI implementations will work fine with Window$, probably not surprisingly, but nothing much else. This is definitely an (U)EFI issue, but Debian developers are trying their best to improve the experience and make Debian usable on any system.

One thing you must do in order to be able to run Debian, however, is turn off secure boot. This will happen in the (U)EFI setup menu. if you cannot see the option, try setting a BIOS password, fully turn off the system, turn it back on, and try again. This is necessary on systems that only enable turning off secure boot when a BIOS password is set. Currently, Debian cannot run in secure boot mode, although work is underway to add this functionality in the future.

If you want to read more about (U)EFI from a Debian perspective, or if you run into any problems with your installation, read this Debian Wiki article

Changing stuff

You will notice, in both installers, a button or text menu option that says Go Back. Clicking or selecting this will bring you to different screens, depending on where you are. If you are in a multi-part step (you'll see them marked with "Part 1", "Part 2", etc.), this might take you back to the previous or first step. Otherwise, it would present you with a screen where you can choose to go to any installation step. (There can be fewer options than pictured if you press it early on.)

Underneath the usual steps, you will find some advanced options here, such as Change debconf priority, Save debug logs, or Execute a shell. Needless to say, you only really want to use these, if you need them, and know what you are doing. For a typical installation, these will not be needed. Still, it's worth taking a note that these are here, as some more advanced tutorials, or even help you receive on forums, might call for e.g. dropping into a shell, or want you to provide logs, in which case you'll want to know where to start with these.

The installation steps

For more detailed instructions, different scenarios, and anything not discussed here, you can always refer to the Official Debian Manual, which you can find here for 64-bit architectures, or here for older, 32-bit systems.

First, you need to select a language. Debian is translated to many languages. The language you choose here will be both the language for the installer and the default language of the installed system. Choose yours, or one you are most familiar with, and click Continue.

Choose language

Next, you will need to select your location. This is necessary to set up the proper time zone, currency and number format, and similar locale based stuff.

A shortlist of possible locations will be presented initially, based on the language you've specified. If you cannot find where you really are, click other, and select your location from a more complete list. When you have selected your location, click Continue.

Choose location

Based on your location and language, the most likely keyboard layout will be already pre-selected, but if you have/prefer a different layout, now is the time to choose one. Once done, click Continue.

Choose keymap

The Debian installer only includes free software, but often enough physical components of your computer, (mostly wireless cards) need drivers that are non-free (in a software freedom sense). Debian does not include such firmware by default but allows you to use them when needed. This, of course, makes the FSF frown, but for real people, like real users etc., this can be the only available option. Not everybody can afford to be a fanatic, especially when you need your PC for work.

When one or more non-free components are missing, you will be greeted with a screen similar to this:

Firmware needed

Yes, you see that right, in 2017 Debian still allows you to load firmware from a floppy disk, even though most machines are no longer equipped with those drives. Fortunately, you can also just use a USB stick. To do that, you can download a firmware archive from here (these are for the "stable" version), unpack it to a USB, into a folder called firmware, attach the stick, and click Continue. The stick should mount. If it does not, you can try restarting the installer with the additional USB attached. If that still does not work, you might need to manually mount it, which can be cumbersome. In that case, you might be better off with downloading another installation image, one that actually includes the non-free elements from here, and start over with the new installer.

Although non-free firmware can be unavoidable, you should only use these images, or the firmware files, if you really need them. Even so, you'll risk the eternal wrath of Richard Stallman and the FSF.

These screens will only appear in the installer if you have a wireless card or multiple network cards.

If you are installing Debian on a Laptop, or you have a wireless card installed in your PC, you might want to connect to a WiFi network. If you have both a wireless and an ethernet card available, you will be asked to choose between them. If you want to go with WiFi, select the wireless adapter, and click Continue, or if you have an ethernet cable attached, and want to configure WiFi later, select the ethernet controller, click Continue, and skip to Configure the network - Part 2

If you have more than one ethernet adapter, you might still see the same screen. In that case, choose the one the cable is plugged into.

Choose your network adapter

If you have selected the wireless card, you can choose your home network on the next screen, or choose to manually enter the SSID of the network you want to connect to (e.g. if you know its ID, but it's not broadcasted). Select your preferred option, and click Continue.

Select your wireless network

In case you have opted to manually enter the SSID, you can do it in this step. (If you have selected a network in the previous step, this screen will be skipped). Enter the SSID, and click Continue.

Specify SSID

Now you'll need to tell the installer the type of security the specified network uses. If you don't know, just ask someone who does. Alternatively, just select one, and if the connection fails, you'll have a chance to try again with the other.

Specify network security type

Finally, enter the pass-phrase for the network, or follow any other on-screen instructions (such as pressing a button on the router, sacrificing a goat, etc.)

Connect...

If everything went right, the installation will continue with the steps below. If not, you might get an error message. In that case, double-check your settings, and try again. If nothing helps, just plug in a cable, and go on with a wired connection, it's always a good fail-safe option, and it will be a lot easier to set up WiFi from an installed system.

...or fail

Once the additional components have finished loading, you will have to give your installation a hostname, so that it can be identified on the network. It should be a single word (no spaces, although dashes and numbers are allowed). Once done, click Continue

Specify hostname

After the hostname, you will be asked to specify the domain name. If you do not have one, don't know the domain name, or (as is most likely) are on a home network with no local domain name system, you can safely leave this field empty, and, click Continue

Specify domain

In Debian, you will need to give a separate root password. Best use a strong one. But what makes a strong password strong?

IT departments might have made us all believe that in order to be strong, passwords need to be complex. XKCD might have made us believe that in order to be strong, passwords need to be long.

Truth is, both aspects are equally important. Long passwords might increase password entropy, making them more difficult to crack, while complex ones make dictionary-based attacks less successful.

For a more detailed discussion about strong passwords, read this Infosec Institute article

Set an adequately strong root password and click Continue. Set up root password

Root access should not happen with an empty password. If you leave the root password empty, the sudo command will be enabled for the user, and the root account will be disabled. Some prefer this set-up (and this is also default behaviour in Ubuntu and its derivatives.). The standard Debian way is to go with a separate root account with a strong separate password, which should only be used for specific purposes, and possibly be less likely to hack. Choose wisely. If in doubt, go with the separate root password.

You will also need a regular user to log in to the system. First, you need to give the user's full name. This can be anything, but giving your real name will make it easier to set up signatures in documents etc.

Set user full name

The username is different from the user's real name. It is tIthe user's identifier on the system, which you type/select to log in to Debian. The installer will automatically create a username based on your first name, but you can change it to anything. Well, almost anything.

Usernames can only contain lowe-case alphanumeric characters (a-z and 0-9). Usernames must start with a lowercase letter.

Specify a username, and click Continue.

Set login name

In some systems usernames are more flexible, allowing uppercase letters (A-Z), dashes (-), underscores (_) and dots (.), much like email addresses. Debian has a more strict policy, which might seem restrictive, but in the long run, simple usernames allow for better compatibility.

Just like on any other system, users will need a strong password so that they can keep their stuff safe. Give it a strong one, but one that you will remember, and Click Continue.

Set user password

Selecting the Show Password in Clear radio button will show the password in clear text. It's great when you have already forgotten the password you have typed in only 3 seconds ago. You will have to do this separately for both password fields.

If your computer implements (U)EFI, but there is another operating system, such as Window$ installed on it on legacy (BIOS) mode, the Debian installer will get a little confused. It has started in UEFI mod, yet if it proceeds, all will be lost. The hope, the other OSes, the hope to boot the other OSes, everything.

You can at this point decide whether to force an (U)EFI installation, or proceed in legacy moe. If you want to preserve the existing operating system, and want to be able to boot it later, select No, and click Continue

Force UEFI prompt

This screen will only appear in the event described above, that is, having a legacy mode OS installed on an (U)EFI system before attempting to install Debian. Normally this screen would be skipped.

When it comes to disk partitioning, the Debian installer offers true flexibility, and will even hold your hand if you want it to. You can have one large partition that will hold everything (the best option for new users), and would also make it possible to create various mount points on different partitions, set up an LVM, etc. If you have read through the long and boring chapters about disk partitioning, you might already have a faint idea what these mean, but for now, we are just going to assume that you'll want to go with the simplest option.

The best way to learn about partitioning is to experiment with it in a Virtual Machine so that your data remains safe, and you can make all the inexperienced mistakes that would lead to serious data loss, without actually risking anything.

There are different "guided" options available, or you can go full manual. Of the guided options, the first two will be interesting:

  • Choose the first option, Guided - use the largest continuous free space, if you want to install Debian and keep your old operating system, like e.g. M$ Windows.
  • Choose the second option, Guided - use entire disk only if you want to delete everything on your computer and do a fresh Debian install.

Choosing the second (or third, or fourth) option will erase all your data. You will not be able to restore your files. Choose the first option if you want to make sure your old system and/or files will still there after installing Debian.

Naturally, you will need enough free space on the disk (unallocated, "unpartitioned"), if you want to go with the first option. A previous chapter Installing Debian Alongside Another System can guide you through the process of making sure there is enough free space on the disk.

If you are sure you know what you are doing, select your preferred option, and click Continue.

Choose partitioning method

If there is no unallocated free space on your hard-drive, the first option will simply not be there. Some other systems might offer to resize one of the existing partitions for you, but in Debian, you have to prepare it beforehand.

Having chosen the most sensible guided option, you can now decide how the disk should be prepared. The installer offers three ways to automatically partition your disk: The first one, All files in one partition (recommended for new users) will make the most sense for home computers. The other two options are a bit more specialised, and if you have such needs, and know how these things work and why they make sense, you'd probably be better off partitioning in manual mode anyway.

Select the first option for now, and click Continue

Choose partitions

Putting your /home directory to a separate partition is a common practice. It has the advantage of separating user and system data, and is quite useful if you want to use e.g. a different file-system for your home directory, or plan to share the same home folder between systems, etc. For the average user, it might have more disadvantages though, such as when you run out of space on one of the partitions, while having plenty of unused space on the other.

Nothing has been changed on your disk so far. You can still go back and modify the set-up by clicking Undo changes to partitions or even cancel the whole process. It will be like nothing ever happened.

By now the installer will have created a new partition setup for you (or probably you did, if you went the manual way), and is offering you the new setup. When you accept it by selecting Finish partitioning and write changes to disk, then clicking Continue, the changes will be written to disk, irreversibly.

Write changes to disk

You can see on the example screenshot above that even though we've selected "put all files into one partition", the installer created two separate partitions (besides the two NTFS partitions that hold the dual booted Window$ system). This is because the so-called "swap file", which is similar to the page file (virtual memory) in Window$, will need its own separate partition, on account of using a different filesystem.

You can also see the installer also for many advanced options, like setting up software RAID (nothing to do with piracy, don't worry), LVM, encryption, or iSCSI (which is not the Islamic Supreme Council of Iraq, it's one letter longer. iSCSI means Internet Small Computer System Interface).

If you have a newer computer with (U)EFI, you might see more partitions, EFI having some of its own. You should not worry too much about that either, everything's the same as in the previous step, you can still accept and continue.

Write changes to disk EFI

The Debian installer is, or rather its developers are, acutely aware of the dangers of a rushed partitioning setup, that being data loss. The following screen will ask you to confirm everything once again. You actually have to manually select the radio button saying Yes, and click Continue once again.

Last chance to turn around

As you have already seen, the Debian installer might come on more than one medium, the total set consisting of several DVDs. In this step, you have the option to scan other disks or images, if you have them, by selecting Yes, and inserting them as prompted, or, if you go the sensible route, just select No, and click Continue.

Additional media

To make up for the missing installation media, you can use a network mirror instead, so that the package manager can download any additional and possibly missing packages from the internet. Also great for getting the latest packages, if you are installing from an older medium. Select Yes and click Continue.

Use a network mirror

Debian is hosted on over 300 mirrors worldwide. The majority of these are not owned by Debian but are offered by various companies and institutions (and even individuals) by way of donation. All hail the collaborative economy of the world of FOSS software. We could all learn a lot from these examples (please call your MP, or Congressman and talk to them about these things, thanks.)

To make it easier to find the closest (and therefore probably best and fastetsest) mirror, first select your approximate geographical location (again) and click Continue.

You have the option to use a mirror that is not hosted where you are, that is why you have to select this again.

Choose a network mirror location

You will then be offered a list of mirrors (or one mirror at least). If there is a choice, it's always safe to go for the most official looking one (look for the words "ftp" and "debian" in the domain name), although if you know another mirror to be safer/better/faster/prettier, do use it by any means. Select one then click Continue.

Choose a network mirror

If you are behind a proxy server, you can provide information about it here. If you are not, leave it blank. If you are unsure you are probably not. Best ask someone, who might know, but chances are you will not have an unknown proxy server at home. Click Continue when done.

Set up proxy

A small way to help the development of Debian is to participate in the package usage survey. Unlike proprietary operating systems, Debian makes sending user statistics optional and fully anonymous. You can rest assured that only a minimal amount of data will be collected, which would not make it possible to identify you in any way. Debian will not use your data for anything other than it says it would, to know what packages are used most. This data will then be used to determine which packages should go on which CD/DVD. Remember how Debian comes on so many disks? In order to make this effective so that most users would only need the first or the first few at most, the most installed packages would usually be placed in these ones. In order to know this, Debian devs need to know what those packages are, and this information is collected via this survey, automagicaly, and anonymously.

Popularity contest

It might look scary when you are presented with the question: "Can we collect data from your computer"? Consider this, however: large companies Microsoft, Apple, Google, or even Facebook do it all the time, and they don't really bother telling you much about it. Is having your data collected without you knowing it not a lot scarier than this? Sure, it's probably hidden in a ton of legal text in some EULA, or other mandatory agreement that you have no choice but to accept, otherwise you cannot use their product. Debian is perfectly transparent about this. They ask you first, and you don't have to opt-in. This is how it should be done.

This screen allows you to install common software bundles, that will prepare your system for a given task. For a desktop computer, you want to have Debian desktop environment and a choice of one or more DEs as a minimum. The former will provide programs of common functionality (like office software etc.), while the latter will make your system look and behave a specific way. If you have or plan to later attach a printer, you might also want the Print server option checked. [S]tandard system utilities is also a good idea to keep enabled. When you are installing on a laptop, you will also see a Laptop option. This will install useful stuff like touchpad, wireless and Bluetooth support etc. The point is to only have as much as you need, so you can avoid unnecessary bloat in your system.

If you do not select a Desktop Environment, but leave Debian desktop environment selected, the default GNOME Desktop will be installed. if you un-select Debian desktop environment, and do not select anything, no desktop will be installed.

Choose what you need and click Continue.

Software selection

Your decision here is not really final. Once you have installed the system, you can always just run the tasksel program as root from a terminal, and you can install even more stuff if you like. To learn more about the options you have with tasksel, refer to the official Debian documentation.

Display managers are an ancient way to manage X-Servers (the thing that provides a graphical interface on UNIX like systems). Once Wayland takes over both the way and the land(scape), this might be a thing of the past, but as of now, you might have multiple choices of display managers (or DMs). Usually, when you install a Desktop Environment, it will install its preferred DM, so you don't need to worry. If you happen to install multiple DEs, however, you might end up with each installing a different DM. Not to worry, these things are compatible with each other, the preferences are really just preferences. If you have multiple DMs, just choose one. The only difference you will really see is the style of login screen, and if you don't like it, you can always change it later.

If you have only installed one Desktop Environment, you will not see this screen.

Choose one, and click Continue.

Choose Display manager

On older computers that don't have (U)EFI, but use a BIOS instead, you will need to install a boot loader (GRUB). In this step, you can decide if you want to install it into the master boot record (MBR) of the HDD. Unless you have a good reason to do otherwise, choose Yes and click Continue. If you do have a reason to say No here, you must know what you're doing and probably need no further guidance.

On computers with (U)EFI, you will not see this screen.

Make your choice and Continue.

Insrtall GRUB in mbr

Next, you'll need to decide onto which HDD to put GRUB. If you have a single hard drive, this should be easy. If you have more than one, choose the one your PC will boot from. This is usually one with the lowest letter in place of x in /dev/sdx, e.g. if you have /dev/sda and /dev/sdb, choose /dev/sda unless you know your PC will boot from the other, in which case, choose that one.

On computers with (U)EFI, you will not see this screen.

Choose the appropriate drive and click Continue.

Where does GRUB go?

That's it, you're done. If you see this screen, your Debian system is successfully installed. Yay! It wasn't so horrible, was it? OK, it probably was, but you can be sure it was worth it. Why so sure? Because I said so. And you would not dare argue with me, would you? You see, told ya...

All you have left to do is remove the installation medium, be it a CD, DVD or a USB pendrive, and reboot your computer by, you guessed it, clicking Continue.

Do click Continue and don't just reset the PC. The installer wants to shut down correctly. It will also be better for your motherboard.

Done!

First, you need to select a language. Debian is translated into many languages. The language you choose here will be both the language for the installer and the default language of the installed system. Navigate to yours with the Up and Down arrow keys, (or to the one you are most familiar with), and press Enter.

Choose language

Next, you will need to select your location. This is necessary to set up the proper time zone, currency and number format, and similar locale based stuff.

A shortlist of possible locations will be presented initially, based on the language you've specified. If you cannot find where you really are, select other, and choose your location from a more complete list. When you have selected your location by navigating to it with the Up and Down arrow keys, press Enter.

Choose location

Based on your location and language, the most likely keyboard layout will be already pre-selected, but if you have/prefer a different layout, now is the time to choose one by navigating to it with the Up and Down arrow keys. Once done, press Enter.

Choose keymap

The Debian installer only includes free software, but often enough physical components of your computer, (mostly wireless cards) need drivers that are non-free (in a software freedom sense). Debian does not include such firmware by default but allows you to use them when needed. This, of course, makes the FSF frown, but for real people, like real users etc., this can be the only available option. Not everybody can afford to be a fanatic, especially when you need your PC for work.

When one or more non-free components are missing, you will be greeted with a screen, for which there will be no screenshot included for now. (This is because in the CLI installer there is no option to take screenshots when installing on a physical computer, and the message could not be simulated in a virtual machine).

Anyway, the message would go something like:

Some of your hardware needs non-free files to operate. The firmware can be loaded from removable media, such as a USB stick or floppy.

The missing firmware files are: {list of the missing firmware files}

If you have such media available now, insert it, and continue. Load missing firmware from removable media?

Yes, No etc...

Yes, you see that right, in 2017 Debian still allows you to load firmware from a floppy disk, even though most machines are no longer equipped with those drives. Fortunately, you can also just use a USB stick. To do that, you can download a firmware archive from here (these are for the "stable" version), unpack it to a USB, into a folder called firmware, attach the stick, and click Continue. The stick should mount. If it does not, you can try restarting the installer with the additional USB attached. If that still does not work, you might need to manually mount it, which can be cumbersome. In that case, you might be better off with downloading another installation image, one that actually includes the non-free elements from here; then start over with the new installer.

Although non-free firmware can be unavoidable, you should only use these images, or the firmware files, if you really need them. Even so, you'll risk the eternal wrath of Richard Stallman and the FSF.

These screens will only appear in the installer if you have a wireless card or multiple network cards.

If you are installing Debian on a Laptop, or you have a wireless card installed in your PC, you might want to connect to a WiFi network. If you have both a wireless and an ethernet card available, you will be asked to choose between them. If you want to go with WiFi, select the wireless adapter. Choose one by navigating to it with the Up and Down arrow keys, and press Enter, or if you have an ethernet cable attached, and want to configure WiFi later, select the ethernet controller, press Enter, and skip to Configure the network - Part 2

If you are installing Debian on a Laptop, or you have a wireless card installed in your PC, you might want to connect to a WiFi network. If you have both a wireless and an ethernet card available, you will be asked to choose between them. If you want to go with WiFi, select the wireless adapter.

Choose your network adapter

If you have selected the wireless card, you can choose your home network on the next screen, or choose to manually enter the SSID of the network you want to connect to (e.g. if you know its ID, but it's not broadcasted). Select your preferred option by navigating to it with the Up and Down arrow keys, and press Enter.

Select your wireless network

In case you have opted to manually enter the SSID, you can do it in this step. (If you have selected a network in the previous step, this screen will be skipped). Enter the SSID, and press Enter.

Specify SSID

Now you'll need to tell the installer the type of security the specified network uses. If you don't know, just ask someone who does. Alternatively, just select one by navigating to it with the Up and Down arrow keys, and pressing Enter, and if the connection fails, you'll have a chance to try again with the other.

Specify network security type

Finally, enter the pass-phrase for the network, or follow any other on-screen instructions (such as pressing a button on the router, sacrificing a goat, etc.) and press Enter.

Connect...

If everything went right, the installation will continue with the steps below. If not, you might get an error message. In that case, double-check your settings, and try again. If nothing helps, just plug in a cable, and go on with a wired connection, it's always a good fail-safe option, and it will be a lot easier to set up WiFi from an installed system.

...or fail

Once the additional components have finished loading, you will have to give your installation a hostname, so that it can be identified on the network. It should be a single word (no spaces, although dashes and numbers are allowed). Once done, press Enter.

Specify hostname

After the hostname, you will be asked to specify the domain name. If you do not have one, don't know the domain name, or (as is most likely) are on a home network with no local domain name system, you can safely leave this field empty, and press Enter.

Specify domain

In Debian, you will need to give a separate root password. Best use a strong one. But what makes a strong password strong?

IT departments might have made us all believe that in order to be strong, passwords need to be complex. XKCD might have made us believe that in order to be strong, passwords need to be long.

Truth is, both aspects are equally important. Long passwords might increase password entropy, making them more difficult to crack, while complex ones make dictionary-based attacks less successful.

For a more detailed discussion about strong passwords, read this Infosec Institute article

Set an adequately strong root password and press Enter. Set up root password

On the next screen, you will be asked to verify your password. Type it again, and press Enter.

Set up root password

Root access should not happen with an empty password. If you leave the root password empty, the sudo command will be enabled for the user, and the root account will be disabled. Some prefer this set-up (and this is also default behaviour in Ubuntu and its derivatives.). The standard Debian way is to go with a separate root account with a strong separate password, which should only be used for specific purposes, and possibly be less likely to hack. Choose wisely. If in doubt, go with the separate root password.

You will also need a regular user to log in to the system. First, you need to give the user's full name. This can be anything, but giving your real name will make it easier to set up signatures in documents etc. Type your name and press Enter

Set user full name

The username is different from the user's real name. It is the user's identifier on the system, which you type/select to log in to Debian. The installer will automatically create a username based on your first name, but you can change it to anything. Well, almost anything.

Usernames can only contain lowe-case alphanumeric characters (a-z and 0-9). Usernames must start with a lowercase letter.

Specify a username, and press Enter.

Set login name

In some systems usernames are more flexible, allowing uppercase letters (A-Z), dashes (-), underscores (_) and dots (.), much like email addresses. Debian has a more strict policy, which might seem restrictive, but in the long run, simple usernames allow for better compatibility.

Just like on any other system, users will need a strong password so that they can keep their stuff safe. Give it a strong one, but one that you will remember, and press Enter

Set user password

On the next screen, you will be asked to verify your user password. Type it again and press Enter.

Set user password

Selecting Show Password in Clear by navigating to it with the Tab key and pressing Space, will show the password in clear text. It's great when you have already forgotten the password you have typed in only 3 seconds ago.

If your computer implements (U)EFI, but there is another operating system, such as Window$ installed on it on legacy (BIOS) mode, the Debian installer will get a little confused. It has started in UEFI mod, yet if it proceeds, all will be lost. The hope, the other OSes, the hope to boot the other OSes, everything.

You can at this point decide whether to force an (U)EFI installation, or proceed in legacy moe. If you want to preserve the existing operating system, and want to be able to boot it later, make sure No is the actively highlighted option (it should normally be, but if not, navigate to it with the Tab key), and press Enter.

Force UEFI prompt

This screen will only appear in the event described above, that is, having a legacy mode OS installed on an (U)EFI system before attempting to install Debian. Normally this screen would be skipped.

When it comes to disk partitioning, the Debian installer offers true flexibility, and will even hold your hand if you want it to. You can have one large partition that will hold everything (the best option for new users), and would also make it possible to create various mount points on different partitions, set up an LVM, etc. If you have read through the long and boring chapters about disk partitioning, you might already have a faint idea what these mean, but for now, we are just going to assume that you'll want to go with the simplest option.

The best way to learn about partitioning is to experiment with it in a Virtual Machine so that your data remains safe, and you can make all the inexperienced mistakes that would lead to serious data loss, without actually risking anything.

There are different "guided" options available, or you can go full manual. Of the guided options, the first two will be interesting.:

  • Choose the first option, Guided - use the largest continuous free space, if you want to install Debian and keep your old operating system, like e.g. M$ Windows.
  • Choose the second option, Guided - use entire disk only if you want to delete everything on your computer and do a fresh Debian install.

Choosing the second (or third, or fourth) option will erase all your data. You will not be able to restore your files. Choose the first option if you want to make sure your old system and/or files will still there after installing Debian.

Naturally, you will need enough free space on the disk (unallocated, "unpartitioned"), if you want to go with the first option. A previous chapter Installing Debian Alongside Another System can guide you through the process of making sure there is enough free space on the disk.

If you are sure you know what you are doing, select your preferred option by navigating to it with the Up and Down arrow keys, and press Enter.

Choose partitioning method

If there is no unallocated free space on your hard-drive, the first option will simply not be there. Some other systems might offer to resize one of the existing partitions for you, but in Debian, you have to prepare it beforehand.

Having chosen the most sensible guided option, you can now decide how the disk should be prepared. The installer offers three ways to automatically partition your disk: The first one, All files in one partition (recommended for new users) will make the most sense for home computers. The other two options are a bit more specialised, and if you have such needs, and know how these things work and why they make sense, you'd probably be better off partitioning in manual mode anyway.

Select the first option for now by navigating to it with the Up and Down arrow keys, and press Enter

Choose partitions

Putting your /home directory to a separate partition is a common practice. It has the advantage of separating user and system data, and is quite useful if you want to use e.g. a different file-system for your home directory, or plan to share the same home folder between systems, etc. For the average user, it might have more disadvantages though, such as when you run out of space on one of the partitions, while having plenty of unused space on the other.

Nothing has been changed on your disk so far. You can still go back and modify the set-up by clicking Undo changes to partitions or even cancel the whole process. It will be like nothing ever happened.

By now the installer will have created a new partition setup for you (or probably you did, if you went the manual way), and is offering you the new setup. When you accept it by navigating to Finish partitioning and write changes to disk with the Up and Down arrow keys, then pressing Enter, the changes will be written to disk, irreversibly.

Write changes to disk

You can see on the example screenshot above that even though we've selected "put all files into one partition", the installer created two separate partitions (besides the two NTFS partitions that hold the dual booted Window$ system). This is because the so-called "swap file", which is similar to the page file (virtual memory) in Window$, will need its own separate partition, on account of using a different filesystem.

You can also see the installer also for many advanced options, like setting up software RAID (nothing to do with piracy, don't worry), LVM, encryption, or iSCSI (which is not the Islamic Supreme Council of Iraq, it's one letter longer. iSCSI means Internet Small Computer System Interface).

If you have a newer computer with (U)EFI, you might see more partitions, EFI having some of its own. You should not worry too much about that either, everything's the same as in the previous step, you can still accept and continue by pressing Enter

Write changes to disk EFI

The Debian installer is, or rather its developers are, acutely aware of the dangers of a rushed partitioning setup, that being data loss. The following screen will ask you to confirm everything once again. You actually have to manually select Yes with the Tab key, and press Enter.

Last chance to turn around

On an EFI system, you will probably be presented with a screen asking you to select an encoding to use on the console. This happens only on the CLI installer and only on an EFI setup. There are no explanations given. Just choose your encoding by navigating to it with the Up and Down arrow keys, or leave it on the default and press Enter

You will not see this screen on a non-(U)EFI system, or in the graphical installer.

Console encoding

If you selected the standard UTF-8 option in the previous screen, you might be asked to narrow down the character set most likely to be used. This should be quite obvious, and the option Guess optimal character set might be able to do it for you, based on your language, locale and keyboard set-up. Select one by navigating to it with the Up and Down arrow keys, or leave it on the default option, and press Enter

You will not see this screen on a non-(U)EFI system, or in the graphical installer.

Console character set

As you have already seen, the Debian installer might come on more than one medium, the total set consisting of several DVDs. In this step, you have the option to scan other disks or images, if you have them, by selecting Yes with the Tab key, and inserting them as prompted, or, if you go the sensible route, just select No, and press Enter.

Additional media

To make up for the missing installation media, you can use a network mirror instead, so that the package manager can download any additional and possibly missing packages from the internet. Also great for getting the latest packages, if you are installing from an older medium. Select Yes with the Tab key and press Enter.

Use a network mirror

Debian is hosted on over 300 mirrors worldwide. The majority of these are not owned by Debian but are offered by various companies and institutions (and even individuals) by way of donation. All hail the collaborative economy of the world of FOSS software. We could all learn a lot from these examples (please call your MP, or Congressman and talk to them about these things, thanks.)

To make it easier to find the closest (and therefore probably best and fastetsest) mirror, first select your approximate geographical location (again) with the Up and Down arrow keys and press Enter.

You have the option to use a mirror that is not hosted where you are, that is why you have to select this again.

Choose a network mirror location

You will then be offered a list of mirrors (or one mirror at least). If there is a choice, it's always safe to go for the most official looking one (look for the words "ftp" and "debian" in the domain name), although if you know another mirror to be safer/better/faster/prettier, do use it by any means. Select one by navigating to it with the Up and Down arrow keys, and press Enter.

Choose a network mirror

If you are behind a proxy server, you can provide information about it here. If you are not, leave it blank. If you are unsure you are probably not. Best ask someone, who might know, but chances are you will not have an unknown proxy server at home. Press Enter when done.

Set up proxy

A small way to help the development of Debian is to participate in the package usage survey. Unlike proprietary operating systems, Debian makes sending user statistics optional and fully anonymous. You can rest assured that only a minimal amount of data will be collected, which would not make it possible to identify you in any way. Debian will not use your data for anything other than it says it would, to know what packages are used most. This data will then be used to determine which packages should go on which CD/DVD. Remember how Debian comes on so many disks? In order to make this effective so that most users would only need the first or the first few at most, the most installed packages would usually be placed in these ones. In order to know this, Debian devs need to know what those packages are, and this information is collected via this survey, automagicaly, and anonymously.

Popularity contest

It might look scary when you are presented with the question: "Can we collect data from your computer"? Consider this, however: large companies, like Microsoft, Apple, Google or even Facebook do it all the time, and they don't really bother telling you much about it. Is having your data collected without you knowing it not a lot scarier than this? Sure, it's probably hidden in a ton of legal text in some EULA, or other mandatory agreement that you have no choice but to accept, otherwise you cannot use their product. Debian is perfectly transparent about this. They ask you first, and you don't have to opt in. This is how it should be done.

This screen allows you to install common software bundles, that will prepare your system for a given task. For a desktop computer, you want to have Debian desktop environment and a choice of one or more DEs as a minimum. The former will provide programs of common functionality (like office software etc.), while the latter will make your system look and behave a specific way. If you have or plan to later attach a printer, you might also want the Print server option checked. [S]tandard system utilities is also a good idea to keep enabled. When you are installing on a laptop, you will also see a Laptop option. This will install useful stuff like touchpad, wireless and Bluetooth support etc. The point is to only have as much as you need, so you can avoid unnecessary bloat in your system.

If you do not select a Desktop Environment, but leave Debian desktop environment selected, the default GNOME Desktop will be installed. if you un-select Debian desktop environment and do not select anything, no desktop will be installed.

To choose what you need, navigate to it with the Up and Down arrow keys, select or un-select it by pressing Space. When finished, press Enter to continue.

Software selection

Your decision here is not really final. Once you have installed the system, you can always just run the tasksel program as root from a terminal, and you can install even more stuff if you like. To learn more about the options you have with tasksel, refer to the official Debian documentation.

Display managers are an ancient way to manage X-Servers (the thing that provides a graphical interface on UNIX like systems). Once Wayland takes over both the way and the land(scape), this might become a thing of the past, but as of now, you might have multiple choices of display managers (or DMs). Usually, when you install a Desktop Environment, it will install its preferred DM, so you don't need to worry. If you happen to install multiple DEs, however, you might end up with each installing a different DM. Not to worry, these things are compatible with each other, the preferences are really just preferences. If you have multiple DMs, just choose one. The only difference you will really see is the style of login screen, and if you don't like it, you can always change it later.

If you have only installed one Desktop Environment, you will not see this screen.

Choose one by navigating to it with the Up and Down arrow keys, and press Enter.

Choose Display manager

On older computers that don't have (U)EFI, but use a BIOS instead, you will need to install a boot loader (GRUB). In this step, you can decide if you want to install it into the master boot record (MBR) of the HDD. Unless you have a good reason to do otherwise, choose Yes with the Tab key and press Enter. If you do have a reason to say No here, you must know what you're doing and probably need no further guidance.

On computers with (U)EFI, you will not see this screen.

Insrtall GRUB in mbr

Next, you'll need to decide onto which HDD to put GRUB. If you have a single hard drive, this should be easy. If you have more than one, choose the one your PC will boot from. This is usually one with the lowest letter in place of x in /dev/sdx, e.g. if you have /dev/sda and /dev/sdb, choose /dev/sda unless you know your PC will boot from the other, in which case, choose that one.

On computers with (U)EFI, you will not see this screen.

Choose the appropriate drive by navigating to it with the Up and Down arrow keys, or specifying it manually and press Enter.

Where does GRUB go?

That's it, you're done. If you see this screen, your Debian system is successfully installed. Yay! It wasn't so horrible, was it? OK, it probably was, but you can be sure it was worth it. Why so sure? Because I said so. And you would not dare argue with me, would you? You see, told ya...

All you have left to do is to remove the installation medium, be it a CD, DVD or a USB pendrive, and reboot your computer by, you guessed it, pressing Enter.

Do press Enter here and don't just reset the PC. The installer wants to shut down correctly. It will also be better for your motherboard.

Done!

Booting into your brand new (and possibly even shiny) Debian system

If you have survived the installation process, you're almost a hero. Debian's installer, admittedly, is not among the easiest or simplest ones. You see, choice is a great thing, but you actually do have to make those choices at every step. What you gain from it though is unparalleled control over your installation. (Well, almost unparalleled, as systems like Arch and Gentoo beat Debian to it, but those are really not for the faint-hearted.).

Now when you boot into your new system, you will see the following screen, if you load from BIOS...

GRUB BIOS

... or this in (U)EFI:

GRUB EFI

The common theme is, you can choose what to do next. The default option will (naturally) be to boot Debian. If you have any other system installed in a dual-, or multi-booting scenario, any or all of the other systems will also be listed. You can move down with the cursor, to select another system, wait for the 5s timeout to expire, or just press Enter to speed things up, and boot Debian already.

Regardless of what version of Windows you are dual booting with, it will always say "Windows Vista". that's how much the GRUB devs care about Windows versioning, hehehe.

Congrats, you're more patient than Linus Torvalds

If you have found this installation process difficult, you are not alone, and it's definitely not because you're new and/or inexperienced. Linus Torvalds the creator of Linux (the kernel) is well-known to have had trouble installing Debian in the past. So much so that he gave up on it completely. And nobody would call the man who created Linux inexperienced, I'm sure. Don't believe me? Watch this: