Добавить в корзинуПозвонить
Найти в Дзене
Новости linux

Rust-версия date сломала автообновления в Ubuntu 25.10: урок для дистрибутивов

В Ubuntu 25.10 пользователи столкнулись с неожиданным багом, который нарушил работу автоматического обновления системы. Причина кроется в Rust-версии команды date из набора утилит uutils. Опция -r, отвечающая за вывод времени последнего изменения файла, в этой версии не была реализована. Вместо корректного времени команда всегда возвращала текущее, что приводило к ложному ощущению свежести пакетов в скрипте apt.systemd.daily. Ирония ситуации в том, что исправление для -r уже находилось в git-репозитории uutils за месяц до выхода Ubuntu 25.10, но не попало в финальную сборку. Отсутствие уведомлений об ошибке и проверок целостности утилиты позволило багу пройти тестирование незамеченным. Это поднимает вопросы о готовности дистрибутивов использовать Rust для базовых инструментов, особенно тех, от которых зависит безопасность и поддержка системы. Проблема показывает, что даже малые изменения в фундаментальных утилитах могут иметь цепной эффект на работу системы. Автообновления — критическа
Rust-версия date сломала автообновления в Ubuntu 25.10: урок для дистрибутивов
Rust-версия date сломала автообновления в Ubuntu 25.10: урок для дистрибутивов

В Ubuntu 25.10 пользователи столкнулись с неожиданным багом, который нарушил работу автоматического обновления системы. Причина кроется в Rust-версии команды date из набора утилит uutils. Опция -r, отвечающая за вывод времени последнего изменения файла, в этой версии не была реализована. Вместо корректного времени команда всегда возвращала текущее, что приводило к ложному ощущению свежести пакетов в скрипте apt.systemd.daily.

Ирония ситуации в том, что исправление для -r уже находилось в git-репозитории uutils за месяц до выхода Ubuntu 25.10, но не попало в финальную сборку. Отсутствие уведомлений об ошибке и проверок целостности утилиты позволило багу пройти тестирование незамеченным. Это поднимает вопросы о готовности дистрибутивов использовать Rust для базовых инструментов, особенно тех, от которых зависит безопасность и поддержка системы.

Проблема показывает, что даже малые изменения в фундаментальных утилитах могут иметь цепной эффект на работу системы. Автообновления — критическая функция для безопасности, и её сбой повышает риск уязвимостей. Пока команда Ubuntu готовит исправления, пользователям приходится вручную контролировать обновления через apt update и apt upgrade, либо временно использовать классическую версию date из coreutils.

Кроме того, этот инцидент демонстрирует важность интеграционного тестирования при переносе ключевых инструментов на новые языки программирования. Rust даёт преимущества безопасности и стабильности памяти, но недостаточная проверка совместимости функций может привести к неожиданным сбоям. В будущем дистрибутивам стоит внимательнее подходить к переписыванию базовых утилит, обеспечивая параллельное тестирование старой и новой версии, чтобы избежать подобных инцидентов и не подрывать доверие пользователей.