Ubuntu 26.10 finishes its move to Rust-based coreutils

Ubuntu 26.10 finishes its move to Rust-based coreutils

Ubuntu 26.10, code-named Stonking Stingray, completes Canonical's move to Rust-based core utilities. The distro now ships a full set of Rust coreutils, covering common command-line tools such as ls, cat, chmod and du, alongside cp, mv and rm. Those three commands had been the holdouts: Ubuntu 26.04 LTS kept them on their GNU versions because a security audit Canonical commissioned ahead of that release found a crop of TOCTOU (time-of-check to time-of-use) issues in the uutils Rust implementations. With those issues fixed upstream, 26.10 finishes migrating all three.

Canonical began replacing foundational Ubuntu software with Rust alternatives in 2025, citing security benefits: Rust catches memory bugs at compile time, where C compilers do not. Ubuntu 25.10 was the first release to ship Rust-based utilities and the first to make Rust-based sudo the default. Canonical is also a gold sponsor of the Trifecta Tech Foundation, giving it 40,000 euros a year to fund Rust software work, including a Rust-based rewrite of the Network Time Protocol that Ubuntu plans to adopt as its default time-sync client by version 27.10.

The uutils Rust implementations aim for drop-in compatibility with their GNU counterparts, treating any behavioral deviation as a bug to fix rather than a feature. Completing the coreutils migration brings no functional change for end users: the point is improved memory safety underneath, not new behavior on top. The Ubuntu 26.10 beta arrives later this month, ahead of the stable release on October 15, 2026.

Key facts

  • Ubuntu 26.10 migrates cp, mv and rm to Rust-based uutils, completing the switch of core command-line tools away from their GNU C versions.
  • The three commands were held back in Ubuntu 26.04 LTS after a Canonical-commissioned security audit found TOCTOU (time-of-check to time-of-use) issues in their Rust implementations, now fixed upstream.
  • Canonical began the Rust migration in 2025; Ubuntu 25.10 was the first release with Rust coreutils and Rust-based sudo as default.
  • Canonical sponsors the Trifecta Tech Foundation with 40,000 euros a year, funding a Rust rewrite of the Network Time Protocol that Ubuntu plans to adopt as its default time-sync client by version 27.10.
  • The migration is purely a security upgrade: uutils targets drop-in compatibility with GNU tools, so the change brings no functional difference for end users.

Why it matters

This closes out a project Canonical started in 2025: rewriting Ubuntu's foundational command-line tools in Rust so that a whole class of memory-safety bugs gets caught at compile time instead of surfacing as vulnerabilities in shipped C code. cp, mv and rm were the last holdouts because an audit found real issues in their Rust versions, so finishing the migration is also a signal that those issues got fixed rather than papered over.

Who it affects

Ubuntu users and administrators running 26.10 and later, since the core command-line toolchain they use every day is now backed by Rust implementations instead of the traditional GNU ones. It also matters to anyone tracking Canonical's broader Rust push, including the planned Rust-based rewrite of NTP funded through the Trifecta Tech Foundation.

How to use it

No action is needed and no new commands or flags come with this. The Rust-based uutils are designed as drop-in replacements: ls, cat, chmod, du, cp, mv, rm and the rest behave the same as their GNU predecessors, with any behavioral difference treated by the project as a bug to fix.

How solid is it

The article lays out a specific, checkable sequence: 26.04 LTS held back three commands after a named category of bug (TOCTOU) turned up in a commissioned security audit; 26.10 ships all of them once those issues were resolved upstream. That kind of before-and-after account, tied to a concrete audit and a specific bug class, is more verifiable than a vague claim of general improvement.

Risks and caveats

The security audit's exact scope, who conducted it and the full list of issues it found beyond the three affected commands are not detailed in the source. Nor is there a firm date for the 26.10 beta, only 'later this month' ahead of the October 15, 2026 stable release. As with any large rewrite, drop-in compatibility is a design goal rather than a guarantee, and edge-case behavioral differences from decades-old GNU tools can still surface after wider real-world use.