Spoiler alert: “Most tech authors don’t write to make money. We write to share cool stuff.”
Once upon a time, way back in 2003, I had an idea. “Hey,” I said to myself, “I should write a Linux book. It will be for Linux users, rather than coders. It will cover the basic tasks that Linux users want to know about.”
I was so enchanted by this idea that I reviewed the notes I had collected during my Linux adventures and started writing an outline. I pitched it to O’Reilly Media, and wonder of wonders, they said yes. The writing process was long and horrible, because I had no idea how to write a book, but my editors were patient and amazing.
Finally the darned thing was completed and released unto a happy world. It sold zillions and got good reviews. Looking at it now I see all kinds of flaws, of course.
Don’t Look Back
The Second Edition is substantially different from the first. I tried to make the topic selection more cohesive, and cover what I thought were the basic Linux tasks that most users need to know. Wherever you run Linux — desktop, server, cloud, virtual environments — it is all the same Linux, and you need the same skills.
Looking at the first Linux Cookbook is a history lesson, with vital topics like:
- Burning a CD or DVD
- Building programs from source code
- Installing software from RPMs and deb packages, and manually resolving dependency conflicts
- Patching kernels
- Using text editors
- Migrating from LILO to GRUB
- System rescue and recovery with Knoppix
- Using CVS, Concurrent Versions System, for source code version control
- Configuring the X Window System
- Running your own mail server
- Running your own web server
- Using Samba to force Windows to play nice with Linux
- Untangling the SysV init system, which was managed with different commands on different Linuxes. Red Hat had the weird idea that creating a new set of custom init commands would make it easier. Lol.
- Understanding man and info pages, including advice on how to read man pages on a system with a broken man reader, and how to print them.
The short story is, the first Linux Cookbook is sadly outdated, so I had the nutty idea to write a second edition. Even nuttier, O’Reilly agreed, and thus commenced 16 months of toil. It looked easy, but of course it wasn’t.
It never is.
The Second Time Around
Most of the fundamental Linux subsystems have changed. Systemd replaced SysV init, I think for the better. My fave feature is no longer needing root privileges to run shutdown commands, thanks to polkit and systemd. The GRUB bootloader is completely different. The wonderful firewalld greatly simplifies creating simple or complex iptables firewalls. The OpenSSH and OpenVPN chapters are much improved. Chrony and timesyncd are the improved modern implementations of the network time protocol (NTP).
Building a small inexpensive internet gateway/firewall/router has long been a rather difficult endeavor, because inexpensive hardware required special software, like OpenWRT and DD-WRT, and special commands to install and manage it. Now we have the fabulous Raspberry Pi 4, the newest and most powerful Raspberry Pi. This makes a dandy internet gateway for small networks, and you can install and run Linux on it like a normal person.
Some oldtimers are still excellent, such as dnsmasq for local name services and DHCP, rescuing damaged systems with SystemRescue, and the CUPS printing system. The newer CUPS releases introduce driverless printing, which is especially marvy for mobile devices printing on multiple networks, without having to download a ton of drivers.
User management, filesystem management, and partitioning are covered in detail. These are essential for basic security and basic system management.
And so much more: during the writing of Linux Cookbook 2nd Edition I discovered even more fundamental changes, which did not make it into the book because I wanted to release it before everyone died of old age.
Happiness Is a Warm Book
Should you find a copy in your possession, I hope you benefit from it. Most tech authors don’t write to make money, though making money is very nice. We write to share cool stuff.
Carla Schroder is the author of Linux Cookbook, first and second editions, Linux Networking Cookbook, and Book of Audacity. She has written hundreds of Linux howtos for various online publications, and currently works for the SUSE documentation team.