Ubuntu's Rustification Has a New Milestone! Coreutils Migration is Complete

a month ago by SocialistVibes01 to c/linux

The Ubuntu 26.10 release moves its last three GNU commands, cp, mv, and rm, to Rust.

Oboi here we go 🙄

Ubuntu has managed to do away with GNU Core Utilities in its default stack. The last three holdouts, cp, mv and rm, have moved to uutils' coreutils; the Rust reimplementation Canonical has been feeding into the distro since 2025.

They had been held back from 26.04 LTS over flaws in the uutils versions. Everything else, from ls and cat to chmod and du, made that jump in earlier releases.

This change, while big, sits hidden away in an obscure mention in Canonical's work-in-progress release notes for Ubuntu 26.10.

It's been a long road

Canonical started oxidising Ubuntu last year, and Ubuntu 25.10 became the first release to ship coreutils as the default. That release also made sudo-rs the default privilege tool, replacing a command that had been in place for decades.

26.04 was the release where the plan did slow down quite a bit, as Canonical kept cp, mv, and rm on their GNU versions due to a bunch of TOCTOU issues that were blocking the full implementation.

These were caught during an audit, when Canonical commissioned Zellic for two rounds between December 2025 and March 2026, focusing on the most security-sensitive utilities first.

Across both rounds, Zellic raised 113 issues, and 44 of them were assigned CVEs. Canonical says the vast majority have been resolved.

Getting here has had its ups and downs, and the last stretch was not clean. In July, uutils cp went back into the archive and came straight out again after it broke live image builds.

The fix was quick; as the developers marked it "Critical," the fix went upstream, and the migration landed in time for 26.10. What changes for you?

When typing commands, nothing changes for you on the surface. uutils coreutils is designed to be a drop-in replacement for essential GNU tools, and the project treats any divergence from GNU as a bug, further pointing out that some options may still be missing or behave differently.

So if you prefer staying on the GNU version, you have the option to install the coreutils-from-gnu package that houses all the required components.

The next stage

Coreutils is one piece of a broader campaign. Earlier this year, Canonical became a Gold Sponsor of the Trifecta Tech Foundation, pitching in €40,000 a year to fund memory-safe system software.

Under this, their current target is ntpd-rs, a Rust rewrite of the tools Ubuntu uses to keep its clock in sync. While work is still ongoing, it has already arrived for testing.

Its transition to being default is targeted for Ubuntu 27.04.

What Canonical is gradually building up towards is the completion of their oxidation vision for Ubuntu, and it's not about blindly including new components. Rather, it looks like a measured approach that's being worked out a few steps at a time.

load all comments
Azazel 116 points a month ago

As a developer I love rust but canonical can fuck all the way off with this shameless license laundering.

path: 0 25842628, hotness: undefined, score: 116, children: 35
TeaWithDani 5 points a month ago

I really don't see what they would gain by license laundering... They'll unGPL Debian, Gnome, Wayland and the Linux Kernal next?

If you wanted something out of copyleft, you would have an easier time just building on top of FreeBSD. It does like ~80% of what Ubuntu does already.

I don't feel too hot about them using MIT either, but I fail to see why they would implement this just to get rid of a GPL component. Seems expensive for nothing.

path: 0 25842628 25846022, hotness: undefined, score: 5, children: 8
Azazel 19 points a month ago

Yea know that is a fair point. I guess I struggle to see any other reason to support this? Even though I believe rust is nominally more secure it’ll be a decade before any core utils clone will be as hardened as the original just by virtue of the original having decades of bug finding and fixes done already.

I don’t think canonical would go through the effort under normal circumstances but I think they’re just taking the opportunity in front of them to ride the rust hype into a less copyleft ecosystem.

This actually ties into a broader complaint I have that the rust ecosystem is built around MIT due to influence of the corporate backers of the rust foundation. Which is unfortunate because I actually really love rust as a language.

path: 0 25842628 25846022 25846095, hotness: undefined, score: 19, children: 7
TeaWithDani 12 points a month ago

My bet is, Canonical as a service provider has a customer that is willing to pay for access to more secure rust utils. Or they want to save resources fixing CVEs.

There's also the spectre of future security regulations possibly demanding these changes one day too.

I still think its built on someone else's money. lol

path: 0 25842628 25846022 25846095 25846128, hotness: undefined, score: 12, children: 6
PuercoPop 11 points a month ago

Ubuntu did invest in a security audit of uutils. It revealed issues that show fundamental misunderstandings on how to use posix APIs. If they cared about security they would have postponed the adoption at least one more cycle. Uutils are they not ready for general availability.

Plus after decades of bug fixing coreutils doesn't have lots of security issues.

The VP of engineering of canonical keynoted Rust conf about uutils and is pushing forward the project. My guess is for political capital inside canonical.

Will long term uutils or another coreutils written in Rust will be a great improvement. Today is not the day.

path: 0 25842628 25846022 25846095 25846128 25846696, hotness: undefined, score: 11, children: 2
Azazel 7 points a month ago

Hmm you could very well be right. I guess I’m being to reasonable by knowing new rust code is not automatically (and not usually) more secure then old c battle tested c code. Shareholders and CEOs don’t understand that, I wouldn’t be surprised if someone’s been convinced rust is axiomatically more secure and bankrolling the migration over it

path: 0 25842628 25846022 25846095 25846128 25846181, hotness: undefined, score: 7, children: 2
linux
linux

@lemmy.ml

login for more options
68043
9439
5656

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

  • Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
  • No misinformation
  • No NSFW content
  • No hate speech, bigotry, etc

Related Communities

Community icon by Alpår-Etele Méder, licensed under CC BY 3.0

go to feed...