Rengetegen backupolnak úgy, hogy időnként kimásolják a fontos alkönyvtárak tartalmát egy külső drive-ra egy új alkönyvtárba. A módszer nagy hátránya, hogy ha egy fájl nem változott az előző mentés óta, akkor az kétszer is ott lesz a külső drive-on, feleslegesen foglalva a helyet.
Az ilyen fájlokat persze megtalálhatjuk pl. fdupes segítségével, de ezután kézzel kell törölnünk ezeket, ráadásul akkor az egyik mentésünk hiányos lesz. Hasznosabb ilyen esetekben az rdfind.
Nézzünk két alkönyvárat:
$ ls -l *
1:
total 15980
-rw-rw-rw- 1 user live 3223592 Oct 9 1998 track11.mp3
-rw-rw-rw- 1 user live 5819536 Oct 9 1998 track13.mp3
-rw-rw-rw- 1 user live 4800970 Oct 9 1998 track15.mp3
-rw-rw-rw- 1 user live 2507210 Oct 9 1998 track1.mp3
2:
total 23036
-rw-rw-rw- 1 user live 5819536 Oct 9 1998 song13.mp3
-rw-rw-rw- 1 user live 4800970 Oct 9 1998 song15.mp3
-rw-rw-rw- 1 user live 4693238 Oct 9 1998 song3.mp3
-rw-rw-rw- 1 user live 5647437 Oct 9 1998 song4.mp3
-rw-rw-rw- 1 user live 1272140 Oct 9 1998 song5.mp3
-rw-rw-rw- 1 user live 1343611 Oct 9 1998 song7.mp3
Bár a fájlnevek eltérnek, a fájlhosszból látszik, hogy pl. track15.mp3 és song15.mp3 ugyanazok a fájlok.
Az alkönyvárak helyfoglalása:
$ du -bs *
16355404 1
23581028 2
Kerestessük meg az azonos fájlokat rdfinddal, és cseréljük le ezeket hard linkre:
$ rdfind -makehardlinks true 1 2
Now scanning "1", found 4 files.
Now scanning "2", found 6 files.
Now have 10 files in total.
Removed 0 files due to nonunique device and inode.
Now removing files with zero size from list...removed 0 files
Total size is 39928240 bytes or 38 MiB
Now sorting on size:removed 6 files due to unique sizes from list.4 files left.
Now eliminating candidates based on first bytes:removed 0 files from list.4 files left.
Now eliminating candidates based on last bytes:removed 0 files from list.4 files left.
Now eliminating candidates based on md5 checksum:removed 0 files from list.4 files left.
It seems like you have 4 files that are not unique
Totally, 10 MiB can be reduced.
Now making results file results.txt
Now making hard links.
Making 2 links.
A listázásál sok változást nem látunk, de a linkszámlálóból látszik, hogy már hard linkjeink vannak:
1:
total 15980
-rw-rw-rw- 1 user live 3223592 Oct 9 1998 track11.mp3
-rw-rw-rw- 2 user live 5819536 Oct 9 1998 track13.mp3
-rw-rw-rw- 2 user live 4800970 Oct 9 1998 track15.mp3
-rw-rw-rw- 1 user live 2507210 Oct 9 1998 track1.mp3
2:
total 23036
-rw-rw-rw- 2 user live 5819536 Oct 9 1998 song13.mp3
-rw-rw-rw- 2 user live 4800970 Oct 9 1998 song15.mp3
-rw-rw-rw- 1 user live 4693238 Oct 9 1998 song3.mp3
-rw-rw-rw- 1 user live 5647437 Oct 9 1998 song4.mp3
-rw-rw-rw- 1 user live 1272140 Oct 9 1998 song5.mp3
-rw-rw-rw- 1 user live 1343611 Oct 9 1998 song7.mp3
Ha külön-külön nézzük a helyfoglalást, akkor nincs változás:
$ du -bs 1
16355404 1
$ du -bs 2
23581028 2
de ha egyben, akkor látszik, hogy sok helyet megspóroltunk:
$ du -bs *
16355404 1
12960522 2
Azt azért érdemes tudni, hogy sok fájl tartalmazó alkönyvtáraknál rdfind elég lassú.