lehet hardlinkelt fájlokról listát készíteni?

Azt szeretném, hogy a fájlrendszeren lévő könyvtárakról meg tudjam állapítani, hogy van-e olyan hardlinkelt fájl bennük, aminek valamelyik példánya a könyvtáron kívül van.

A célom az, hogy a backup lemezről néhány könyvtárat másik fájlrendszerre mozgatnék át, de nem szeretném azt, hogy a régiben is és az újon is foglaljon egy-egy példányt egy olyan fájl, ami eddig egy példányban létezett, két (vagy több linkkel).

Nem ismerek olyan eszközt, ami ezt így alapból megmondaná nekem. Ti igen?

Magamtól úgy állnék talán hozzá, hogy megkeresném find-dal azokat a fájlokat, amiknek egyáltalán van hardlinkje (gondolom -links +1), aztán mindre futtatok egy ls -li parancsot, inode szerint sorbarendezem a sorokat és aztán valahogy megszámolom, hogy egy adott inode számhoz annyi sor tartozik-e, mint amennyi linket az ls kiírt hozzá.

Van ennél a vacakolós megoldásnál kevesebbet pepecselős?

Hozzászólások

Szerkesztve: 2021. 05. 05., sze – 07:43

nem ide

üdv: pomm

A 852-es kídlap telepötúsa sikeresen befejezádétt

Mivel masolod a backupra a fileokat? Az rsync mintha kepes lenne kezelni a hardlinkeket, de vannak limitacioi.

Az rsync azt tudja (-H opcióval), hogy ha a forrásban hardlink van, akkor a célban is hardlink lesz. Ezt használtam is eddig.

De én jelenleg azt szeretném tudni, hogy van-e a forrásnak megadott könyvtár(ak)on kívül máshol is hardlink. Az rsync ezt nem nézi (vagy nem találtam erre opciót)

disclaimer: ha valamit beidéztem és alá írtam valamit, akkor a válaszom a beidézett szövegre vonatkozik és nem mindenféle más, random dolgokra.