Duplikátumok keresése

Adatmentések méretét csökkentjük le, symlink és hardlink segítségével.

Adatmentés, archiválás sok helyet foglal el. Már bemutattam egy oldalt, ahol rengeteg jó CLI parancs található. Épp a géptakarítás előtt találtam meg azt a programot, ami nekem éppen akkor nagyon jól jött.

Én is, ahogy az eredeti cikkben is írja a szerző sokszor egy-egy dokumentum könyvtárat simán átmásolok a mentési lemezre, dátumozva:

  • 20180823_Dokumentumok
  • 20181013_Dokumentumok
  • 20181201_Dokumentumok stb.

Ebben rengeteg redundáns fájl van, ami mindegyikben ott van, de semmit nem változtattam rajta. Ez felesleges tárhelyet vesz el. Igencsak jól jött a cikk, ami bemutatta a

rdfind

programot. A telepítése egyszerű:

apt-get install
rdfind

Természetesen emelt joggal, azaz sudo, vagy su….

A commandline (https://commandline.blog.hu/) oldalán megtalálható egyszerű paranccsal indítottam a projektet:

rdfind -makehardlinks true 20180823_Dokumentumok 20181013_Dokumentumok 20181201_Dokumentumok

Listázás után ezt kaptam:

  • Now scanning “20180823_Dokumentumok”, found 3582 files.
  • Now scanning “20181013_Dokumentumok”, found 3653 files.
  • Now scanning “20181201_Dokumentumok”, found 2779 files.
  • Now have 10014 files in total.
  • Removed 2779 files due to nonunique device and inode.
  • Now removing files with zero size from list…removed 9 files
  • Total size is 5480061567 bytes or 5 Gib

Az összes méretet, és a darabszámot kiírta. Ezt jegyezzük meg!

  • Now sorting on size:removed 277 files due to unique sizes from list.9728 files left.
  • Now eliminating candidates based on first bytes:
  • removed 9 files from list.9719 files left.
  • Now eliminating candidates based on last bytes:removed 1 files from list.9718 files left.
  • Now eliminating candidates based on md5 checksum:removed 1 files from list.9717 files left.
  • It seems like you have 9717 files that are not unique
  • Totally, 3 Gib can be reduced.
  • Now making results file results.txt
  • Now making hard links.
  • Making 6990 links.

Ez, ha összeadjuk tízezer fájl, amit ki is ír, és 5giga anyag. Ez lefutott 5 perc alatt. Azaz nem egy hosszú idő, és jócskán összement a könyvtár tartalma:

 Total size is
2247532218 bytes or 2 Gib

Amit a

du -bs

is megerősít:

  • laci@laci:/media/laci/lemez_3/user/Dokumentum_mentés/2018
  • $ du -bs
  • 2249449578

Öt perc alatt elég szép eredmény, és csak annyit tettünk, hogy egy paranccsal a duplikátumokból hard linket csináltunk.

Így lényegen kisebb helyen pontosan ugyanúgy tudjuk tárolni az adatainkat, és a sokszor meglévő fájlok nem sokszorozzák meg a tárhely szükséglelet.

Arra figyeljünk, hogy ha átmásoljuk a könyvtárakat máshova, akkor visszaáll az eredeti méret! A hard link fel lesz oldva és a fájt másoljuk! Így hiába lett két Giga a helyfelhasználás, nem fér rá egy DVD-re.

Természetesen nem csak ennyit tud a rdfind. Aki ennél többet szeretne használni, annak a help-je segít. Tud duplikátumokat törölni, ami nem mindig jó megoldás, hiszen akkor egyes könyvtárakból hiányoznak a fájlok, így a mentést nehéz lesz kezelni!

Tud symlinket is létrehozni, előtte a méret:

$ du -bs

5484718719

Majd a parancs:

$ rdfind
-makesymlinks true 20180823_Dokumentumok 20181013_Dokumentumok
20181201_Dokumentumok 20181201_Dokumentumok
  • Now scanning “20180823_Dokumentumok”, found 3582 files.
  • Now scanning “20181013_Dokumentumok”, found 3653 files.
  • Now scanning “20181201_Dokumentumok”, found 2779 files.
  • Now scanning “20181201_Dokumentumok”, found 2779 files.
  • Now have 12793 files in total.
  • Removed 2779 files due to nonunique device and inode.
  • Now removing files with zero size from list…removed 9 files
  • Total size is 5480061567 bytes or 5 Gib
  • Now sorting on size:removed 277 files due to unique sizes from list.9728 files left.
  • Now eliminating candidates based on first bytes:removed 9 files from list.9719 files left.
  • Now eliminating candidates based on last bytes:removed 1 files from list.9718 files left.
  • Now eliminating candidates based on md5 checksum:removed 1 files from list.9717 files left.
  • It seems like you have 9717 files that are not unique
  • Totally, 3 Gib can be reduced.
  • Now making results file results.txt
  • Now making symbolic links. creating
  • Making 6990 links.

Az eredmény is igazolja:

$ du -bs

2254518804

Ezt már ki is írhatjuk DVD-re, ha éppen azt akarjuk!

Ennyi!

Illetve nem. Miután ilyen szépen muzsikált a program, egy nagyobb, sok redundáns állományt tartalmazó mentést (30GB) is átvizsgáltattam. Ez egy óra volt, és a helyfoglalás 30%-ak kisebb lett. Hm… Igen kellemes kis programnak gondolom!