Megjelent a cpx – gyorsabb, modernebb alternatíva a Linux cp parancs mellé

enlightened Ez az oldal a közösségért készül. heart Kövess minket máshol is:  Linux Mint Magyar Közösség a Mastodon-on  Telegram csatorna – csak hírek  Beszélgessünk a Telegram – Linux csevegő csoport  Hírek olvasása RSS segítségével  Linux Mint Hivatalos Magyar Közösség a Facebook-on      Linux Mint Baráti Kör a Facebook-on
wink Ha hasznosnak találod, és szeretnéd, hogy folytatódjon, támogasd a munkát Ko-fi vagy Paypal segítségével. laugh

kami911 képe

A Linuxon megszokott cp parancs megbízható, de nagyobb másolási feladatoknál kevés visszajelzést és korlátozott vezérlést kínál. A cpx egy új, Rust-alapú parancssori eszköz, amely a teljesítményre, az átláthatóságra és a konfigurálhatóságra helyezi a hangsúlyt. Nem lecserélni akarja a cp-t, hanem kiegészíteni ott, ahol az már kényelmetlenné válik. A projekt jelenleg kizárólag Linuxra érhető el, és modern kernelképességeket használ a gyorsabb és megbízhatóbb fájlmásolás érdekében.

A fájlmásolás a Unix-szerű rendszerek egyik legalapvetőbb művelete, amelyet évtizedek óta a cp parancs lát el. Bár stabil és mindenhol elérhető, nagy könyvtárfák, megszakított másolások vagy hosszú ideig futó műveletek esetén kevés információt ad arról, mi történik éppen. A cpx erre a problémára kínál modern megközelítést: nem a kompatibilitást, hanem a hatékonyságot és a felhasználói visszajelzést helyezi előtérbe.

A projekt által közzétett mérések szerint a cpx bizonyos esetekben négyszer-ötször gyorsabb másolási időt ér el, mint a hagyományos cp, különösen sok fájlból álló adathalmazoknál. Ennek egyik kulcsa a párhuzamos feldolgozás, amely jobban kihasználja a többmagos processzorokat és a gyors háttértárakat.

Párhuzamos másolás és részletes állapotjelzés

A cpx egyik legfontosabb újítása a párhuzamos fájlmásolás, amelynél több másolási művelet fut egyszerre. A párhuzamosság mértéke szabályozható, így a felhasználó az adott rendszer képességeihez igazíthatja a működést. Ez különösen NVMe SSD-k vagy nagy sebességű RAID-tömbök esetén jelent érezhető előnyt.

A másolás állapotáról beépített folyamatjelző sávok adnak visszajelzést, amelyek valós időben mutatják az előrehaladást. A megjelenítés testre szabható, akár globális beállításként, akár projektenként, ami jól jöhet automatizált vagy hosszabb ideig futó feladatoknál.

Megszakítás utáni folytatás és kizárási szabályok

A cpx támogatja a megszakított másolások folytatását. Ellenőrzőösszegek (checksum) segítségével felismeri a már hibátlanul átmásolt fájlokat, és azokat automatikusan kihagyja, így nem kell elölről kezdeni egy hosszú műveletet.

Emellett a program kizárási mintákat is kezel, a .gitignore-hoz hasonló szabályrendszerrel. Ennek segítségével egyszerűen kihagyhatók például verziókezelési könyvtárak, fordítási maradványok vagy ideiglenes fájlok. Ezek a szabályok megadhatók parancssorból vagy konfigurációs fájlokban is.

Linux-specifikus funkciók és tartós beállítások

A cpx kifejezetten Linuxra készült, és kihasználja a rendszer fejlettebb fájlrendszer-képességeit. Támogatja többek között a kiterjesztett attribútumokat, a SELinux kontextusok megőrzését, az időbélyegeket, a tulajdonos- és jogosultsági adatokat, valamint a hard linkeket. Megfelelő fájlrendszereken (például Btrfs) opcionálisan copy-on-write reflinkek is használhatók, ami tovább gyorsíthatja a másolást és csökkentheti a tárhelyigényt.

A program viselkedése tartós konfigurációs fájlokban is rögzíthető, akár rendszer-, felhasználó- vagy projektszinten. Beállítható többek között a rekurzív másolás alapértelmezése, a párhuzamosság szintje, a folyamatjelzők stílusa vagy az attribútumkezelés módja.

Telepítés és jövőbeli tervek

A cpx telepítése jelenleg egy egyszerű shell szkripttel történik, ami gyorsan használhatóvá teszi az eszközt. Bár a fejlesztési ütemtervben szerepel macOS és Windows támogatás is, a jelenlegi verzió kizárólag Linuxra fókuszál, és ott igyekszik a lehető legtöbbet kihozni a modern kernel- és fájlrendszer-funkciókból.

curl -fsSL https://raw.githubusercontent.com/11happy/cpx/main/install.sh | bash

A cpx jó példája annak, hogyan lehet egy jól ismert, klasszikus Unix-eszközt újragondolni anélkül, hogy annak helyét erőszakkal átvenné. Aki gyakran dolgozik nagy mennyiségű fájllal, vagy fontos számára a sebesség és az átláthatóság, annak érdemes közelebbről is megismerkednie ezzel az új eszközzel.