What are the major components of any Linux distribution?

Hi all - I am learning about Linux and want to see if my understanding is correct on this - the list of major parts of any distro:

  1. the Linux Kernel
  2. GRUB or another bootloader
  3. one or more file systems (gotta work with files somehow, right?)
  4. one or more Shells (the terminal - bash, zsh, etc…)
  5. a Desktop Environment (the GUI, if included, like KDE or Gnome - does this include X11 or Wayland or are those separate from the DE?)
  6. a bunch of Default applications and daemons (is this where systemd fits int? I know about the GNU tools, SAMBA, CUPS, etc…)
  7. a Package Manager (apt, pacman, etc…)

Am I forgetting anything at this 50,000 foot level? I know there are lots of other things we can add, but what are the most important things that ALL Linux distributions include?

Thanks!

kpw,

Honestly, I wouldn't worry too much about how the OS works. If you're very ambitious, you could try to install Arch in a virtual machine environment: https://wiki.archlinux.org/title/Installation_guide

Installing Arch for the first time taught me a lot about how my system works, since you have to choose all the parts that make up your system yourself.

ZephyrXero,

You need the “Userland” programs. Basic things like ls, cp, cat, etc. Usually it’s GNU core tools, but there’s also BusyBox or BSD equivalents.

FauxPseudo,
@FauxPseudo@lemmy.world avatar

Package management is optional according to Slackware and Linux From Scratch.

A key part you left out is the init scripts. Without those you don’t have the fundamental under the hood flavor of a distribution.

VHS,
@VHS@hexbear.net avatar

If I understand correctly, the filesystem driver is contained within the kernel for all linux-native filesystems (Ext4, XFS, BtrFS, F2FS, etc.), just as drivers for computer components and devices are. But drivers to access NTFS (Windows) and HFS+ (Mac OS) drives are programs in userspace

jollyrogue,

Package manager needs to be higher since Linux distros are software distribution projects mainly.

  1. Package manager
  2. Config tools
  3. Config defaults
  4. Kernel
  5. Init process
  6. Software
just_another_person,

Well, bootloader first, then kernel, then init.

jollyrogue,

What are we ranking? The boot order of computers?

Of the 3 you listed, the init is only important to a few distros.

Also you forgot this is Linux and the initramfs.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • linux@lemmy.ml
  • localhost
  • All magazines
  • Loading…
    Loading the web debug toolbar…
    Attempt #