Компания Canonical намерена в осеннем выпуске Ubuntu 25.10 задействовать по умолчанию аналог утилиты sudo, развиваемый проектом sudo-rs и написанный на языке Rust. В марте аналогичное решение было принято в отношении замены утилит GNU Coreutils на инструментарий uutils. На стадии рассмотрения находятся инициативы по замене zlib и ntpd на zlib-rs и ntpd-rs, а также задействованию Sequoia вместо GnuPG в пакетном менеджере APT.
В sudo-rs по возможности обеспечена совместимость с классическими утилитами sudo и su, позволяющая использовать sudo-rs в качестве прозрачной замены sudo в большинстве сценариев использования. Для пользователей, не желающих переходить на uutils и sudo-rs, в Ubuntu 25.10 будет предоставлена опция для отката на классические варианты
системных утилит coreutils и sudo.
Протестировать использование sudo-rs не дожидаясь выпуска Ubuntu 25.10 можно при помощи инструментария oxidizr. В настоящее время в oxidizr доступны эксперименты для перехода по умолчанию на использование пакетов uutils coreutils, uutils findutils, uutils diffutils и sudo-rs. Например, для замены в своей системе sudo достаточно выполнить команду
“sudo oxidizr enable –experiments sudo-rs”, а для возвращения в исходное состояние можно использовать команду “oxidizr disable”.
Замена системных компонентов производится в рамках инициативы по повышения качества системного окружения через поставку программ, изначально разрабатываемых с оглядкой на безопасность, надёжность и корректность. Поставка утилит, написанных на языке Rust, даст возможность снизить риск появления ошибок при работе с памятью, таких как обращение к области памяти после её освобождения и выход за границы буфера. Если эксперимент будет признан удачным, то утилиты на Rust будут задействованы по умолчанию в LTS-ветке Ubuntu 26.04.
В анонсе также упоминается поддержка компанией Canonical работы по расширению возможностей sudo-rs и uutils. Из задач, которые планируют реализовать в sudo-rs до выпуска Ubuntu 25.10, отмечена реализация режима NOEXEC, добавление поддержки профилей AppArmor, создание утилиты sudoedit и обеспечение поддержки старых ядер Linux (старше выпуска 5.9). Режим NOEXEC позволит через фильтрацию системных вызовов execve и execveat блокировать запуск дочерних процессов для запущенных через sudo приложений. Из проспонсированных Canonical доработок в uutils отмечена реализация поддержки SELinux в типовых утилитах, таких как mv, ls и cp, а также добавление поддержки интернационализации в утилиты (например, в утилите sort не полностью поддерживаются параметры локали).