Canonical is accelerating the integration of Rust into critical Ubuntu components. Following the announcement that sudo-rs has become the default implementation of sudo in the next release, it’s now the turn of one of the system’s cornerstones: Coreutils.

In the Ubuntu development mailing list, Canonical engineer Julian Andres Klode confirmed that the transition to Rust Coreutils —known as the uutils project— is underway and that changes will start appearing in Ubuntu 25.10 images as of this month.


What Are Coreutils and Why Do They Matter?

GNU Coreutils are a set of essential tools in any Linux system: commands like ls, cp, rm, cat, or mv all come from this package. They are so fundamental that nearly every script or system application depends on them.

Migrating to Rust Coreutils (uutils) is no small shift. Rust provides memory safety and concurrency guarantees, reducing risks from vulnerabilities common in C, the language GNU Coreutils was written in. Canonical’s move aims to build a more secure, future-proof foundation.


Details of the Ubuntu 25.10 Transition

According to Klode’s announcement, the transition will impact several areas:

  • autopkgtests: once rebuilt, autopkgtest images will run with rust-coreutils.
  • system images: going forward, Ubuntu images will ship with rust-coreutils instead of gnu-coreutils.
  • testers and community: Canonical expects more feedback as soon as the transition goes live.

Some of the technical changes already landing include:

  • Binaries in /usr/bin/FOO will point to /usr/lib/cargo/bin/coreutils/FOO instead of /usr/bin/coreutils.
  • The directory /usr/lib/cargo/bin/coreutils/ will shift from a “symlink farm” to a “hardlink farm,” improving consistency in binary invocation.

Klode also highlighted a key security improvement: ensuring that argv[0] matches the actual binary name. This prevents potential exploits in AppArmor profiles — for instance, stopping tricks like executing execvp("ls", {"rm", "/etc/passwd"}) to bypass security policies.


Path Toward Ubuntu 26.04 LTS

Canonical sees Ubuntu 25.10 as a large-scale testing ground for technologies that will form part of the next LTS release (26.04), scheduled for April 2026.

Introducing Rust into critical components such as sudo and coreutils is intended to strengthen long-term reliability and security, two key pillars for an LTS release that will be deployed on servers, enterprise environments, and mission-critical systems.


Community Reactions

The move is not without debate. Some developers welcome the Rust adoption as a step toward stronger security, while others voice concerns about potential incompatibilities, differences in command behavior, or increased build and maintenance requirements.

Klode encouraged testers and the wider community to provide feedback: real-world testing will be crucial to ensuring Rust Coreutils can fully replace GNU Coreutils.


Conclusion

Ubuntu 25.10’s shift to Rust Coreutils marks a turning point in the Linux ecosystem: for the first time, one of the world’s most popular distributions is rewriting part of its foundational “DNA” in a modern language designed for safety.

If successful, Ubuntu 26.04 LTS could become the first long-term release with Rust-powered base infrastructure, potentially inspiring other distributions to follow suit.


Frequently Asked Questions (FAQ)

1. What exactly are Rust Coreutils?
They are a Rust reimplementation of the traditional GNU Coreutils, under the uutils project. The goal is to offer the same functionality but with greater security and stability.

2. How does this affect Ubuntu users?
For everyday use, commands like ls or cp will work the same. The change is internal, aimed at improving system reliability and security.

3. Could existing scripts break due to incompatibilities?
Minor differences in command options or behavior are possible, which is why Canonical is heavily encouraging testing before fully committing to the change.

4. Why is Ubuntu adopting Rust in core components?
Rust guarantees memory safety and concurrency, avoiding common C vulnerabilities. Canonical wants to minimize risks in critical system utilities.

Scroll to Top