Zamjena GNU Coreutils alata u distribuciji Ubuntu 25.10 s Rust Coreutils (uutils) dovela je do neispravnog rada skripte za automatsku provjeru dostupnosti ažuriranja paketa. Između ostalog, bio je nefunkcionalan mehanizam automatskog instaliranja ažuriranja radi uklanjanja ranjivosti, koji se koristi u nekim instalacijama Ubuntu Desktop i Ubuntu Server, kao i u konfiguracijama za oblake i kontejnere. Greška nije utjecala na ručne operacije instaliranja ažuriranja korištenjem komandi poput apt.
Problem je nastao zbog isporuke alata „date” iz seta uutils, u kojem opcija „-r” („—reference=file”) koja prikazuje vrijeme promjene određenog datoteke nije bila implementirana. Navođenje ove opcije u alatu „date” prepoznavano je od strane parsira, ali logika obrade opcije nedostajala je u kodu, pa je umjesto vremena posljednje promjene datoteke uvijek vraćeno trenutno vrijeme.
Ekipa „date” s opcijom „-r” koristila se u dnevno pozivanoj skripti „apt.systemd.daily” za određivanje vremena modifikacije datoteke „/var/lib/apt/periodic/upgrade-stamp”, koja se koristila za izračunavanje vremena posljednje instalacije ažuriranja. Budući da poziv „date” s opcijom „-r” nije rezultirao izlazom greške i uvijek je vraćao trenutno vrijeme, skripta je uvijek smatrala da su na sustavu instalirana najnovija ažuriranja.
Zanimljivo je da je u git repozitoriju uutils promjena s ispravnom podrškom za opciju „-r” dodana mjesec dana prije održavanja Ubuntu 25.10, ali nije uključena u paket rust-coreutils 0.2.2-0ubuntu2, koji je dio Ubuntu 25.10. Nedostatak izlaza greške prilikom pozivanja neispravne opcije spriječio je otkrivanje problema tijekom automatiziranog testiranja. Problem je riješen u ažuriranju paketa rust-coreutils 0.2.2-0ubuntu2.1, koji se može instalirati korištenjem naredbe „sudo apt install —update rust-coreutils”.
Izvor: opennet.ru
