We start by downloading the ISO of the Network Installation CD from the Debian web site and burning it to CD – this is a very small ISO and allows us to install the base system and have the system up and running in the minimum amount of time and also downloading the packages needed from the Internet; this ensures that we get the latest stable build as well as minimizing the amount of downloads.
Once booted from the CD, we select our language, region and keyboard followed by mounting the CD and loading the installer components from it. The network is also configured, followed by the system clock setting. The option also exists to create a user account, which includes setting the password for the “root” user; personally I create these only later once my system is up and running. The hard drives are also partitioned with many options available, depending on your requirements – I’m not going into detail on how to partition your drive(s), since there are many different opinions out there.
The base system is installed at this point followed by the configuration of the package manager and the selection of the network mirror to use. Once the package indexes have been downloaded, some predefined collections can be selected to be installed – personally I only install the standard system utilities and will install any additional software later as required. In previous versions of Debian, we had the option to finely select the components to be installed during installation – this has now been removed.
Once the software is installed, the boot loader should be installed to the master boot record, followed by the finalization of the installation and rebooting into the new system. A newly installed base server running Debian 7.5 is available after rebooting that can be custom configured. If you have opted not to create any user accounts, no password would be set for the “root” user – this can be done by selecting the “(recovery mode)” option from the boot loader, which would create a shell and auto-login the “root” user, notifying us also that the account is locked. To unlock the account, we need to set a password on the account by executing the following command:
Once a password has been set, we can continue setting up our development server.