캐논니컬의 엔지니어링 부사장 겸 프로젝트 기술 책임자인 존 시거 Ubuntu교체를 위한 계획을 제시했습니다. Ubuntu 시스템 유틸리티를 Rust로 작성된 해당 유틸리티로 변환하는 것입니다. 이 프로젝트의 첫 번째 목표는 시스템 유틸리티를 Rust로 번역하는 것입니다. Ubuntu 25.10 버전에서는 GNU Coreutils 제품군 대신 uutils 툴체인을 기본적으로 사용하도록 변경합니다. 이 실험이 성공적이라고 판단되면 LTS 브랜치에서도 uutils가 기본적으로 사용될 예정입니다. Ubuntu 26.04.
이번 교체로 인해 sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln, ls 등 Coreutils에 포함된 100개 이상의 유틸리티가 영향을 받게 됩니다. 현재 Apertis 배포판에서는 uutils 유틸리티가 기본적으로 사용되고 있으며, Apertis는 Coreutils를 기반으로 합니다. Debian독립 배포판인 AerynOS(SerpentOS)에서도 마찬가지입니다. 지난주에 출시된 uutils coreutils 패키지 0.0.30은 GNU Coreutils 벤치마크 스위트에서 507개의 테스트(이전 릴리스에서는 506개, 그 전 릴리스에서는 476개)를 성공적으로 통과했습니다. 69개의 테스트는 실패했고, 41개의 테스트는 건너뛰었습니다. 향후 몇 주 안에 대체 테스트에 대한 작업도 계획되어 있습니다. Ubuntu su 및 sudo 유틸리티를 sudo-rs 패키지에 추가합니다. 검토 중인 프로젝트 중에는 zlib-rs와 ntpd-rs도 언급됩니다.

이전 이유는 유통의 기반을 형성하는 공공 서비스의 안정성과 보안을 개선하고자 하는 바람입니다. Rust를 사용하면 메모리 해제 후에 메모리에 접근하는 경우나 버퍼 오버런 등 메모리 관리 오류의 위험을 줄일 수 있습니다. 존 시거에 따르면, 이러한 오류로부터 보호하면 보안 보장이 높아지고, 보안이 강화됨에 따라 시스템의 전반적인 안정성도 높아집니다.
Canonical은 품질 개선을 위한 다양한 방법을 고려하고 있으며, 그 중 하나는 원래부터 보안, 신뢰성, 정확성을 염두에 두고 개발된 프로그램을 제공하는 것입니다. 이것은 배포판의 기본 구성 요소에 특히 중요합니다. 왜냐하면 저수준 소프트웨어에서 문제가 발생하면 이러한 문제가 모든 상위 계층의 작업에 반영되기 때문입니다. 예를 들어, 기본 패키지에 성능 문제가 있으면 다른 하위 시스템의 성능에 영향을 미칩니다.
교체품을 테스트하려면 Ubuntu oxidizr 프로젝트는 기존 유틸리티를 Rust로 작성된 대체 유틸리티로 교체하는 시스템 실험을 관리하는 명령줄 도구를 제공하며, 시스템 구성 요소용으로 개발되었습니다. 현재 oxidizr는 uutils, coreutils, uutils, findutils, uutils 및 sudo-rs 패키지의 기본 사용으로 전환하는 실험을 제공합니다. 예를 들어, 시스템에서 coreutils와 findutils를 Rust로 교체하려면 "sudo oxidizr enable --experiments coreutils findutils" 명령을 실행하면 되고, 기본 상태로 되돌리려면 "oxidizr disable" 명령을 사용하면 됩니다.
출처 : opennet.ru
