Our 2023 Recommended Summer Reads – FreeBSD and Linux
We previously discussed in our webinar The Case for OS Diversity and Independence the great deal of value, security, and flexibility to be gained from using a diversity of operating systems. To help make implementation such diversity possible, Klara has produced a set of articles that discuss the differences between Linux and FreeBSD across various subsystems. These articles aim to act as a sort of Rosetta Stone, helping experienced administrators and developers turn their skills with one of the operating systems into knowledge of the other. With summer upon us, now is a great time to read through this series and learn how you can take maximum advantage of OS diversity.
Selecting an Operating System
Before we start digging into the technical differences between FreeBSD and Linux, we should first look at how they differ in the ways the projects are organized and how the code is licensed. Understanding these differences is the key to extracting the most value out of the diversity using a mix of operating systems can provide.
Open-source licensing is an integral part of any free software project. Understanding the limitations of each type of licensing is as much legal work as it is an art. In this article we talk about the reduced risk inherent in the BSD licensing model and why you should consider it going forward.
As the motto “The Power To Serve” indicates, FreeBSD is specifically designed to excel as a server operating system. Today, we’re going to go over three of its most compelling advantages in that role: thorough OpenZFS integration, easy-to-leverage infrastructure for custom packaging, and advanced fleet management capabilities.
The number of Internet of Things devices in both our homes and in the world around us has exploded in the last few years. Smart IoT devices can now replace everything from the humble light switch, all the way to smart lawnmowers, All of these devices are driven by an Operating System of some sort. What Operating Systems are available and what do you need to consider when selecting an OS for a new product?
Making the Switch
Once you are ready to take the plunge and start adding a mix of operating systems to your infrastructure, the next question becomes how to do it most efficiently. Being able to quickly adapt existing understanding and skillsets to the analogous operation on another operating system ensures a quick return-on-investment in training while simultaneously gaining the value from deploying a diverse set of tools.
With their common Unix heritage, Linux and FreeBSD have much in common. By knowing their idiosyncrasies, it becomes easier to adapt when moving between the two systems. Take a tour of some of the differences that are notable when migrating to FreeBSD. Along the way, we’ll give insights into the background and show some useful tricks.
The question isn’t as much “Should I choose FreeBSD or Linux”, the question should be “how can I best take advantage of both?”. In this comparison article, we go over the two implementations of the networking stack and look at the implementations differ and how to translate common tasks between the two operating systems.
When troubleshooting a Linux or FreeBSD system, you need to be able to probe the system to find answers as to why it is behaving in a particular way. In this article, we’ll provide an overview of some of the basic tools and introduce the FreeBSD equivalents of common Linux tracing and troubleshooting tools.
Reaping the Benefits
Once you have a mix of operating systems in your infrastructure, the next step is to leverage the advantages to get the best performance, lowest maintenance, and more value from each. These next articles show some areas where you can take advantage of unique features to give you infrastructure an advantage over those who do not implement diversity.
FreeBSD’s bhyve hypervisor makes it easy to run reliable, high-performance virtual machines on a FreeBSD host system. In this article, we test the performance of virtual machines running Windows, Linux, and FreeBSD under bhyve—comparing and contrasting the performance of the same virtual machines running under Linux’s well-known KVM hypervisor. Understanding the pros and cons of each hypervisor helps you make confident, informed decisions when adding diversity to your infrastructure.
If you are not familiar with bhyve, you might also find this article helpful: From 0 to Bhyve on FreeBSD
A ZFS boot environment (called a BE) is a bootable clone of the datasets needed to boot the operating system. Creating a BE before performing an upgrade provides a low-cost safeguard: if there is a problem with the update, the system can be rebooted back to the point in time before the upgrade.
This article demonstrates how to use the bectl utility to manage BEs and provides examples on how to update packages, apply security patches, and upgrade the operating system using BEs.
We have made our case for implementing a diversity of operating systems in order to maximize the advantages and reduce the drawbacks of each, all while minimizing the impact of bugs and security vulnerabilities. With this block of summer reading, you are now equipped with knowledge of how to perform operations on both operating systems, and concrete examples of advantages that are only available through the deploying diversity.
As you begin to plan and deploy a diverse infrastructure, consider expanding your team’s capabilities with a Klara Support Subscription to ensure you always have access to expert advice and practical experience to maintain and grow your infrastructure.