Canonical, Ubuntu'yu tamamen Rust ile yeniden yazmıyor; ancak bellek güvenliği ve sürdürülebilirlik kazanımlarının geçiş maliyetini haklı çıkardığını düşündüğü noktalarda temel sistem bileşenlerini değiştirmeye başladı. Canonical Mühendislik Başkan Yardımcısı Jon Seager'ın JetBrains tarafından düzenlenen bir yayın sırasında aktardığına göre bu karar, sunucularda, masaüstü ve uç cihazlarda ve araçların içinde çalışan yaklaşık 15 milyon dağıtımı destekleyen bir platforma ilişkin uzun vadeli vizyonun parçası.
Bu yaklaşım, mevcut her aracı yeniden uygulamaya yönelik bir kampanyadan ziyade Ubuntu'nun önümüzdeki yirmi yılda neye ihtiyaç duyacağı sorusundan yola çıkıyor. Canonical, özellikle bellek hatalarına dayanıklılık ve güvenilirliğin endüstriyel sistemlerde, araçlarda veya hassas altyapılarda çalışan yazılımlar için belirleyici olduğu durumlarda Rust'ın sistem geliştirme açısından ikna edici bir araç seti sunduğunu düşünüyor.
Kapsamlı bir yeniden yazım yerine seçici değişimler
Bu bileşenlerin ilki Ubuntu 26.04 LTS'e ulaştı. GNU coreutils araçlarının Rust ile yeniden uygulanması olan uutils coreutils varsayılan seçenek haline geldi; açıklanan hedef, GNU araçlarının davranışıyla tam uyumluluk sağlamak. Bu, davranıştaki küçük bir farkın mutlaka iyileştirme olarak görülmeyeceği, aksine bir betiği veya eski davranışa dayanan bir aracı bozuyorsa hata kabul edilebileceği anlamına geliyor.
sudo-rs ise farklı bir yol izliyor. Proje, sudo ile tam uyumluluk sağlamaya çalışmak yerine, onlarca yıllık güvenlik deneyiminin ardından bugün tasarlansaydı yetki verme aracının nasıl görüneceğini yeniden düşünüyor. Güçlü tepkilere yol açan değişikliklerden biri, terminalde parola yazılırken yıldız işaretlerinin varsayılan olarak gösterilmesi. Canonical, bu kasıtlı değişiklikleri kısa vadeli sürtüşmelere yol açsalar bile kabul ettiğini söylüyor; çünkü bunları yalnızca birebir eşdeğer bir alternatif olarak değil, yeni bir tasarımın parçası olarak görüyor.
Zaman ve sertifikalar da değişimin kapsamında
Sıradaki proje ntpd-rs. Canonical, Haziran 2026'da bu projeyi Trifecta Tech Foundation aracılığıyla finanse ettiğini ve Ubuntu'da varsayılan zaman eşitleme aracı haline getirmeyi amaçladığını duyurdu. Plan, projenin Ubuntu 26.10 içinde arşivlenmesini, ardından Ubuntu 28.04'te varsayılan seçenek olarak tamamen kullanılmaya başlanmasını öngörüyor. Böylece NTP, NTS ve PTP'yi destekleyen tek bir araç üzerinden chrony ve linuxptp'nin kademeli olarak yerini alması hedefleniyor.
Bu değişimin önemi, hassas zaman eşitlemesinin yalnızca ağ sunucularıyla sınırlı olmamasından kaynaklanıyor. Zaman eşitlemesi uçakların, araçların ve robotların içindeki mikrodenetleyicileri; anahtarları düzenli olarak döndüren kriptografik sistemleri ve konuma dayalı sistemleri etkiliyor. Metin, chrony ve linuxptp'nin birlikte kullanılmasının birden fazla araç ve zaman kaynağının yapılandırılmasını gerektirebileceğini, ntpd-rs'nin ise bellek güvenliğinden yararlanarak bu işlevleri tek bir araçta ve tek bir yapılandırma dosyasında birleştirmeyi amaçladığını açıklıyor.
UPKI projesi, Rustls projesiyle iş birliği içinde sıfırdan geliştirilen yeni bir proje olması bakımından bu değişimlerden ayrılıyor ve Linux'taki sistem araçlarına sertifika iptal denetimi eklemeyi hedefliyor. Canonical, projenin ilk olarak Ubuntu 26.10'a ulaşmasını amaçlıyor. Fikir, curl, wget ve OpenSSL gibi araçlarla ilişkili; metne göre bu araçlarda sertifika iptaliyle ilgili bu tür bir işlem, tarayıcılardakiyle aynı biçimde yerleşik hale gelmiş değil.
Kullanıcılar açısından pratikte ne değişiyor?
Canonical, bu değişiklikleri devreye almak için LTS sürümlerinin sınırlarını seçti; çünkü kurumlar genellikle sistemlerini bu noktalarda güncelliyor ve düşük seviyeli araçlar değiştirilirken geri dönüş yolunun bulunması önem taşıyor. Metne göre önceki sürümler 15 yıl boyunca yönetilen destek alacak ve eski araçlar arşivde tutulacak. Böylece üretimde kullanılan mevcut bir sisteme yeni davranış, geri dönme seçeneği olmadan zorla uygulanmayacak.
Ancak projeler arasındaki uyumluluk aynı düzeyde değil. uutils coreutils, boş bir dosyadan belirli sayıda bayt okunması istendiğinde head aracının hata döndürmesiyle ilgili pratik bir örnekle karşılaştı; GNU coreutils ise sıfır döndürüyordu. Bu fark, Obsidian snap paketinde gizli bir betiğin bozulmasına yol açtı ve davranış GNU ile uyumlu hale getirilecek şekilde değiştirildi. Örnek, bellek güvenliğinin, eski araçlar etrafında 30 yıl boyunca biriken varsayımlarla uyumluluğun önemini ortadan kaldırmadığını gösteriyor.
Zorluk kod yazmanın ötesinde
Rust'ı büyük bir dağıtıma dahil etmek, bağımlılık, derleme ve dağıtım zincirinin de ele alınmasını gerektiriyor. Canonical, her crate'i ayrı bir deb paketi olarak paketlemek yerine her pakete ait crate'leri tek bir arşiv içinde derleme yaklaşımını kullanıyor. Metne göre bu yöntem, bağımlılık yüzeyinin yönetilebilir kalmasına ve derleme süreçlerinin deterministik olmasına yardımcı oluyor; ancak resmî anlamda yeniden üretilebilir olmalarını sağlamıyor.
2026'nın başlarında cargo auditable, Ubuntu arşivindeki tüm Rust paketlerinde genel kullanıma açıldı. Her Rust ikilisi, derleme sırasında kullanılan crate adlarını ve sürümlerini kaydeden gömülü bir SBOM içeriyor ve paket yeniden derlendiğinde otomatik olarak güncelleniyor. Bu veriler güvenlik açıklarını önlemiyor; ancak bağımlılıklardan birinde sorun keşfedildiğinde etkilenen sürümlerin belirlenmesini daha doğrudan hale getiriyor.
certi.news değerlendirmesi: Buradaki gerçek değişim yalnızca C ile yazılmış araçların Rust ile yazılmış araçlarla değiştirilmesi değil; yaygınlaştıktan sonra değiştirilmesi zor olan bileşenlere bir güvenlik, sürdürülebilirlik ve bağımlılık izleme katmanının eklenmesi. Buna karşılık uyumluluk örnekleri ve sudo-rs'nin davranışı, geçişin kullanıcıların fark edeceği tasarım kararlarını dayatabileceğini ve başarının, uygulama diline olduğu kadar bu farklılıkların yönetilmesine de bağlı olacağını gösteriyor. ntpd-rs ve UPKI için açıklanan tarihler geleceğe yönelik hedefler olmayı sürdürürken kaynak, değişimin kapsamının seçici olduğunu ve eski araçlarla geri dönüş seçeneklerinin Canonical'ın stratejisinin hâlâ bir parçası olduğunu ortaya koyuyor.