Профиль: Аноним (вход | регистрация) неRU opennet.me  
The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск uutils 0.11, варианта GNU Coreutils на языке Rust

01.09.2026 09:21 (MSK)

Опубликован выпуск проекта uutils coreutils 0.11.0 (Rust Coreutils), развивающего аналог пакета GNU Coreutils, написанный на языке Rust. В состав coreutils входит более ста утилит, включая sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln и ls. Целью проекта является создание кроссплатформенной альтернативной реализации Coreutils, среди прочего способной работать на платформах Windows, Redox и Fuchsia.

Rust Coreutils задействован по умолчанию в выпуске Ubuntu 25.10 и частично в Ubuntu 26.04. Rust Coreutils также применяется в дистрибутивах AerynOS (Serpent OS) и Apertis (развивается компанией Collabora). В отличие от GNU Coreutils реализация на Rust распространяется под пермиссивной лицензией MIT, вместо копилефт-лицензии GPL. Дополнительно той же командой разработчиков развиваются написанные на Rust аналоги наборов утилит util-linux, diffutils, findutils, procps и acl, а также программ sed и login.

В новой версии Rust Coreutils:

  • Уровень совместимости с эталонным набором тестов GNU Coreutils составил 95.33% (было 94.44%). Успешно выполнено 653 теста, что на 8 больше, чем в прошлой версии (645). 22 теста завершились неудачей (было 29), а 15 тестов было пропущено (было 15).
  • Интегрирован новый движок для диагностики проблем, основанный на библиотеке ariadne и выводящий при запуске утилит в терминале наглядные отчёты об ошибках c пометкой аргументов командной строки, из-за которых возникла проблема. Визуализация ошибок задействована в утилитах chmod, mkdir, mkfifo, mknod, install, tr, expr, sort, numfmt, cut, env, head, tail, truncate, split, shred, stdbuf, od, seq, dd, stat, join, csplit, ls, df и du. Для отключения диагностических отчётов предложена переменная окружения UUTILS_DIAG.
  • При сборке релизов активированы оптимизации на основе результатов профилирования кода (PGO - Profile-guided optimization), позволяющие генерировать более оптимальный код на основе анализа особенностей выполнения программы. По оценке разработчиков прирост производительности при выполнении некоторых операций составил до 31%.
  • Проведена оптимизация производительности утилит cp (+32.93%), join (в 2.5 раза быстрее, чем GNU за счёт отключения лишних сравнений локали), od, ptx (+4%), nl, tail, expand, unexpand, numfmt и sort. Как ошибки стали рассматриваться ситуации с выполнением операций заметно медленнее чем в GNU Coreutils.
  • Устранены отдельные расхождения с GNU Coreutils в поведении утилит pr, numfmt, join, id, mkdir, fold, sort, stat, od и date.
  • Реализованы специфичные для GNU Coreutils опции: "uname -A", "uname --all-labeled", "cut -F", "cut --whitespace-delimited", "pr --columns", "pr --join-lines", "pr -f".
  • В утилитах mv, cp, rm, chmod, stdbuf проведена работа по усилению безопасности для предотвращения появления уязвимостей, вызванных состоянием гонки, позволяющим изменить данные в момент после проверки корректности информации, но до выполнения операции с ними, например, подменить файл на символическую ссылку в момент между завершением проверки и началом выполнения операции. В контексте использования утилит cp, chmod и mv в системных скриптах, запускаемых с правами root, подобные уязвимости позволяют скопировать или перезаписать произвольные файлы.
  • Проведена работа по устранению аварийных завершений в утилитах split, yes, sort, stat, csplit, ls, od, nl, pr, csplit, dd, touch, tail, tac, who.
  • Реализованы варианты утилит kill и uptime для Windows.
  • Прекращено использование пакетов byteorder, same-file, filetime, winapi-util, file_diff, mockstream, binary-heap-plus, compare, arrayref (недавно был скомпрометирован), exacl и dns-lookup в пользу функций из библиотек std, rustix и windows-sys.
  • В утилиты ls и comm добавлена поддержка свойств локали "collation", позволяющих выполнять сопоставления с учётом смысла символов (например, при сравнении может не приниматься во внимание знак ударения).
  • Улучшена работа с многобайтовыми символами в утилитах nl и cut.

