Imaging, First Boot, and Remote Access
The Goal
You want a Raspberry Pi you can provision repeatedly without mystery steps.
That means:
- consistent OS image
- known hostname and user
- SSH enabled from day one
- Wi-Fi configured up front when needed
- enough updates applied to start cleanly
Fastest Setup Method: Raspberry Pi Imager
Raspberry Pi Imager is the easiest way to create a clean, repeatable install.
Recommended Advanced Options
Before writing the image, use the customization options and preconfigure:
| Setting | Recommended value |
|---|---|
| Hostname | Something descriptive like pi-lab, camera-node, or garden-monitor |
| Username | A named user instead of generic habits across all devices |
| Password | Unique password for each box |
| SSH | Enable it immediately |
| Wi-Fi | Add SSID, password, and country code if using wireless |
| Locale | Your keyboard, timezone, and language |
Recommended Base Install
For most software projects, start with Raspberry Pi OS Lite.
Why Lite is often better:
- fewer background processes
- lower storage usage
- cleaner headless workflow
- easier to treat the Pi like a real server
Choose the desktop version only if your project truly needs a local GUI.
First Boot Checklist
After the Pi boots, connect via SSH:
ssh your-user@pi-lab.local
Or use the IP address if mDNS is not working:
ssh your-user@192.168.1.50
Then run:
sudo apt update
sudo apt full-upgrade -y
sudo reboot
Essential Post-Boot Commands
Check OS and Hardware
uname -a
cat /etc/os-release
vcgencmd measure_temp
free -h
df -h
Set Static Information if Needed
hostnamectl
ip addr
ip route
SSH Keys Instead of Password Habit
On your laptop or desktop:
ssh-keygen -t ed25519 -C "your-email@example.com"
ssh-copy-id your-user@pi-lab.local
Then verify passwordless login and consider disabling password authentication once you are sure keys work.
Useful Remote Access Modes
| Tool | Best for |
|---|---|
| SSH | Admin, coding, logs, file work |
| SCP / rsync | File transfer and deployment |
| VS Code Remote SSH | Editing directly on the Pi |
| Tailscale or WireGuard | Secure access from outside your home |
| VNC / desktop sharing | Only when you really need GUI access |
Reliable File Sync Pattern
For projects developed on another machine, rsync is a great habit:
rsync -av --delete project/ your-user@pi-lab.local:/home/your-user/project/
This keeps the remote copy clean and repeatable.
Common First-Boot Problems
| Problem | Likely cause | Fix |
|---|---|---|
| Pi not visible on network | Wi-Fi settings wrong or boot still running | Re-image or connect with monitor once |
| SSH refused | SSH not enabled or wrong hostname | Recheck image customization and address |
| Random instability | Weak power supply | Replace with a known-good PSU |
| Slow package installs | Old mirror or flaky Wi-Fi | Retry on Ethernet if possible |
| Storage corruption | Cheap SD card or power cuts | Upgrade media and shut down properly |
Creating a Provisioning Notebook
Keep one text file per device with:
- hostname
- purpose
- OS image used
- installed services
- static IP or DHCP reservation
- storage type
- backup location
This feels boring until you own three Pis and forget what each one does.
Good Next Steps
Once remote access works, move to 03-linux-cli-files-networking.md and get comfortable operating the machine like a real Linux system.