4 noderīgi rīki, lai atrastu un izdzēstu dublētus failus Linux


Mājas direktorija vai pat sistēmas sakārtošana var būt īpaši sarežģīta, ja jums ir ieradums lejupielādēt no interneta visa veida sīkumus.

Bieži vien var gadīties, ka esat lejupielādējis vienu un to pašu mp3, pdf, epub (un visa veida citus failu paplašinājumus) un nokopējis tos dažādos direktorijos. Tas var izraisīt jūsu direktoriju pārblīvēšanu ar visa veida bezjēdzīgiem dublētiem materiāliem.

Šajā apmācībā jūs uzzināsiet, kā atrast un izdzēst dublētus failus Linux, izmantojot komandrindas rīkus rdfind un fdupes, kā arī izmantojot GUI rīkus, ko sauc par DupeGuru un FSlint.

Piesardzības piezīme - vienmēr esiet piesardzīgs, ko dzēšat savā sistēmā, jo tas var izraisīt nevēlamu datu zudumu. Ja izmantojat jaunu rīku, vispirms izmēģiniet to testa direktorijā, kur failu dzēšana nebūs problēma.

1. Rdfind - atrod dublētus failus Linux

Rdfind nāk no liekā datu atraduma. Tas ir bezmaksas rīks, ko izmanto, lai atrastu failu dublikātus vairākos direktorijos vai vairākos direktorijos. Tas izmanto kontrolsummu un atrod dublikātus, pamatojoties uz failu, kas satur ne tikai nosaukumus.

Rdfind izmanto algoritmu, lai klasificētu failus un noteiktu, kurš no dublikātiem ir sākotnējais fails, un pārējos uzskata par dublikātiem. Rangošanas noteikumi ir:

  • Ja skenējot ievades argumentu, kas agrāk par B, tika atrasts A, A rangs ir augstāks.
  • Ja A tika atrasts dziļāk par B, A ir augstāk.
  • Ja A tika atrasts agrāk nekā B, A rangs ir augstāks.

Pēdējais noteikums tiek izmantots, ja divi faili ir atrodami vienā direktorijā.

Lai Linux instalētu rdfind, izmantojiet šo komandu atbilstoši savam Linux izplatījumam.

$ sudo apt-get install rdfind     [On Debian/Ubuntu]
$ sudo yum install epel-release && $ sudo yum install rdfind    [On CentOS/RHEL]
$ sudo dnf install rdfind         [On Fedora 22+]
$ sudo pacman -S rdfind   [On Arch Linux]

Lai palaistu rdfind direktorijā, vienkārši ierakstiet rdfind un mērķa direktoriju. Šeit ir piemērs:

$ rdfind /home/user

Kā redzat, rdfind saglabās rezultātus failā ar nosaukumu results.txt, kas atrodas tajā pašā direktorijā, no kura palaidāt programmu. Failā ir visi failu dublikāti, kurus rdfind ir atradis. Ja vēlaties, varat manuāli pārskatīt failu un noņemt failu dublikātus.

Vēl viena lieta, ko varat darīt, ir izmantot opciju -dryrun , kas sniegs dublikātu sarakstu, neveicot nekādas darbības:

$ rdfind -dryrun true /home/user

Atrodot dublikātus, varat tos aizstāt ar cietajām saitēm.

$ rdfind -makehardlinks true /home/user

Un, ja vēlaties izdzēst dublikātus, varat palaist.

$ rdfind -deleteduplicates true /home/user

Lai pārbaudītu citas noderīgas rdfind opcijas, varat izmantot rdfind rokasgrāmatu.

$ man rdfind 

2. Fdupes - meklējiet dublētus failus Linux

Fdupes ir vēl viena programma, kas ļauj identificēt dublētus failus sistēmā. Tas ir bezmaksas un atvērtā koda un rakstīts C. Tas izmanto šādas metodes, lai noteiktu failu dublikātus:

  • daļēju md5sum parakstu salīdzināšana
  • Pilnu md5sum parakstu salīdzināšana
  • baitu pa baitu salīdzināšanas pārbaude

Tāpat kā rdfind, tam ir līdzīgas iespējas:

  • Meklēt rekursīvi
  • Izslēdziet tukšus failus
  • rāda failu dublikātu lielumu
  • Nekavējoties izdzēsiet dublikātus
  • Izslēdziet failus ar citu īpašnieku

