Home‎ > ‎Dabbles‎ > ‎RaspberryPi‎ > ‎

RaspberryPi 110 - Configuring the Pi

posted Oct 18, 2015, 3:33 PM by Joshua S   [ updated Nov 10, 2015, 1:36 PM ]
This tutorial will explore the initial configuration of the RaspberryPi after writing the raw image to the memory card and powering it up.

With any of the Dabbles on this site, if you have questions, suggestions, or thoughts, please feel free to send me an eMail (I'm still working to figure out how to enable comments on Google Sites -- suggestions would be appreciated)!

Supply List:
  • RaspberryPi  The actual RaspberryPi hardware this will all be built around.  In this tutorial, a Raspberry Pi 2 is used and has a memory card with the Raspbian operating system pre-installed.
  • PuTTY SSH Client – PuTTY is a free and open-source terminal emulator, serial console and network file transfer application. It supports several network protocols, including SCP, SSH, Telnet, rlogin, and raw socket connection.  Other SSH tools can be used, but this tutorial will leverage PuTTY.

  • I know I said this guide was going to be comprehensive and not skip any steps, so what better way to start this off than by skipping steps.  I am not writing out instructions for the following (and illustrating from XKCD):
    • Buying a MicroSD Card
    • Buying a RaspberryPi 
    • Finding the IP Address of your Pi
      • This can be done in many ways, including on your router or using an IP scanner such as (AngryIP Scanner or NMAP) -- if there are requests from the "Contact Me" form; I'll look to create a tutorial for this.
    • Obtaining and installing PuTTY
  • Using PuTTY (or the SSH client of your choice) enter the IP Address or DNS Name of the RaspberryPi.
  • If this is the first time you connect, you will get a warning that the RaspberryPi's host key is unknown.  Click "Accept" or "Connect Once" to proceed with the connection.
  • Once connected, log onto the Pi using the default credentials:
    • UserID:  pi 
    • Password:  raspberry

  • Enter the RaspberryPi configuration menu by typing the command:
sudo raspi-config

  • First, we want to Expand the Filesystem, so we can fully use our memory card.

  • Next, let's Change the User Password so that we are no longer using the default "raspberry".  This is for the "pi" account, so make sure you choose a strong password with guidance from XKCD about good passwords, weak passwords, and password security.

  • With that done, let's customize our Boot Options and ensure the Pi boots to the console (command line) and requires a user to log in.  Note -- this is smart if you plan to use your Pi in "headless" mode, but may not be the right choice if you plan to plug in a monitor, keyboard, and mouse and use the Pi interactively.  Regardless, it is smart to require a user log in before using your Pi.

  • Now, let's set up the Internalization Options to select our language (locale) and time zone.  Hint - use the space bar to choose your selection.
    • For the locale, a best practice is to use UTF-8 for your country - in my case, US.
    • A best practice is to standardize this on GMT or UTC (these are the same) as this is a non-changing (not even for daylight savings time) standard time that can be used across your network or across the world.  Credit to XKCD for Daylight Savings Time!

  • Let's go into the Advanced Options, and enable SSH.  Granted, everything we've done so far would be difficult without this, but in the event you configured this in a non "headless" mode or the Pi is misbehaving, it is a good step to include.

  • Finally, if we return to the Advanced Options, let's set our Host Name and give the Pi the name we'd like it to use from here forward.

  • Time to restart so that all changes take effect.

  • Mission accomplished!  You configured your RaspberryPi!