{"id":183214,"date":"2026-09-01T10:53:23","date_gmt":"2026-09-01T08:53:24","guid":{"rendered":"https:\/\/prohoster.info\/blog\/news\/vypusk-uutils-0-11-varianta-gnu-coreutils-na-yazyke-rust"},"modified":"2026-09-01T10:53:27","modified_gmt":"2026-09-01T08:53:27","slug":"uutils-0-11-release-a-rust-implementation-of-gnu-coreutils","status":"publish","type":"post","link":"https:\/\/prohoster.info\/hr\/blog\/news\/uutils-0-11-release-a-rust-implementation-of-gnu-coreutils","title":{"rendered":"Izdanje uutils 0.11, verzije GNU Coreutils napisane na jeziku Rust","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Objavljeno je izdanje projekta uutils coreutils 0.11.0 (Rust Coreutils), koji razvija alternativu paketu GNU Coreutils, napisanom na jeziku Rust. U sastavu coreutils nalazi se vi\u0161e od stotinu alata, uklju\u010duju\u0107i sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln i ls. Cilj projekta je izraditi multiplatformsku alternativnu implementaciju Coreutils, koja, izme\u0111u ostalog, mo\u017ee raditi na platformama Windows, Redox i Fuchsia.     <\/p>\n<p>Rust Coreutils je prema zadanim postavkama uklju\u010den u izdanje Ubuntu 25.10 i djelomi\u010dno u Ubuntu 26.04. Rust Coreutils se tako\u0111er koristi u distribucijama AerynOS (Serpent OS) i Apertis (koji razvija tvrtka Collabora). Za razliku od GNU Coreutils, implementacija na Rustu distribuira se pod permisivnom MIT licencom, umjesto copyleft GPL licence. Dodatno, ista ekipa programera razvija napisanom na Rustu analogne skupine alata util-linux, diffutils, findutils, procps i acl, kao i programe sed i login.        <\/p>\n<p>U novoj verziji Rust Coreutils:  <\/p>\n<ul>\n<li class=\"l\"> Razina kompatibilnosti s referentnim setom testova GNU Coreutils iznosi 95.33% (bilo 94.44%). Uspje\u0161no je izvr\u0161eno 653 testa, \u0161to je 8 vi\u0161e nego u prethodnoj verziji (645). 22 testa su bila neuspje\u0161na (bilo 29), a 15 testova je propu\u0161teno (bilo 15).\n<li class=\"l\"> Integriran je novi motor za dijagnosticiranje problema, temeljen na biblioteci ariadne, koji pri pokretanju alata u terminalu ispisuje vizualna izvje\u0161\u0107a o gre\u0161kama s ozna\u010davanjem argumenata s naredbenog retka koji su uzrokovali problem. Vizualizacija gre\u0161aka uklju\u010dena je u alate 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 i du. Za isklju\u010divanje dijagnosti\u010dkih izvje\u0161taja predlo\u017eena je varijabla okru\u017eenja UUTILS_DIAG.      <center><img decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/09\/2e9ee81194836b8f3f2fe7505cc84c47.png\" style=\"display:block;margin: 0 auto;\" \/><\/center>\n<li class=\"l\"> Prilikom sastavljanja izdanja aktivirane su optimizacije temeljem rezultata profiliranja koda (PGO \u2014 optimizacija vo\u0111ena profiliranjem), \u0161to omogu\u0107uje generiranje boljeg koda na temelju analize zna\u010dajki izvo\u0111enja programa. Prema procjenama programera, pove\u0107anje performansi prilikom izvr\u0161avanja nekih operacija iznosilo je do 31%.\n<li class=\"l\"> Provedena je optimizacija performansi alata cp (+32.93%), join (2.5 puta br\u017ei od GNU-a zbog isklju\u010divanja suvi\u0161nih usporedbi lokaliteta), od, ptx (+4%), nl, tail, expand, unexpand, numfmt i sort. Kao gre\u0161ke po\u010dele su se smatrati situacije s izvr\u0161avanjem operacija koje su znatno sporije nego u GNU Coreutils.\n<li class=\"l\"> Ispravljena su pojedina\u010dna odstupanja od pona\u0161anja GNU Coreutils za alate pr, numfmt, join, id, mkdir, fold, sort, stat, od i date.\n<li class=\"l\"> Implementirane su specifi\u010dne opcije za GNU Coreutils: \u00abuname -A\u00bb, \u00abuname \u2014all-labeled\u00bb, \u00abcut -F\u00bb, \u00abcut \u2014whitespace-delimited\u00bb, \u00abpr \u2014columns\u00bb, \u00abpr \u2014join-lines\u00bb, \u00abpr -f\u00bb.\n<li class=\"l\"> Provode se mjere ja\u010danja sigurnosti u alatima mv, cp, rm, chmod, stdbuf kako bi se sprije\u010dile ranjivosti uzrokovane uvjetima trke koji omogu\u0107uju promjene podataka nakon provjere valjanosti, ali prije izvr\u0161enja operacija, npr. zamjena datoteke simboli\u010dkom vezom izme\u0111u zavr\u0161etka provjere i po\u010detka izvr\u0161enja operacije. U kontekstu kori\u0161tenja alata cp, chmod i mv u sistemskim skriptama pokrenutim s root prava, ovakve ranjivosti omogu\u0107uju kopiranje ili prepisivanje proizvoljnih datoteka.\n<li class=\"l\"> Poduzete su mjere za uklanjanje iznenadnog prekida rada u alatima split, yes, sort, stat, csplit, ls, od, nl, pr, csplit, dd, touch, tail, tac, who.\n<li class=\"l\"> Implementirane su verzije alata kill i uptime za Windows.\n<li class=\"l\"> Prekinuta je upotreba paketa byteorder, same-file, filetime, winapi-util, file_diff, mockstream, binary-heap-plus, compare, arrayref (nedavno je bio kompromitiran), exacl i dns-lookup u korist funkcija iz biblioteka std, rustix i windows-sys.\n<li class=\"l\"> U alate ls i comm dodana je podr\u0161ka za svojstva lokaliteta \u00abcollation\u00bb, \u0161to omogu\u0107uje usporedbe uzimaju\u0107i u obzir zna\u010denje znakova (na primjer, znak naglaska mo\u017ee se ignorirati prilikom usporedbe).\n<li class=\"l\"> Pobolj\u0161ano je rukovanje vi\u0161ebajtnih znakova u alatima nl i cut.      <\/ul>\n<p>Dodatno se mo\u017ee istaknuti objavljivanje dva eksperimentalna kontejnerska imaga od strane Canonicala za razvoj aplikacija na jeziku Rust, sukladno specifikaciji Dev Container. Prvi image uklju\u010duje Rust 1.93, Cargo, rust-analyzer, Clippy, Rustfmt, Miri (interpreter za pronala\u017eenje neodre\u0111enog pona\u0161anja), cargo-auditable (audit gradnji), GCC, Clang, LLD, pkg-config, Just, Git, Vim, Helix, Ripgrep, Hyperfine, Bacon, xh i curl. Drugi image osim toga sadr\u017ei pakete za razvoj za Ubuntu: git-buildpackage, sbuild, ubuntu-dev-tools, devscripts, dh-make, dh-cargo, autopkgtest, cargo-vendor-filterer.<br \/>\n<br \/>Izvor: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=66185\">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.11.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":10,"featured_media":183216,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-183214","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.5 - 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.11.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=\"Alexander Kovalev\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/hr\/blog\/news\/uutils-0-11-release-a-rust-implementation-of-gnu-coreutils\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.5\" \/>\n\t\t<meta property=\"og:locale\" content=\"hr_HR\" \/>\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 uutils 0.11, \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430 GNU Coreutils \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust | 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.11.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\/hr\/blog\/news\/uutils-0-11-release-a-rust-implementation-of-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=\"2026-09-01T08:53:24+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-09-01T08:53:27+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Izdanje uutils 0.11, verzije GNU Coreutils na jeziku Rust | ProHoster","description":"Objavljeno je izdanje projekta uutils coreutils 0.11.0 (Rust Coreutils), koji razvija analog paketa GNU Coreutils napisanog na jeziku Rust.","canonical_url":"https:\/\/prohoster.info\/hr\/blog\/news\/uutils-0-11-release-a-rust-implementation-of-gnu-coreutils","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"hr_HR","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 uutils 0.11, \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430 GNU Coreutils \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust | 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.11.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\/hr\/blog\/news\/uutils-0-11-release-a-rust-implementation-of-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":"2026-09-01T08:53:24+00:00","article:modified_time":"2026-09-01T08:53:27+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"183214","title":null,"description":null,"keywords":null,"keyphrases":{"focus":[],"additional":[]},"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":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-09-09 10:59:27","updated":"2026-09-09 10:59:27","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts\/183214","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/comments?post=183214"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts\/183214\/revisions"}],"predecessor-version":[{"id":183215,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts\/183214\/revisions\/183215"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/media\/183216"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/media?parent=183214"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/categories?post=183214"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/tags?post=183214"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}