Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

illumos features

illumos is not a Linux distribution and not a kernel-only project — it is a complete Unix operating system descended from OpenSolaris, carrying a set of capabilities that were, in several cases, invented there. solnix inherits all of them from the illumos gate. This page is a feature-by- feature overview: what each thing is, why it matters, and where solnix stands on it today. Each has a fuller page linked from here.

On solnix status, up front. These are illumos platform features; solnix inherits them by being an illumos distribution. Where solnix’s own tooling around a feature (a Nix module, a builder) is still planned, this page says so. The features themselves — ZFS, DTrace, SMF, zones, FMA — are real illumos features and work on any illumos host.

OpenZFS

What it is. A pooled-storage filesystem and volume manager in one. ZFS groups devices into a pool, carves datasets (filesystems) and volumes out of it on demand, and end-to-end checksums every block. It was developed at Sun in the early 2000s, open-sourced in 2005 as part of OpenSolaris, and illumos is a founding member of the OpenZFS community.

Why it matters. Cheap atomic snapshots and clones, send/receive for replication, on-demand scrubbing, and self-healing in redundant configurations — data integrity you cannot get from a traditional filesystem plus separate volume manager. Snapshots and clones are also the mechanism behind boot environments.

solnix relevance. ZFS is the substrate for the whole solnix upgrade model: each Nix generation is a ZFS boot environment, and cheap clones are what make atomic upgrade and instant rollback affordable. See ZFS storage.

DTrace

What it is. A safe, production-grade dynamic tracing framework spanning the whole system — kernel and userland, from one language (the D language). Thousands of instrumentation points (probes) sit dormant at zero cost until you enable them.

Why it matters. You can ask questions about a running production system — “which files is this process opening,” “what is the latency distribution of this syscall,” “which function is burning CPU” — without recompiling, restarting, or risking a crash. DTrace is designed to be safe to run on live systems.

solnix relevance. For a Nix-built system, DTrace is the answer to “why is this store path’s binary behaving this way in production.” See DTrace.

Service Management Facility (SMF)

What it is. The init system and service supervisor. SMF tracks service dependencies, supervises and restarts processes, disables perpetually crashing services (moves them to maintenance), and keeps live configuration in a repository rather than only in flat files.

Why it matters. Dependency-aware startup, automatic restart with a fault boundary, and a single query (svcs -x) that tells you what is broken and why — the things you would otherwise assemble from several tools.

solnix relevance. SMF is the direct replacement for systemd.services.*. solnix renders SMF manifests from a declarative smf.services.* Nix module and converges the system to a milestone on activation. See SMF services.

Zones

What it is. OS-level virtualization: isolated illumos environments that share one kernel but have their own filesystem, process table, users, and network — a “virtual machine without the hypervisor overhead.” Zones predate Linux containers by years.

Why it matters. Strong isolation at near-native performance, plus branded zones — including LX-branded zones that run Linux binaries on the illumos kernel — and integration with ZFS (a zone on its own dataset) and resource controls.

solnix relevance. Zones are a natural target for reproducible, Nix-built environments, but solnix’s own zone tooling is early — see Zones for the honest status. Running Linux workloads on solnix via the LX brand is a stated roadmap direction — see LX-branded zones.

Boot environments

What it is. Bootable ZFS clones of the root filesystem, managed with beadm. Each is an independent, bootable root; exactly one is the default boot target.

Why it matters. Upgrades become atomic (switch the boot target, do not mutate the live root) and rollback becomes instant (boot the previous environment). This is illumos’s native answer to safe system upgrades.

solnix relevance. This is the mechanism solnix maps Nix generations onto — the illumos analog of NixOS generations. See ZFS boot environments.

Fault Management Architecture (FMA)

What it is. A subsystem that collects hardware and software error telemetry, diagnoses it into faults, and takes automated action — retiring a bad CPU or memory page, or handing a service to SMF to restart. You interact with it via fmadm and fmdump.

Why it matters. Errors become diagnosed faults with a stable message ID you can look up, instead of cryptic log lines. The system can degrade gracefully (offline a failing component) rather than crash. FMA and SMF are wired together: a service fault and a hardware fault flow through the same machinery.

solnix relevance. FMA is inherited from the gate; solnix does not replace it. For a system where the software layer is immutable Nix store paths, FMA’s focus on hardware and service faults complements Nix’s focus on software correctness. fmadm faulty is part of the debugging toolkit.

Other platform pieces

illumos also carries, and solnix inherits:

  • RBAC and process privileges — illumos splits the traditional all-or- nothing “root” into dozens of fine-grained privileges a process can hold or drop individually, and layers role-based access control (RBAC) on top: users assume roles granted only the profiles (bundles of authorizations) they need. pfexec runs a command with the profiles your user is authorized for — the least-privilege sudo-equivalent used throughout this handbook. This is finer-grained than Linux capabilities and predates them; it is why solnix can hand a service exactly the privileges it needs and no more.
  • The modular debugger (MDB / mdb) — inspects running processes, core files, and kernel crash dumps, using CTF type data. Central to debugging.
  • Virtual networking — Crossbow (dladm) — the in-kernel network- virtualization stack: virtual NICs, virtual switches (etherstubs), VLANs, link aggregation, and flow/bandwidth controls, including per-zone networking. See Networking (Crossbow).
  • ipfilter — the host (and per-zone) firewall.
  • bhyve / KVM — hardware virtualization ported to illumos, for full VMs alongside zones.

Further reading