Dezvoltatorii Ubuntu au reîntrodus varianta utilitarului cp din pachetul GNU Coreutils după ce a fost identificată o incompatibilitate în implementarea cp din pachetul Rust Coreutils, care a dus la erori în scriptul de compilare pentru imagini Live (livecd-rootfs).
În versiunea Ubuntu 24.04, din cauza vulnerabilităților identificate, utilitarele cp, mv și rm din GNU Coreutils au fost reintroduse, dar în actualizarea pachetului coreutils-from-uutils 0.0.0~ubuntu26 a fost reluată utilizarea utilitarelor din pachetul Rust Coreutils. Problema a apărut din cauza apelului în scriptul de compilare al utilitarului cp cu opțiunile „-afL”, care erau gestionate corect în GNU Coreutils, dar în Rust Coreutils au dus la eroarea „cp: -r not specified; omitting directory .”.
Eroarea a fost cauzată de un comportament diferit în gestionarea opțiunilor conflictuale „-L” și „-a”. Opțiunea „-L” indică de-referirea link-urilor simbolice, în timp ce opțiunea compusă „-a”, care poate fi înlocuită cu „-dR --preserve=all”, conține opțiunea „-d”, care interzice de-referirea link-urilor simbolice. În Rust Coreutils, opțiunea compusă „-a” era complet eliminată în loc de a se elimina doar flagul conflictual „-d”, ceea ce ducea la absența flage-ului „-R”, necesar pentru copierea recursivă a directorilor, precum și a flage-ului „--preserve=all”, folosit pentru păstrarea atributelor anterioare în copie.
Sursa: opennet.ro
