{"id":147854,"date":"2025-11-10T11:12:10","date_gmt":"2025-11-10T09:12:10","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/vypusk-rust-coreutils-0-4-rashozhdenie-povedeniya-utility-du-v-uutils-i-gnu-coreutils"},"modified":"2025-11-10T11:12:10","modified_gmt":"2025-11-10T09:12:10","slug":"vypusk-rust-coreutils-0-4-rashozhdenie-povedeniya-utility-du-v-uutils-i-gnu-coreutils","status":"publish","type":"post","link":"https:\/\/prohoster.info\/it\/blog\/news\/vypusk-rust-coreutils-0-4-rashozhdenie-povedeniya-utility-du-v-uutils-i-gnu-coreutils","title":{"rendered":"Rilascio di Rust Coreutils 0.4. Discrepanza nel comportamento dell\u2019utilit\u00e0 du tra uutils e GNU Coreutils","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Pubblicata la versione 0.4.0 del progetto uutils coreutils (Rust Coreutils), che sviluppa un'alternativa al pacchetto GNU Coreutils, scritta in Rust. Il pacchetto coreutils include oltre cento utilit\u00e0, tra cui sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln e ls. L'obiettivo del progetto \u00e8 creare un'implementazione cross-platform alternativa di Coreutils, in grado di funzionare su piattaforme Windows, Redox e Fuchsia.     <\/p>\n<p>Rust Coreutils \u00e8 incluso di default nella versione di Ubuntu 25.10 ed \u00e8 utilizzato nelle distribuzioni AerynOS (Serpent OS) e Apertis (sviluppato da Collabora). A differenza di GNU Coreutils, l'implementazione in Rust \u00e8 distribuita sotto una licenza permissiva MIT, invece della licenza copyleft GPL. Inoltre, lo stesso team di sviluppatori sta sviluppando versioni scritte in Rust degli strumenti util-linux, diffutils, findutils e procps, oltre ai programmi sed e login.          <\/p>\n<p>Nella nuova versione di Rust Coreutils:  <\/p>\n<ul>\n<li class=\"l\"> Migliorata la compatibilit\u00e0 con il set di test di riferimento GNU Coreutils, durante il quale sono stati eseguiti con successo 544 test, 12 in pi\u00f9 rispetto alla versione precedente (532). 56 (68) test hanno avuto esito negativo, mentre 33 (33) test sono stati saltati. \u00c8 stato dichiarato un livello di compatibilit\u00e0 del 85,80% (precedentemente 83,91%).\n<li class=\"l\"> Nell'utilit\u00e0 data \u00e8 stata migliorata la compatibilit\u00e0 con GNU date per quanto riguarda la gestione dei fusi orari (\u00e8 stata aggiunta la possibilit\u00e0 di specificare le abbreviazioni dei fusi orari nell'opzione \u2014set).\n<li class=\"l\"> Nell'utilit\u00e0 factor \u00e8 stato utilizzato il pacchetto num_prime per accelerare la fattorizzazione dei tipi u64\/u128.\n<li class=\"l\"> Nell'utilit\u00e0 tsort l'implementazione dell'algoritmo di attraversamento DFS \u00e8 stata convertita da un metodo ricorsivo a uno iterativo per prevenire il sovraccarico dello stack.\n<li class=\"l\"> Nell'utilit\u00e0 cksum \u00e8 stato implementato il supporto per gli hash sha2 e sha3. Sono stati aggiunti test per monitorare le variazioni delle prestazioni di cksum. La funzionalit\u00e0 hashsum \u00e8 stata trasferita in cksum.\n<li class=\"l\"> Nell'utilit\u00e0 mkdir \u00e8 stato risolto un problema di overflow dello stack che portava a terminazioni anomale durante la creazione di un gran numero di directory annidate (oltre 200).\n<li class=\"l\"> Nelle utilit\u00e0 stdbuf e uptime \u00e8 stato implementato il supporto per la piattaforma OpenBSD.\n<li class=\"l\"> Migliorata la compilazione e il test sulla piattaforma FreeBSD.\n<li class=\"l\"> Introdotte miglioramenti generali per aumentare la portabilit\u00e0.\n<li class=\"l\"> Ampliate le funzionalit\u00e0, risolti problemi e aggiunte opzioni mancanti per le utilit\u00e0 base64, cat, chown, chsum, date, dd, du, factor, hashsum, install, ls, mkdir, od, printenv, printf, readlink, stdbuf, timeout, truncate, tsort, uptime, uudoc.      <\/ul>\n<p>Inoltre, si pu\u00f2 notare una divergenza nel comportamento dell'utilit\u00e0 \u00abdu\u00bb tra i pacchetti uutils e GNU Coreutils, emersa dopo il passaggio di Ubuntu 25.10 a uutils. Gli sviluppatori non hanno ancora deciso se trattare questa divergenza come un errore, poich\u00e9 da un lato il comportamento di uutils ha una logica e il pacchetto di test di GNU Coreutils non presenta problemi, dall'altro lato la non compatibilit\u00e0 con GNU Coreutils deve essere trattata come un errore e il comportamento di Busybox \u00e8 conforme a GNU Coreutils.    <\/p>\n<p>Un comportamento diverso si osserva quando si specificano pi\u00f9 directory come argomenti per l'utilit\u00e0 \u00abdu\u00bb, nel caso in cui alcune delle directory siano sottodirectory di altre (ad esempio, \/var e \/var\/log). Uutils mostra la dimensione effettiva di ciascuna directory separatamente e nella riga finale esprime la dimensione totale di tutte le directory specificate. GNU Coreutils mostra nella riga finale la dimensione effettiva occupata dalle directory specificate su disco, ma nell'elenco separato mostra le dimensioni di ciascuna directory escluse le sottodirectory, il che porta a una dimensione totale inferiore a quella effettiva. Inoltre, i valori stampati da GNU Coreutils e Busybox cambiano a seconda dell'ordine in cui vengono specificate le directory.       <\/p>\n<p>Ad esempio, controllando la dimensione delle directory \u00ab\/var\/log\u00bb e \u00ab\/var\u00bb, le cui dimensioni effettive sono 1540 e 35495 byte, in GNU Coreutils verr\u00e0 visualizzato:         du -smc \/var\/log \/var     1540    \/var\/log     33955   \/var # inferiore a quella effettiva     35495   totale       du -smc \/var \/var\/log      35495   \/var # mostrata solo \/var e non \/var\/log     35495   totale      <\/p>\n<p>In uutils:       du -smc \/var\/log \/var     1540    \/var\/log     35495   \/var     37033   totale # superiore al reale, ma corrisponde alla somma di \/var e \/var\/log       du -smc \/var \/var\/log     35495   \/var       1540    \/var\/log     37033   totale # superiore al reale, ma corrisponde alla somma di \/var e \/var\/log      <\/p>\n<p>In Busybox:       du -smc \/var\/log \/var     1540    \/var\/log     33955   \/var # inferiore al reale     35495   totale       du  -smc \/var \/var\/log     35495   \/var # mostrato solo \/var e non mostrato \/var\/log     35495   totale<br \/>\n<br \/>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=64214\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u043f\u0440\u043e\u0435\u043a\u0442\u0430 uutils coreutils 0.4.0 (Rust Coreutils), \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0430\u043d\u0430\u043b\u043e\u0433 \u043f\u0430\u043a\u0435\u0442\u0430 GNU Coreutils, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust. \u0412 \u0441\u043e\u0441\u0442\u0430\u0432 coreutils \u0432\u0445\u043e\u0434\u0438\u0442 \u0431\u043e\u043b\u0435\u0435 \u0441\u0442\u0430 \u0443\u0442\u0438\u043b\u0438\u0442, \u0432\u043a\u043b\u044e\u0447\u0430\u044f sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln \u0438 ls. \u0426\u0435\u043b\u044c\u044e \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043a\u0440\u043e\u0441\u0441\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435\u043d\u043d\u043e\u0439 \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 Coreutils, \u0441\u0440\u0435\u0434\u0438 \u043f\u0440\u043e\u0447\u0435\u0433\u043e \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043d\u0430 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430\u0445 Windows, Redox [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-147854","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u043f\u0440\u043e\u0435\u043a\u0442\u0430 uutils coreutils 0.4.0 (Rust Coreutils), \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0430\u043d\u0430\u043b\u043e\u0433 \u043f\u0430\u043a\u0435\u0442\u0430 GNU Coreutils, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/it\/blog\/news\/vypusk-rust-coreutils-0-4-rashozhdenie-povedeniya-utility-du-v-uutils-i-gnu-coreutils\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"it_IT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a Rust Coreutils 0.4. \u0420\u0430\u0441\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0443\u0442\u0438\u043b\u0438\u0442\u044b du \u0432 uutils \u0438 GNU Coreutils | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u043f\u0440\u043e\u0435\u043a\u0442\u0430 uutils coreutils 0.4.0 (Rust Coreutils), \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0430\u043d\u0430\u043b\u043e\u0433 \u043f\u0430\u043a\u0435\u0442\u0430 GNU Coreutils, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/it\/blog\/news\/vypusk-rust-coreutils-0-4-rashozhdenie-povedeniya-utility-du-v-uutils-i-gnu-coreutils\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2025-11-10T09:12:10+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2025-11-10T09:12:10+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Rilascio Rust Coreutils 0.4. Divergenza nel comportamento dell'utilit\u00e0 du in uutils e GNU Coreutils | ProHoster","description":"\u00c8 stato pubblicato il rilascio del progetto uutils coreutils 0.4.0 (Rust Coreutils), che sviluppa un equivalente del pacchetto GNU Coreutils, scritto in linguaggio Rust.","canonical_url":"https:\/\/prohoster.info\/it\/blog\/news\/vypusk-rust-coreutils-0-4-rashozhdenie-povedeniya-utility-du-v-uutils-i-gnu-coreutils","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"it_IT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a Rust Coreutils 0.4. \u0420\u0430\u0441\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0443\u0442\u0438\u043b\u0438\u0442\u044b du \u0432 uutils \u0438 GNU Coreutils | ProHoster","og:description":"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u043f\u0440\u043e\u0435\u043a\u0442\u0430 uutils coreutils 0.4.0 (Rust Coreutils), \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0430\u043d\u0430\u043b\u043e\u0433 \u043f\u0430\u043a\u0435\u0442\u0430 GNU Coreutils, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust.","og:url":"https:\/\/prohoster.info\/it\/blog\/news\/vypusk-rust-coreutils-0-4-rashozhdenie-povedeniya-utility-du-v-uutils-i-gnu-coreutils","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2025-11-10T09:12:10+00:00","article:modified_time":"2025-11-10T09:12:10+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"147854","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 15:51:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 15:51:19","updated":"2026-01-23 15:51:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/147854","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=147854"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/147854\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=147854"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=147854"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=147854"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}