Ubuntu 26.10 passa cp, mv e rm para coreutils em Rust
O Ubuntu 26.10 entrega cp, mv e rm ao Rust. Uma auditoria com 113 problemas deixou os três fora do 26.04 LTS; a versão estável chega em 15 de outubro.
3 min de leitura

Em números
- issues Zellic's audit found in uutils, 44 of them with CVEs
- 113
- Ubuntu 26.10 stable release date
- Oct 15
- commands moving in this release: cp, mv and rm
- 3
O Ubuntu 26.10 substitui cp, mv e rm pelas suas implementações em Rust, o que conclui uma mudança que a distribuição começou há um ano. O Phoronix relata que esses eram os três últimos comandos GNU restantes, e que os problemas de compatibilidade que os travavam já foram corrigidos a montante no uutils. A versão estável é esperada para 15 de outubro de 2026.
Esses três comandos são os que os seus scripts chamam mais. Isso faz desta a versão em que uma diferença discreta de comportamento tem mais chance de aparecer em algo que você já executa.
O que mudou e o que já tinha mudado
As versões anteriores fizeram a parte mais fácil. O OMG! Ubuntu relata que o Ubuntu 26.10, de codinome Stonking Stingray, já traz um conjunto completo de utilitários básicos em Rust, incluindo ls, cat, chmod e du ao lado dos três recém-chegados.
O Ubuntu 25.10 foi a primeira versão a trazer os utilitários em Rust, e também tornou o sudo-rs a ferramenta padrão para elevação de privilégios, segundo o It's FOSS. Os coreutils são os pequenos programas que fazem o trabalho diário de um sistema Unix: copiar arquivos, listar diretórios, mudar permissões. O projeto uutils está reescrevendo-os em Rust. O Rust evita classes inteiras de erros de memória em tempo de compilação.
O objetivo declarado do projeto é que você não perceba. As versões do uutils pretendem ser substituições diretas e tratam qualquer divergência do comportamento do GNU como um bug.
Por que cp, mv e rm esperaram
Eles foram retirados do Ubuntu 26.04 LTS por um tipo específico de falha. O OMG! Ubuntu e o It's FOSS relatam ambos problemas de TOCTOU nas versões do uutils. TOCTOU significa time-of-check to time-of-use: o programa verifica um arquivo e depois age sobre ele, e um atacante troca o arquivo na brecha entre esses dois passos.
A Canonical contratou a empresa de segurança Zellic para auditar o código. O It's FOSS relata que a auditoria ocorreu em duas rodadas entre dezembro de 2025 e março de 2026, encontrou 113 problemas, e que 44 deles receberam número de CVE. O site também diz que a grande maioria já foi resolvida.
| Item | Detalhe |
|---|---|
| Versão | Ubuntu 26.10, Stonking Stingray |
| Muda agora | cp, mv, rm |
| Já migrado | ls, cat, chmod, du, e sudo-rs desde o 25.10 |
| Auditoria | Zellic, duas rodadas, dez. 2025 a mar. 2026: 113 problemas, 44 CVEs |
| Caminho de volta | Instalar o pacote coreutils-from-gnu |
| Datas | Beta mais adiante em setembro de 2026, estável em 15 de outubro de 2026 |
Esse histórico de auditoria é a razão para tratar isso como uma mudança real, e não cosmética. Uma reescrita dos comandos que apagam e movem arquivos acumulou 44 CVEs antes de sair. É um sinal tranquilizador de que alguém olhou. Também é um lembrete de que esses não são programas triviais.
O que isso significa para os desenvolvedores
Teste primeiro os scripts que rodam como root. Esses três comandos ficam dentro de etapas postinstall de pacotes, de rotinas de backup e de scripts de implantação. Nesses lugares, uma opção ausente ou um código de saída alterado quebra uma máquina, em vez de imprimir uma mensagem confusa. O It's FOSS observa que algumas opções do Rust ainda podem estar ausentes ou se comportar de forma diferente das equivalentes do GNU. O que precisa ser verificado são as suas próprias opções, não os casos comuns.
Existe uma saída documentada, e ela cabe em um pacote. Instalar coreutils-from-gnu devolve as versões do GNU. Fixe isso na construção da sua imagem se precisar de uma versão em que nada mude nesses comandos, e trate como plano de retorno, não como posição permanente.
Suas imagens de CI são o lugar onde isso chega antes do seu notebook. Uma versão intermediária como a 26.10 não é o que a maioria dos parques de produção roda, mas é o que muitas imagens base de contêiner e executores de teste acompanham. Um pipeline que depende silenciosamente do comportamento do GNU vai falhar ali primeiro. Esse também é o lugar mais barato para descobrir.
O intervalo até o 26.04 LTS é a parte a observar. Esses comandos ficaram fora do LTS, então as correções que chegam agora são o que um LTS futuro vai herdar. É a mesma direção de o Rust se tornar linguagem de primeiro nível na Microsoft e da reescrita em Rust do Mold, que quer ser o ligador padrão do Linux. As reescritas estão chegando nas partes de um sistema que ninguém escolhe usar.
Fontes
Artigos relacionados

Git 3.0 adotará SHA-256 por padrão e exigirá Rust
O Git 2.56-rc0 saiu em 11 de setembro de 2026, e a versão 3.0 seguinte muda os repositórios novos para SHA-256, reftable e o ramo main.

Beta do Fedora 45 troca o console do kernel pelo kmscon
O Fedora 45 tira o console de texto do kernel. Três ferramentas param de funcionar, o beta saiu em 15 de setembro e o fbcon fica como reserva.

Reescrita do mold em Rust quer ser o linker padrão do Linux
O mold faz a ligação 4,9 vezes mais rápido que o LLVM lld. Seu autor o está reescrevendo em Rust e quer que as distribuições o instalem como /usr/bin/ld.