Lai Linux instalētu fdupes, izmantojiet šo komandu atbilstoši savam Linux izplatījumam.

$ sudo apt-get install fdupes     [On Debian/Ubuntu]
$ sudo yum install epel-release && $ sudo yum install fdupes    [On CentOS/RHEL]
$ sudo dnf install fdupes         [On Fedora 22+]
$ sudo pacman -S fdupes   [On Arch Linux]

Fdupes sintakse ir līdzīga rdfind. Vienkārši ierakstiet komandu, kurai seko direktorija, kuru vēlaties skenēt.

$ fdupes <dir>

Lai meklētu failus rekursīvi, jums būs jānorāda šāda opcija -r .

$ fdupes -r <dir>

Varat arī norādīt vairākus direktorijus un norādīt direktoriju, kas jāmeklē rekursīvi.

$ fdupes <dir1> -r <dir2>

Lai fdupes aprēķinātu failu dublikātu lielumu, izmantojiet opciju -S .

$ fdupes -S <dir>

Lai apkopotu apkopotu informāciju par atrastajiem failiem, izmantojiet opciju -m .

$ fdupes -m <dir>

Visbeidzot, ja vēlaties izdzēst visus dublikātus, izmantojiet -d šādu opciju.

$ fdupes -d <dir>

Fdupes jautās, kurus no atrastajiem failiem dzēst. Jums būs jāievada faila numurs:

Risinājums, kas noteikti nav ieteicams, ir izmantot opciju -N , kā rezultātā tiks saglabāts tikai pirmais fails.

$ fdupes -dN <dir>

Lai iegūtu ar fdupes izmantojamo opciju sarakstu, palaidiet palīdzības lapu, palaižot.

$ fdupes -help

3. dupeGuru - atrodiet failu dublikātus Linux

dupeGuru ir atvērtā koda un starpplatformu rīks, ko var izmantot, lai Linux sistēmā atrastu failu dublikātus. Šis rīks var skenēt failu nosaukumus vai saturu vienā vai vairākās mapēs. Tas arī ļauj jums atrast faila nosaukumu, kas ir līdzīgs meklētajiem failiem.

dupeGuru ir dažādās versijās Windows, Mac un Linux platformām. Tās ātrās neskaidras atbilstības algoritma funkcija palīdz minūtes laikā atrast failu dublikātus. Tas ir pielāgojams, jūs varat izvilkt precīzus nepieciešamos failu dublikātus un iznīcināt nevēlamos failus no sistēmas.

Lai dupeGuru instalētu Linux, izmantojiet šādu komandu atbilstoši savam Linux izplatījumam.

--------------- On Debian/Ubuntu/Mint --------------- 
$ sudo add-apt-repository ppa:dupeguru/ppa
$ sudo apt-get update
$ sudo apt-get install dupeguru
--------------- On Arch Linux --------------- 
$ sudo pacman -S dupeguru

4. FSlint - dublēts failu meklētājs Linux

FSlint ir bezmaksas utilīta, ko izmanto, lai atrastu un notīrītu dažādu veidu savārstījumus failu sistēmā. Tas arī ziņo par failu dublikātiem, tukšiem direktorijiem, pagaidu failiem, dublētiem/konfliktējošiem (bināriem) nosaukumiem, sliktām simboliskām saitēm un daudz ko citu. Tam ir gan komandrindas, gan GUI režīmi.

Lai instalētu FSlint Linux, izmantojiet šo komandu atbilstoši savam Linux izplatījumam.

$ sudo apt-get install fslint     [On Debian/Ubuntu]
$ sudo yum install epel-release && $ sudo yum install fslint    [On CentOS/RHEL]
$ sudo dnf install fslint         [On Fedora 22+]
$ sudo pacman -S fslint   [On Arch Linux]

Šie ir ļoti noderīgi rīki, lai Linux sistēmā atrastu dublētus failus, taču, dzēšot šādus failus, jums vajadzētu būt ļoti uzmanīgam.

Ja neesat pārliecināts, vai jums ir nepieciešams fails, vai nē, labāk pirms faila dzēšanas izveidojiet šī faila dublējumu un atcerieties tā direktoriju. Ja jums ir kādi jautājumi vai komentāri, lūdzu, iesniedziet tos komentāru sadaļā zemāk.