Here's an actual bare-metal installation of Debian 12 to an HP Proliant server. Enjoy!

VIDEO

📽️
Check out the Linux Networking - Basics & Beyond video course: available on O'Reilly and InformIT. (For InformIT, use the code PROWSE70 at checkout to receive a 70% discount.)

Note: I recommend downloading the latest version of Debian.

  • CPU: 1 GHz
    • For virtual machines, two logical CPUs is recommended.
  • RAM: 512 MB
    • Recommended 2 GB
  • Drive space: 2 GB
    • 10 GB recommended

Step-by-step Debian installation instructions

Pre-Work: Download the latest Debian .ISO image and burn it to a flash drive. Then insert the flash drive into the computer you want to install to.

Note: Be sure to boot off of the flash drive!

  1. To get used to working with the keyboard only, select the second option "Install" instead of "Graphic install".

  2. Name the server. In the video I called mine delta-server but you can select whatever you wish. I left the domain blank.

  3. Write down or memorize your root password

  4. Create a user account named sysadmin

  5. For the partitioning method select "Guided – use entire disk"

  6. For the partitioning scheme select "All files in one partition"

  7. Finish, and write the changes to disk

  8. Select "No" for scanning another disc

  9. If you are unsure, use the deb.debian.org mirror

  10. Most of you will not use an HTTP proxy

  11. Important! Software selection:

    • Deselect "Debian desktop environment" and "print server"
    • Select "SSH server"
  12. Install the GRUB boot loader to the main device.

  13. Reboot, login as root and check for Internet connectivity.

Example: ping example.com

Note: Configure Debian as shown above (and in the video) and follow the additional steps below.

Debian Configurations

  • Update Debian

    First check for any updates to the OS and apps:

    apt update

    Then, if any are available, and you are comfortable installing them, issue this comand:

    apt upgrade

  • Install packages

    In the following command we are installing vim as our default text editor, curl to be able to transfer data via HTTP and other protocols, and git so that we can access and download Github repositories.

    apt install vim curl git

  • Modify the hostname

    For example:

    delta-ray.example.local

    Modify this in /etc/hostname.
    I use vim during the video, but if you wish, you can use nano which is built in to Debian.
    Examples:

    vim /etc/hostname

    nano /etc/hostname

    Which editor you use doesn't matter to me, as long as you get the job done. However, if you want to follow along with what I am doing, I suggest using vim.
    You could also type the following command to change the hostname:

    hostnamectl set-hostname delta-ray.example.local

Note: You will find that Linux is constantly evolving. You could also omit the "set-" portion of the above command in many distributions of Linux.

  • OPTIONAL: Set a static IP address

    Not all servers use a static IP, but many do. To do so, configure the IP address manually. Do this in /etc/network/interfaces. Change dhcp to static and modify the IP address as you see fit. For example:

address 10.42.0.21/24
gateway 10.42.0.1

Note: Make sure that your IP address is on the same network as your gateway IP!

Note: It is okay to use the current IP address that was assigned by the DHCP server. To find out what this is type ip a. To find out the current gateway address, type ip r. (I may use other IP addresses during live webinars.)

  • Modify the DNS server IP address

    Do this in /etc/resolv.conf

    For example, remove any content that is there and add the following:
    nameserver 10.42.0.1

Note: Your nameserver will most likely be different.

  • Reboot the system

  • Check your work

    Use ip a to verify your IP address. Use ip route show to verify your default gateway. Verify the DNS configuration here: /etc/resolv.conf. Finally, ping a website domain to verify Internet connectivity. For example, ping example.com. You should get successful results similar to the following:

PING example.com (93.184.216.34) 56(84) bytes of data.
64 bytes from 93.184.216.34 (93.184.216.34): icmp_seq=1 ttl=58 time=12.7 ms
64 bytes from 93.184.216.34 (93.184.216.34): icmp_seq=2 ttl=58 time=15.9 ms

Note: You might also be interested in changing the resolution and font type. If so, see this article

That's it!

Your Debian server should now be set up. Enjoy! Or, if you have any questions, feel free to ask here or at my Discord server.

🙏
Great work! Debian is one of the most important tools in my toolkit. Not only because it is rock-solid, but also because of its inherent return on investment.

Check out the Linux Networking - Basics & Beyond Video Course Available on O'Reilly. and InformIT


Great! You’ve successfully signed up.
Welcome back! You've successfully signed in.
You've successfully subscribed to Prowse Tech.
Your link has expired.
Success! Check your email for magic link to sign-in.
Success! Your billing info has been updated.
Your billing was not updated.