Дополнительно можно отметить публикацию компанией Canonical двух экспериментальных образов контейнеров с начинкой для разработки программ на языке Rust, соответствующих спецификации Dev Container. Первый образ включает Rust 1.93, Cargo, rust-analyzer, Clippy, Rustfmt, Miri (интерпретаор для выявления неопределённого поведения), cargo-auditable (аудит сборок), GCC, Clang, LLD, pkg-config, Just, Git, Vim, Helix, Ripgrep, Hyperfine, Bacon, xh и curl. Второй образ помимо этого содержит пакеты для разработки Ubuntu: git-buildpackage, sbuild, ubuntu-dev-tools, devscripts, dh-make, dh-cargo, autopkgtest, cargo-vendor-filterer.

  1. Главная ссылка к новости (https://github.com/uutils/core...)
  2. OpenNews: Выпуск uutils 0.10, варианта GNU Coreutils на языке Rust
  3. OpenNews: Возвращение в Ubuntu утилиты cp из Rust Coreutils привело к сбою при сборке livecd-rootfs
  4. OpenNews: Microsoft представил Coreutils для Windows, эмулятор терминала Intelligent Terminal и контейнеры в WSL
  5. OpenNews: В Rust Coreutils выявлено 113 уязвимостей. В Ubuntu 26.04 возвращены cp, mv и rm из GNU Coreutils
  6. OpenNews: Уязвимости в snapd и Rust Сoreutils, позволяющие получить root-привилегии в Ubuntu
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/66185-uutils
Ключевые слова: uutils, rust, coreutils
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (14) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним10084 и 1008465039 (?), 10:34, 01/09/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Альтернативы - это всегда хорошо. Раз уж нет заметных новых ОС нынче, новый набор главный утилит - уже что-то интересное
     
     
  • 2.4, Аноним (4), 10:57, 01/09/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Новых ОС не будет, потому что все ОС полагаются на фундамент POSIX. Вон, в Redox попробовали подход "все есть URL", но в итоге обратно к файлам вернулись. Пока не будет изобретен фундаментально новый способ хранения информации ничего ждать не стоит. Лучше дальше идеи POSIX развивать и строить на них ОС.
     
     
  • 3.8, Аноним (8), 11:06, 01/09/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Неверно. GNU/Linux это самая передовая операционная система в мире. Поэтому и нет новых ОС. Что может быть передовее самой, передовой? Ни-че-го.
     
     
  • 4.10, Аноним10084 и 1008465039 (?), 11:26, 01/09/2026 [^] [^^] [^^^] [ответить]  
  • +/
    При всём уважении к Linux, передовое в нем - объем капзатрат и вклад корпораций. Поэтому да, в него пилят все самые современные и крутые фичи, но архитектурно в чём он передовой?
     
     
  • 5.12, Аноним (12), 11:41, 01/09/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >При всём уважении к Linux, передовое в нем - объем капзатрат и вклад корпораций

    Корпорации ничего не вкладывают в GNU/Linux. Корпорации пользуются трудом Сообщества вкладывая в себя.

    >архитектурно в чём он передовой?

    Тем, что аккумулирует в себя все передовые технологии. Кроме тех, которые на практике ничем себя не проявили. На практике микроядра и Майкрософтские объекты это красивая и одновременно бесполезная на практике теория. Линукс и чистый Си работает на практике и для практиков.

     
  • 3.9, Аноним10084 и 1008465039 (?), 11:24, 01/09/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Ну есть Windows NT, она внутри вообще не POSIX, а POSIX-подсистема в ней была чисто для галочки. Насколько я понимаю, в NT для ядра всё есть объект. Но да, состояние ReactOS мы видим - прикольно, мощно (всё-таки энтузиастам довести систему до запуска того, что она запускает - это мощно), но увы недостаточно мощно, чтобы выйти из альфы в маломальскую бету. А без софта и без winapi аналог Windows NT как будто не нужен... Всё в софт упирается, опять же

    Не POSIX ОСи вроде только в сегменте RTOS ещё остались, но это обычно условный марсоход и там весь софт под одну конкретную железку и ее миссию

     
     
  • 4.14, Аноним (12), 11:42, 01/09/2026 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 3.15, Аноним (15), 11:44, 01/09/2026 [^] [^^] [^^^] [ответить]  
  • +/
    В Fuchsia уже попробовали концепцию всё есть drm и реклама, чёт не взлетело тоже. Новые ОС пишут регулярно и я имею в виду каждый год по 5 штук, но нужны ли они кому?
     

  • 1.2, Аноним (2), 10:45, 01/09/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    > Уровень совместимости с эталонным набором тестов GNU Coreutils составил 95.33%

    Это ложь. Эталонного набора тестов GNU Coreutils не существует.

     

  • 1.3, Аноним (3), 10:57, 01/09/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Если на раст - хорошо, сразу плюс.
     
  • 1.5, Аноним (5), 10:57, 01/09/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > Интегрирован новый движок для диагностики проблем, основанный на библиотеке ariadne и выводящий при запуске утилит в терминале наглядные отчёты об ошибках c пометкой аргументов командной строки

    интересно, а сколько поломается софта из-за этого, как было с выводом даты

     
  • 1.6, Аноним (6), 10:59, 01/09/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    По оценке разработчиков прирост производительности при выполнении некоторых операций составил до 31%.
    Проведена оптимизация производительности утилит cp (+32.93%),


    вот так и язык свой оценивают. 32 до 31

     
  • 1.13, Аноним (13), 11:41, 01/09/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Интегрирован новый движок для диагностики проблем

    ахах, вектор задан, но лучше сразу пропускайте ввод через ИИ, на его одобрение.

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2026 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру