I’m going to demonstrate you how you can easily setup a headless Raspberry Pi from scratch. That means to run it without using Monitor, Keyboard or Mouse.

How to Setup a Raspberry Pi Without a Monitor or Keyboard

Prerequisites

To Setup a Raspberry Pi Without a Monitor or Keyboard you will need

In many cases, the solution we want to install on a Raspberry Pi does not require physical access to it or it may happen that we don’t have any screen, keyboard, or mouse to control the Raspberry.

Or maybe we just want to save some CPU, Memory and storage by not including any graphical interface.

For all these scenarios and probably for many others the headless setup is just perfect.

Setup a Raspberry Pi Without a Monitor or Keyboard

I’m using Mac OS, but the process is exactly the same in Windows or Linux.

With that being said let’s setup this Raspberry Pi now.

How-To steps:

First we are going to download the Raspbian Lite image from the official raspberry pi website – Link

Download and install Etcher – To flash the image to your SD card, I will use the program called Etcher, which is available for Mac, Windows and Linux

Plug your SD card into your computer (using a microSD USB reader if necessary), and run Etcher.

Etcher will walk you through selecting the OS image file, selecting your SD card reader, and then flashing it.

To activate the SSH server in order to connect to your Raspberry Pi remotely you should create an empty file called “ssh” in the root folder of your SD card. On mac you can use the following command:

touch /Volumes/boot/ssh 

Only If you are using WiFi instead of LAN cable for your Raspberry Pi – you should create one more file called “wpa_supplicant.conf” in the root folder of your SD card. Paste the below lines inside it and don’t forget to change the “NETWORK-NAME”, “NETWORK-PASSWORD” and the ISO 3166 alpha-2 country code with yours:

 country=US 
 ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev 
 update_config=1 
 
 network={ 
     ssid="NETWORK-NAME" 
     psk="NETWORK-PASSWORD" 
 } 

After that Insert the SD card in your Raspberry Pi and power it up

To connect to it use the following command from Mac OS or Linux (For Windows download – Putty SSH client):

ssh pi@raspberrypi.local  

You will be asked for a password and the default one is: raspberry

To update the Raspberry type the following:

sudo apt-get update -y 
sudo apt-get upgrade -y 

Definitely change the default password (which is raspberry) by typing the following command:

passwd 

Question for You

I’ve been using raspberry Pi for several years as my main Smart Home hub and during this time I connect a screen to it maybe twice. My questions for you is for what are you using your Raspberry pi and do you have a screen attached to it?

Let me know in the comments bellow.

Support my work

Any sort of engagement does really help out a lot with the Google / YouTube algorithm, so make sure you hit the subscribe. If you enjoy this video. Also feel free to add me on Twitter by searching for KPeyanski. I post there pretty much daily.

I’m going to post an article every week, so you better subscribe now in order not to miss the next one.

I hope that you find this tutorial useful and definitely stay tuned for the other tutorials that are coming up.

Thank you for watching, stay safe and see you next time.


2 Comments

Trickey · 18/01/2020 at 7:14 am

Kiril,
I intend to use this configuration to display a menu as google slides on some public displays for a business. This is the first step towards configuring several remote displays that I can control from my laptop computer while sitting comfortably in my reclining chair, or in my bed, or bathroom. Regardless of location, I appreciate your tutorial, and I look forward to more in the future. Thank you for the concise information and the terminal commands. I found this very useful. -Trickey

    Kiril Peyanski · 18/01/2020 at 7:20 am

    Thanks Trickey, I’m happy that you look forward to more tutorials – they are coming.

Leave a Reply

Avatar placeholder

Your email address will not be published. Required fields are marked *