Firma Canonical planuje w wydaniu Ubuntu 25.10 na jesień domyślnie wykorzystać odpowiednik narzędzia sudo, rozwijany przez projekt sudo-rs i napisany w języku Rust. W marcu podjęto podobną decyzję w sprawie zastąpienia narzędzi GNU Coreutils zestawem uutils. Obecnie rozważane są inicjatywy dotyczące zastąpienia zlib i ntpd odpowiednio przez zlib-rs i ntpd-rs, a także wykorzystanie Sequoia zamiast GnuPG w menedżerze pakietów APT.
W sudo-rs w miarę możliwości zapewniono zgodność z klasycznymi narzędziami sudo i su, co pozwala na użycie sudo-rs jako przezroczystego zamiennika sudo w większości scenariuszy użycia. Dla użytkowników, którzy nie chcą przechodzić na uutils i sudo-rs, w Ubuntu 25.10 zostanie udostępniona opcja powrotu do klasycznych wersji systemowych narzędzi coreutils i sudo.
Można przetestować użycie sudo-rs bez czekania na wydanie Ubuntu 25.10 za pomocą narzędzia oxidizr. Obecnie w oxidizr dostępne są eksperymenty dotyczące przejścia domyślnie na korzystanie z pakietów uutils coreutils, uutils findutils, uutils diffutils oraz sudo-rs. Na przykład, aby zastąpić w swoim systemie sudo, wystarczy wykonać polecenie „sudo oxidizr enable —experiments sudo-rs”, a do przywrócenia pierwotnego stanu można użyć polecenia „oxidizr disable”.
Zmiana komponentów systemowych odbywa się w ramach inicjatywy mającej na celu poprawę jakości środowiska systemowego poprzez dostarczanie programów, które są pierwotnie rozwijane z myślą o bezpieczeństwie, niezawodności i poprawności. Wprowadzenie narzędzi napisanych w języku Rust pozwoli zredukować ryzyko pojawiania się błędów związanych z pamięcią, takich jak dostęp do obszaru pamięci po jej zwolnieniu i przekraczanie granic bufora. Jeśli eksperyment okaże się udany, narzędzia napisane w Rust zostaną domyślnie wykorzystane w gałęzi LTS Ubuntu 26.04.
W zapowiedzi wspomniano również o wsparciu oferowanym przez firmę Canonical w zakresie rozszerzenia funkcji sudo-rs oraz uutils. Wśród zadań, które zamierzają zrealizować w sudo-rs przed wydaniem Ubuntu 25.10, znajduje się implementacja trybu NOEXEC, dodanie wsparcia dla profili AppArmor, stworzenie narzędzia sudoedit oraz zapewnienie wsparcia dla starszych jąder Linux (starszych niż wersja 5.9). Tryb NOEXEC umożliwi blokowanie uruchamiania procesów potomnych dla aplikacji uruchamianych przez sudo poprzez filtrowanie wywołań systemowych execve i execveat. W ramach sponsorowanych przez Canonical prac nad uutils wspomniano o implementacji wsparcia dla SELinux w typowych narzędziach, takich jak mv, ls i cp, a także dodaniu wsparcia dla internacjonalizacji w narzędziach (np. w narzędziu sort nie są w pełni obsługiwane parametry lokalizacji).
Źródło: opennet.ru
