Skip to main content

Learn Linux with Raspberry Pi

What is this "Linux", anyhow?
Linux is everywhere, as the operating system that drives countless devices from the tiny to the gigantic. We'll explain what that actually means, tell you how you can get ahold of your own Linux computer, and set the stage for an overview of the fundamentals of day-to-day use.
What is the Command Line?
Modern GNU/Linux systems offer graphical desktop environments both simple and sophisticated, but at the heart of the Unix tradition is a more fundamental abstraction: Text. We'll sketch out the origins of the command line, and set the stage for an exploration of its unique abilities.
An Illustrated Shell Command Primer
Now that we've established what the command line is and how to get a shell, we'll introduce a set of commands fundamental to doing useful work on the GNU/Linux command line.
An Illustrated Guide to Shell Magic: Standard I/O & Redirection
With a sampling of core utilities and other commands established, we begin to explore the concepts that make the command line reusable and composable.
An Illustrated Guide to Shell Magic: Typing Less & Doing More
A survey of techniques by which the shell user can express more without getting bogged down in tedious repetition, and tie together various tools within the GNU/Linux environment.
RasPipe: A Raspberry Pi Pipeline Viewer, Part 1
In part 1 of this project, we'll learn how to use Pygame on a Raspberry Pi with Adafruit's PiTFT to build miniature visualizers for Linux shell pipelines.
RasPipe: A Raspberry Pi Pipeline Viewer, Part 2
Extending our PiTFT text visualizer Using netcat (a command-line utility for easily pushing traffic around a network), Node.js (a fast, capable server-side JavaScript implementation with a bunch of useful library code available) and Flask (a fast and easy Python web application framework.)
Raspberry Pi Kernel-o-Matic
If you've ever needed to compile the Linux Kernel on a Raspberry Pi, you've probably noticed that it takes a long time. We sure have! If you have a desktop computer or a laptop with decent hardware specs, it seems like there ought to be an easy way to use all that processing power to generate a new kernel for your Pi, but it can be tricky to figure out the specifics. Enter the Adafruit Pi Kernel-o-Matic!
Using an External Drive as a Raspberry Pi Root Filesystem
One of the more noticeable limitations of the Raspberry Pi is using an SD card for its main storage. This guide details hooking up an external drive, copying your root filesystem to it, and configuring the kernel to treat the external drive as root. It includes a helper script which automates most of these steps.
Running Programs Automatically on Your Tiny Computer
Projects built on a system like the Raspberry Pi or Beaglebone Black often need a good way to run scripts or services at boot time, and ensure that they stay running. We'll walk through two widespread solutions to this problem, one old and one new.