Skip to content

General rPi Setup

Ben Belov edited this page Apr 30, 2019 · 7 revisions

General setup

General setup that needs to be done for all Raspberry Pi's

Installing Raspbian OS on the SD card

The first decision that needs to be made is whether to install Raspbian Stretch or Raspbian Stretch Lite.

Stretch Stretch Lite
GUI Yes No
Size (GB) ~4 ~2
CPU Useage (% of single core) ~10-15 ~5

Note: GUI startup at launch may be disabled on Stretch.

Please follow this install guide to install the most recent version of Raspbian Stretch on the SD card (you will need a laptop with an SD card reader for this). Etcher, the recommended way of installation, works well on Linux and Windows.

Activating SSH and automatically connecting to Wi-Fi

In order to have access to to the raspberry Pi's other than by hooking up a monitor, you must configure SSH and Wi-Fi (if the raspberry Pi will not be on an Ethernet connection).

To set up ssh, place an empty file called ssh in the root of the boot (not the rootfs or filesystem) partition of the SD card, which on linux can be done via touch ssh or the use of a text editor to create the file. The ssh file should not have any extension.

To connect to Wi-Fi, create a file named wpa_supplicant.conf in the root of the boot partition in the following format for simple Wi-Fi (non-enterprise) networks:

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=US

network={
     ssid="ENTER SSID HERE"
     psk="PASSWORD HERE"
     key_mgmt=WPA-PSK
}

if you would like to connect to a WPA Enterprise networks such as utexas, the format is as follows:

network={
	ssid="utexas"
	key_mgmt=WPA-EAP
	eap=PEAP
	identity="uteid here"
	password="password here"
#       or for an NTLM hashed password instead
#       password=hash:HASH_HERE
	ca_cert="/location/of/certificate.cer"
	phase2="auth=MSCHAPV2"
}

with ca_cert being set to the location of the certificate for utexas which may be downloaded at the bottom of this page, or another network. You should place the certificate in an easy to find place, such as /etc/wpa_supplicant/certs.

For a additional veil of security for your wi-fi password which may be shared with other services, it is recommended one does not use their plaintext password but the NTLM hash of their password. To generate the NTLM hash of your password run

echo -n plaintext_password_here | iconv -t UTF-16LE | openssl md4

and enter it into the wpa_supplicant configuration as shown above.

Accessing the raspberry pi

If everything was done correctly, you should now be able to eject (or unmount) the SD card from your laptop, throw it in the Raspberry Pi, and power it on, and access it via SSH. To access the raspberry pi over SSH when connected from the same network run

ssh pi@IP_OF_PI

in Linux or use a SSH client on other operating systems. The default password is raspberry, which can be changed by running passwd or through raspi-config.

Cleaning up some unused space

Stretch comes with a reasonable amount of bloat, to get rid of LibreOffice and Wolfram (~1GB) run:

sudo apt purge --auto-remove wolfram-engine libreoffice*
sudo apt clean

Setting host name, and basic configuration

In order to set the hostname of the Raspberry Pi, turn on the camera, disable the GUI on startup, or dedicate more RAM to the graphics processor run

sudo raspi-config

and follow the on-screen GUI prompts.

Clone this wiki locally