Upgrade to Pro — share decks privately, control downloads, hide ads and more …

A Short Tour of Linux Distributions

Tyler L
February 05, 2017

A Short Tour of Linux Distributions

Tyler L

February 05, 2017
Tweet

More Decks by Tyler L

Other Decks in Technology

Transcript

  1. A Short Tour of Linux Distributions Open Source 101, February

    2017 Tyler Langlois Infrastructure Engineer, Elastic
  2. $ whois tylerjl • Infrastructure engineering/devops at Elastic ◦ Operations

    and software dev • Other pursuits ◦ Linux package maintainer, functional programming, raspberry pi wrangler, automation normal person
  3. Who is This For? • What’s a distribution? • How

    are they different? • Which should I choose? • How should I choose? • What’s happening in the distro landscape?
  4. What’s a distribution? Technology choices Package management • apt, yum

    , pacman, portage Init system • SysV, Upstart, systemd Other • Desktop Environment ◦ Gnome, KDE, xfce • Defaults ◦ filesystem, kernel patchsets • Installer
  5. What’s a distribution? Technology choices: Package Management $ apt install

    conky $ conky $ yum install conky $ conky $ pacman -S conky $ conky
  6. What’s a distribution? Technology choices: Package Management • dpkg ◦

    Debian and all derivatives ◦ .deb packages widely available ◦ apt (formerly apt-get) CLI utility • Features of note ◦ dist-upgrade for easier major version updates ◦ Ubuntu-created PPAs for small, third-party repos $ apt update $ apt upgrade $ apt search conky $ apt install conky
  7. What’s a distribution? Technology choices: Package Management • rpm ◦

    Red Hat derivatives ◦ .rpm shipped alongside .deb ◦ yum, dnf most commonly used • Features of note ◦ Plugins like deltarpm improve performance ◦ dnf next-gen yum replacement $ yum update $ yum search conky $ yum install conky
  8. Debian Vital stats • Governance ◦ Community/constitution • Tech ◦

    dpkg / apt / systemd • Notes ◦ Stability, open source ◦ Bedrock for many .deb based distributions
  9. Debian Use Cases • Rock-solid foundation for other projects (raspbian,

    Ubuntu, others) • Stable branch is extremely stable, most users rely on testing/unstable • No “flavors” of Debian per se, but equally capable for many roles • Predictable cycle, stable releases are easy to test beforehand
  10. Ubuntu Vital stats • Governance ◦ Supported by Canonical •

    Tech ◦ dpkg / apt / systemd • Notes ◦ userbase, widespread adoption ◦ Regular release cycle
  11. Use Cases • Often the default choice for users who

    need general purpose distro • For more specific purposes, Canonical ships more tuned releases • Focus on user-friendly installation and experience • Set-in-stone release cycle means predictable releases (+LTS) Ubuntu
  12. Linux Mint Vital stats • Governance ◦ Community distribution •

    Notes ◦ Very closely related to Ubuntu ◦ Customized user interface and desktop experience ◦ Ease-of-use and user friendliness
  13. Fedora Vital stats • Governance ◦ Community, sponsored by Red

    Hat • Package management ◦ rpm / dnf / systemd • Notes ◦ Strictly OSS ◦ Cutting edge software ◦ Spins
  14. RHEL Vital stats • Governance ◦ Red Hat, Inc. •

    Package management ◦ rpm / yum / systemd • Notes ◦ Enterprise-grade & industrial strength ◦ Certifications & compliance ◦ Commercial support
  15. CentOS Vital stats • Governance ◦ Community-driven, blessed by Red

    Hat • Notes ◦ It’s RHEL, but rebranded + free ◦ Common base (for example, Amazon Linux)
  16. openSuSE + SLES Vital stats • Governance ◦ Commercial (SuSE)

    • Tech ◦ zypper / rpm / systemd • Notes ◦ OSS distro (openSuSE) and Enterprise (SLES) ◦ Useful tools (YAST, btrfs)
  17. • Most off-brand distributions are tuned to a specific use

    case • All the exciting evolution happens at the fringes! What’s the Distinction? • Nearly all distros branch off dpkg/rpm • Package managers outside the norm grow a whole new ecosystem
  18. Arch Vital stats • Governance ◦ Community of trusted users

    • Tech ◦ pacman / systemd • Notes ◦ Simplicity ◦ Vanilla software ◦ Bleeding edge
  19. Use Cases • pacman == yum == apt • AUR

    is community-managed package repository • Rolling updates means there are no “versions” of Arch • Vanilla package a good base for derivative distributions • Often a good choice if latest software is always needed Arch
  20. NixOS Vital stats • Governance ◦ Community (GitHub) • Tech

    ◦ nix / systemd • Hallmarks ◦ Declarative config ◦ Atomic upgrades $ cat configuration.nix { virtualisation.docker.enable = true; } $ nixos-rebuild switch
  21. Gentoo Vital stats • Governance ◦ Community • Tech ◦

    emerge / portage / openrc • Hallmarks ◦ From-source distro ◦ Simplicity has spawned some other distros (including ChromeOS)
  22. Slackware Vital stats • Governance ◦ Community • Tech ◦

    tarballs / BSD-SysV init • Hallmarks ◦ Oldest distribution still maintained ◦ Simple package management
  23. Which Distro? Points to consider • Stability versus latest features

    ◦ Solid reliability takes years, it’s a tradeoff ◦ Time-tested package managers (rpm, deb) are a safe bet ◦ Users have a nice spectrum of latest-shipping distros (i.e., CentOS -> Fedora -> Arch) ◦ Know your (eventual) upgrade plan (CentOS 6 -> 7???)
  24. Which Distro? Points to consider • Stability versus latest features

    • Machine use case ◦ Servers ▪ Stability, consistency, support considerations ▪ CentOS, RHEL, Debian, Ubuntu LTS ◦ Desktop ▪ Graphics drivers, wireless drivers, etc. ◦ Special-case ▪ Kali, Vyatta, Raspbian, etc.
  25. Which Distro? Points to consider • Stability versus latest features

    • Machine use case • Technology decisions ◦ systemd-ocalypse ◦ Preferred desktop environment ◦ Defaults (filesystem, bootloader, and so on) ◦ Kernel choices
  26. Which Distro? Points to consider • Stability versus latest features

    • Machine use case • Technology decisions • OSS versus commercial ◦ How comfortable are you with a) community support, b) commercial support, c) do-it-yourself? ◦ Licensing: are you compliant? ◦ Free as in beer ≠ free as in speech
  27. The Future • btrfs and ZFS on Linux ◦ btrfs

    ▪ Native Linux filesystem ▪ Rapidly stabilizing ◦ ZFS ▪ Adapted from Solaris ▪ Long history ◦ Copy-on-write ◦ Online scrubbing ◦ Snapshots Filesystems file.txt file.txt file.txt sda sdb pool
  28. The Future Distribution • OSTree ◦ Swap running operating system

    with new image ◦ Similar strategy used in CoreOS ◦ Experimental progress in Fedora v1 v2 /root
  29. The Future • Wayland / Mir ◦ Replacements for the

    venerable XFree86 / X.org • Snappy ◦ Ubuntu’s new packaging format • dnf ◦ Red Hat-based distribution next-gen yum • Kernel ◦ Live patching New Core Components
  30. Thank You! • GitHub ◦ tylerjl • IRC, Twitter ◦

    leothrix • tjll.net • Check out “Open Source Developer’s Toolbox” later today