Kasdien atsisiunčiame, kuriame ir redaguojame įvairių tipų failus savo operacinėje sistemoje, šiuo konkrečiu atveju kalbame apie „Linux“, o viena iš dažniausiai pasitaikančių nesėkmių yra ta, kad dažnai galime turėti kelis pasikartojančius failus, kurie ne tik užima papildomą vietos standžiajame diske, tačiau gali tapti klaidinančiu veiksniu atidarant ir redaguojant failus.
Daugeliu atvejų mūsų staliniuose kompiuteriuose ar serveriuose yra įvairių failų, nepaisant jų formato, dublikatų ir mes to nežinome. Dėl to be reikalo užima vietą ir galime dirbti su netinkamu failu, nes mes galime redaguoti vieną, tada atidaryti kitą ir tt Praktiškas būdas geriau organizuoti mūsų darbo aplinką yra aptikti ir pašalinti šiuos pasikartojančius failus, kad tokiu būdu būtų galima naudoti vieną failą.
Verta atlikti šią užduotį ne tik norint ištrinti dublikatus, bet ir atlikti paieškas, kuriose galime pašalinti ir ištrinti failus, kurių nebenorime, bet pakartojo skirtingos „Linux“ operacinės sistemos dalys. Nesvarbu, kokia versija gali būti „Fedora“, „Ubuntu“, „Debian“, „CentOS“ ir daugelyje kitų.
Mes savo laikais jau matėme, kaip rasti pasikartojančius failus sistemoje „Windows“, čia daugiausia dėmesio skiriame „Linux“ aplinkai, kur turime įrankių tiek grafiniu, tiek komandų eilutės pagalba, kurie padės mums rasti šiuos failus ir pašalinti tuos, kurie, mūsų manymu, yra nenaudingas.
„Solvetic“ paaiškins, kaip paprastai ir funkcionaliai aptikti ir pašalinti pasikartojančius failus „Linux“.
Kas yra „Rdfind“ programa„Rdfind“ yra komandų eilutės įrankis, sukurtas aptikti pasikartojančius katalogo failus. Jį galima naudoti norint suspausti atsarginių kopijų katalogus arba rasti pasikartojančius failus. Ši programa palygina failus pagal jų turinį, bet ne pagal failų pavadinimus, nes ji pagrįsta kontroline suma. „Rdfind“ naudoja algoritmą, norėdamas klasifikuoti failus ir taip aptikti, kuris iš dublikatų yra originalas, ir likusias laikyti kopijomis. Rdfind naudojimo taisyklės yra šios:
- Jei A buvo rastas nuskaitant įvesties argumentą prieš B, A yra aukštesnis.
- Jei A buvo rastas gylyje, mažesniame nei B, A yra aukščiau.
- Jei A buvo rastas prieš B, A yra aukštesnis.
Kas yra Rdfind algoritmas?Kaip jau minėjome, „Rdfind“ naudoja šį algoritmą, kuriame N yra ieškomų failų skaičius, o reikalingos pastangos yra O (Nlog (N)). Prieš skaitydamas iš disko, „Rdfind“ surūšiuoja failus į inodes, todėl šis procesas yra greitas ir tik tada, kai reikia, nuskaito duomenis iš disko. Algoritmas tvarko šias sekas:
- Virš kiekvieno komandinės eilutės argumento sukuriama kilpa, kiekvienam argumentui priskiriamas prioriteto numeris didėjančia tvarka.
- Kiekvieno argumento atveju katalogo turinys pateikiamas rekursyviai ir susiejamas su failų sąrašu.
- „Rdfind“ kiekvienam argumentui priskiria katalogo gylio numerį, pradedant nuo 0.
- Jei įvesties argumentas yra failas, jis bus įtrauktas į failų sąrašą.
- Tada peržiūrimas sąrašas ir aptinkami visų failų dydžiai.
- Jei „-removeidentinode“ vėliava yra teisinga, jau pridėti sąrašo elementai pašalinami pagal įrenginio numerio ir „inode“ derinį.
- Failai rūšiuojami pagal dydį, tada failai pašalinami iš sąrašo, kurio dydžiai yra unikalūs.
- Jis užsakomas pagal įrenginį ir įvesties kodą, kuris pagreitina failų skaitymą).
- Sąrašo failai, kurių dydis yra vienodas, bet skirtingi pirmieji baitai, pašalinami.
- Kiekvieno failo kontrolinė suma vykdoma.
- Sąraše saugomi tik tokio paties dydžio ir kontrolinės sumos failai. Tai yra dublikatai.
- Sąrašas surūšiuotas pagal dydį, prioriteto numerį ir gylį. Pirmasis failas kiekviename dublikatų rinkinyje pagal nutylėjimą laikomas originaliu.
- Jei pažymėsite „-makeresultsfile true“, rezultatų failas bus atspausdintas (numatytasis).
- Jei vėliava yra „-deleteduplicates true“, pasikartojantys failai bus ištrinti.
- Jei vėliava yra „-daro teisingas nuorodas“, dublikatai pakeičiami simboline nuoroda į originalą.
- Jei rezultatas yra „-Makehardlinks true“, dublikatus pakeičiame nuoroda į originalą.
1. Raskite pasikartojančius failus naudodami „Rdfind“ įrankį „Linux“
1 žingsnis
Norėdami įdiegti „Rdfind“ „Linux“, galime vykdyti bet kurią iš šių komandų:
sudo apt install rdfind (Debian / Ubuntu / Mint) sudo yum install epel-release && $ sudo yum install rdfind (CentOS / RHEL) sudo dnf install rdfind (Fedora)
2 žingsnis
Atsisiuntę ir įdiegę „Rdfind“, paleisime jį paprastame kataloge taip:
rdfind / home / Solvetic
3 žingsnis
Ten matome, kad aptiktas kataloge esančių failų skaičius ir tai rodo, ar pasikartojantys failai buvo pašalinti. „Rdfind“ programa išsaugos rezultatus faile result.txt, esančiame tame pačiame kataloge, iš kurio buvo paleista programa, jo turinį galime pamatyti naudodami katę:
katės rezultatai.txt
4 žingsnis
Papildoma užduotis, kurią reikia naudoti kartu su „rdfind“, yra naudoti parametrą „-dryrun“, kuris pateiks dublikatų sąrašą, neatlikdamas jokių veiksmų:
rdfind -dryrun true / home / Solvetic
5 žingsnis
Aptikus dublikatus, juos galima pakeisti tokiomis kietosiomis nuorodomis.
rdfind -makehardlinks true / home / user6 žingsnis
Norėdami pašalinti dublikatus, turime atlikti šiuos veiksmus:
rdfind -deleteduplicates true / home / user7 žingsnis
Norėdami pasiekti „Rdfind“ pagalbą, naudosime šią komandą:
vyras rdfind
2. Raskite pasikartojančius failus naudodami „Fdupes“ įrankį „Linux“
Kitas „Linux“ variantas, leidžiantis patvirtinti pasikartojančius failus, yra „Fdupes“. Tai komandų eilutės įrankis, leidžiantis mums išsamiai stebėti, kuriuos failus sistemoje turime dublikatų. „Fdupes“ yra programa, sukurta siekiant nustatyti arba pašalinti pasikartojančius failus, esančius tam tikruose „Linux“ kataloguose, ji yra atviro kodo ir nemokama bei parašyta C.
Fdupes ypatybėsNorėdami nustatyti pasikartojančius failus kataloguose, „Fdupes“ naudoja šiuos metodus:
- Lyginant dalinius md5sum parašus.
- Palyginus visus „md5sum“ parašus.
- Baitų palyginimo patikrinimas.
Naudodami „Fdupes“ turėsime tokias naudojimo galimybes:
- Rekursinė paieška.
- Išskirkite tuščius failus.
- Rodyti pasikartojančių failų dydį.
- Nedelsdami pašalinkite dublikatus.
- Neįtraukti failų su skirtingais savininkais.
1 žingsnis
Pagal numatytuosius nustatymus šis įrankis nėra įdiegtas, todėl norėdami jį įdiegti, turime įvesti šią komandą. Norėdami įdiegti „Fdupes“, vykdysime šią komandą:
sudo apt install fdupes
2 žingsnis
Atsisiuntę galime paleisti šią eilutę, kad galėtume atlikti paprastą paiešką. Ten bus rodomi pasikartojantys failai.
fdupes / kelias į paiešką
3 žingsnis
Norėdami atlikti rekursinę paiešką, naudosime šią eilutę:
fdupes -r / kelias į paiešką
4 žingsnis
Bus galima nurodyti kelis katalogus ir nurodyti katalogą, kuriame rekursyviai ieškoti:
fdupes -r5 žingsnis
Jei norime, kad „Fdupes“ apskaičiuotų pasikartojančių failų dydį, naudosime parinktį -S:
fdupes -S
6 žingsnis
Norėdami surinkti informaciją apie surastus failus, naudosime parinktį -m:
fdupes -m
7 žingsnis
Jei norite ištrinti visas dublikatus, atliksime šiuos veiksmus:
fdupes -d8 žingsnis
Jei norime naudotis pagalba, kurią vykdome, vykdome:
fdupes -pagalba9 veiksmas
Kai kurios bendrosios naudojimo parinktys yra šios:
Prisijunkite prie kiekvieno pasirinkto katalogo jo pakatalogių
-r -pasikartoja
Įjunkite rekursinę paiešką
-R -pasikartojimas
Sukurkite simbolines nuorodas
-s -nuorodos
Kai du ar daugiau failų nurodo tą patį tikslą, jie laikomi nesikartojančiais
-H -kietos nuorodos
Išskirkite nulinio ilgio failus
-ne
Išskirkite paslėptus failus
-A -neslėpta
Rodyti pasikartojančio failo dydį
-S dydis
Ištrinkite pasirinktus failus
-d -ištrinti
Paslėpti tylą -q
-tyliai
Pasirinkite išvesties ir ištrynimo pagal failą rūšiavimo tvarką
-o - ***** = BY
Įrašykite failo ištrynimo parinktis į LOGFILE
-l --log = LOGFILE
Įdiekite „Fdupes“ versiją
-v -versija
Parodykite pagalbos pranešimą
- h - padėk
3. Raskite pasikartojančius failus naudodami „FSlint“ įrankį „Linux“
Kitas, kurį ketiname naudoti, yra „FSlint“, kuris pagal numatytuosius nustatymus pateikiamas įvairiose „Linux“ programose, tokiose kaip „Ubuntu“, „Debian“, „Fedora“ ir kt. Norėdami sužinoti daugiau apie „FSlint“, galite apsilankyti šioje nuorodoje:
1 žingsnis
Mes galime ieškoti „FSlint“ meniu „Veikla“.
DIDELIS
2 žingsnis
Atidarę būtina įdiegti programą, norėdami tai padaryti, tiesiog spustelėkite mygtuką Įdiegti ir prasidės naudingumo diegimo procesas.
DIDELIS
3 žingsnis
Įdiegę įrankį, tęsiame jo vykdymą ir pamatysime tokią aplinką:
4 žingsnis
Norėdami pradėti visų pasikartojančių failų paieškos procesą, paspauskite apačioje esantį mygtuką „Ieškoti“ ir rezultatas bus panašus į šį. Ten mes galime pasirinkti tuos failus, kurie nėra būtini, ir ištrinti juos paspausdami mygtuką „Ištrinti“. „FSlint“ įrankį taip pat galima naudoti iš „Ubuntu 16“ terminalo.
5 žingsnis
Jei norime įdiegti įrankį iš terminalo, įvesime komandą:
sudo apt-get install fslint
6 žingsnis
Įdiegę „FSlint“, įvesime šias komandas, kad galėtume naudoti „FSlint“. Matome, kad rodomi visi failai, kurių sistemoje turime dublikatus.
cd / usr / share / fslint / fslint (tai numatytasis kelias Ubuntu) ./fslint / Kelias failams rasti
Svarbi pastabaNė vienas iš šių įrankių neištrina pasikartojančių failų, tai tik parodo mums, kas jie yra, ir mes turime atlikti šią užduotį rankiniu būdu.
Matome, kad turime dvi praktines galimybes aptikti ir pašalinti pasikartojančius failus „Linux“ aplinkoje ir taip geriau valdyti naudojamą erdvę ir failus.