Linux'ta Yinelenen Dosyaları Bulmak ve Silmek için En İyi 5 Araç


İndirme yöneticilerinizi kullanarak internetten her türlü şeyi indirme alışkanlığınız varsa, ana dizininizi ve hatta sisteminizi düzenlemek özellikle zor olabilir.

Çoğu zaman aynı mp3, pdf ve epub'u (ve her türlü diğer dosya uzantısını) indirdiğinizi ve farklı dizinlere kopyaladığınızı görebilirsiniz. Bu, dizinlerinizin her türlü işe yaramaz kopyalanmış şeylerle darmadağın olmasına neden olabilir.

Bu eğitimde, rdfind, fdupes ve rmlint komut satırı araçlarını kullanarak Linux'ta yinelenen dosyaları nasıl bulacağınızı ve sileceğinizi öğreneceksiniz. ve DupeGuru ve FSlint adlı GUI araçlarını kullanmanın yanı sıra.

Bir uyarı: İstenmeyen veri kaybına yol açabileceğinden sisteminizde neyi sildiğinize her zaman dikkat edin. Yeni bir araç kullanıyorsanız, öncelikle bunu dosyaları silmenin sorun olmayacağı bir test dizininde deneyin.

1. Rdfind – Linux'ta Yinelenen Dosyaları Bulun

Rdfind, birden çok dizin içinde veya içinde yinelenen dosyaları bulmak için kullanılan ücretsiz bir komut satırı aracı olan yedek veri bulmadan gelir. Dizinleri yinelemeli olarak tarar ve aynı içeriğe sahip dosyaları tespit ederek kopyaları silme veya taşıma gibi uygun eylemleri gerçekleştirmenize olanak tanır.

Rdfind, dosyaları sınıflandırmak için bir algoritma kullanır ve kopyalardan hangisinin orijinal dosya olduğunu algılar ve geri kalanını kopya olarak değerlendirir.

Sıralama kuralları şunlardır:

  • Giriş bağımsız değişkeni taranırken B'den önce A bulunursa, A daha üst sıralarda yer alır.
  • A, B'den daha düşük bir derinlikte bulunursa, A daha üst sıralarda yer alır.
  • A, B'den önce bulunursa, A daha üst sıralarda yer alır.

Son kural özellikle aynı dizinde iki dosya bulunduğunda kullanılır.

Rdfind'i Linux'a yükleyin

Linux'ta rdfind'i yüklemek için Linux dağıtımınıza uygun olarak aşağıdaki komutu kullanın.

sudo apt install rdfind         [On Debian, Ubuntu and Mint]
sudo yum install rdfind         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/rdfind  [On Gentoo Linux]
sudo apk add rdfind             [On Alpine Linux]
sudo pacman -S rdfind           [On Arch Linux]
sudo zypper install rdfind      [On OpenSUSE]    

Bir dizinde rdfind'i çalıştırmak için rdfind ve hedef dizini yazmanız yeterlidir.

rdfind /home/user

Gördüğünüz gibi rdfind, sonuçları, programı çalıştırdığınız dizinde bulunan results.txt adlı bir dosyaya kaydedecektir. Dosya, rdfind'in bulduğu tüm kopya dosyaları içerir. İsterseniz dosyayı inceleyebilir ve yinelenen dosyaları manuel olarak kaldırabilirsiniz.

Yapabileceğiniz başka bir şey de -dryrun seçeneğini kullanarak herhangi bir işlem yapmadan kopyaların listesini sağlayacak bir seçeneği kullanmaktır:

rdfind -dryrun true /home/user

Kopyaları bulduğunuzda bunları sabit bağlantılarla değiştirmeyi seçebilirsiniz.

rdfind -makehardlinks true /home/user

Ve kopyaları silmek istiyorsanız çalıştırabilirsiniz.

rdfind -deleteduplicates true /home/user

rdfind'in diğer yararlı seçeneklerini kontrol etmek için rdfind kılavuzunu kullanabilirsiniz.

man rdfind 

2. Fdupes – Linux'ta Yinelenen Dosyaları Tarayın

Fdupes, sisteminizdeki yinelenen dosyaları tanımlamanıza olanak tanıyan başka bir komut satırı programıdır. Yinelenen kopyaları belirlemek için dosya boyutlarını ve içeriğini karşılaştırarak dizinleri yinelemeli olarak arar.

Yinelenen dosyaları belirlemek için aşağıdaki yöntemleri kullanır:

  • Kısmi md5sum imzalarını karşılaştırma
  • Tam md5sum imzalarını karşılaştırma
  • bayt bayt karşılaştırma doğrulaması

Tıpkı rdfind gibi, benzer seçeneklere sahiptir:

  • Yinelemeli arama
  • Boş dosyaları hariç tut
  • Yinelenen dosyaların boyutunu gösterir
  • Kopyaları hemen silin
  • Sahibi farklı olan dosyaları hariç tut

Fdupes'i Linux'a yükleyin

Linux'ta fdupes'i yüklemek için Linux dağıtımınıza uygun olarak aşağıdaki komutu kullanın.

sudo apt install fdupes         [On Debian, Ubuntu and Mint]
sudo yum install fdupes         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/fdupes  [On Gentoo Linux]
sudo apk add fdupes             [On Alpine Linux]
sudo pacman -S fdupes           [On Arch Linux]
sudo zypper install fdupes      [On OpenSUSE]    

Fdupes sözdizimi rdfind'e benzer. Komutu ve ardından taramak istediğiniz dizini yazmanız yeterlidir.

fdupes <dir>

Dosyaları yinelemeli olarak aramak için -r seçeneğini bunun gibi bir seçenek olarak belirtmeniz gerekecektir.

fdupes -r <dir>

Ayrıca birden çok dizin belirtebilir ve yinelemeli olarak aranacak bir dir belirleyebilirsiniz.

fdupes <dir1> -r <dir2>

Fdupes'in yinelenen dosyaların boyutunu hesaplamasını sağlamak için -S seçeneğini kullanın.

fdupes -S <dir>

Bulunan dosyalar hakkında özet bilgi toplamak için -m seçeneğini kullanın.

fdupes -m <dir>

Son olarak, tüm kopyaları silmek istiyorsanız bunun gibi bir seçeneği -d kullanın.

fdupes -d <dir>

Fdupes, bulunan dosyalardan hangisinin silineceğini soracaktır. Dosya numarasını girmeniz gerekecek:

Kesinlikle tavsiye edilmeyen bir çözüm, yalnızca ilk dosyanın korunmasına neden olacak -N seçeneğinin kullanılmasıdır.

fdupes -dN <dir>

fdupes ile kullanılabilecek mevcut seçeneklerin bir listesini almak için çalıştırarak yardım sayfasını inceleyin.

fdupes -help

3. Rmlint – Yinelenen Dosyaları Kaldır

Rmlint, Linux sistemlerinde yinelenen ve tüy benzeri dosyaları bulmak ve kaldırmak için kullanılan bir komut satırı aracıdır. Aynı içeriğe sahip dosyaların yanı sıra boş dosyalar, bozuk sembolik bağlantılar ve artık dosyalar gibi çeşitli artıklık veya tüylenme biçimlerinin tanımlanmasına yardımcı olur.

Rmlint'i Linux'a yükleyin

Rmlint'i Linux'a yüklemek için Linux dağıtımınıza uygun olarak aşağıdaki komutu kullanın.

sudo apt install rmlint         [On Debian, Ubuntu and Mint]
sudo yum install rmlint         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/rmlint  [On Gentoo Linux]
sudo apk add rmlint             [On Alpine Linux]
sudo pacman -S rmlint           [On Arch Linux]
sudo zypper install rmlint      [On OpenSUSE]    

4. dupeGuru – Linux'ta Yinelenen Dosyaları Bulun

dupeGuru, bir Linux sisteminde yinelenen dosyaları bulmak için kullanılabilecek açık kaynaklı ve platformlar arası bir araçtır. Araç, bir veya daha fazla klasördeki dosya adlarını veya içeriği tarayabilir. Ayrıca aradığınız dosyalara benzer dosya adını bulmanızı da sağlar.

dupeGuru'nun Windows, Mac ve Linux platformları için farklı sürümleri mevcuttur. Hızlı bulanık eşleştirme algoritması özelliği, yinelenen dosyaları bir dakika içinde bulmanıza yardımcı olur. Özelleştirilebilir, tam olarak istediğiniz kopya dosyaları çekebilir ve istenmeyen dosyaları sistemden silebilirsiniz.

DupeGuru'yu Linux'a yükleyin

Linux'ta dupeGuru'yu yüklemek için Linux dağıtımınıza uygun olarak aşağıdaki komutu kullanın.

sudo apt install dupeguru         [On Debian, Ubuntu and Mint]
sudo yum install dupeguru         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/dupeguru  [On Gentoo Linux]
sudo apk add dupeguru             [On Alpine Linux]
sudo pacman -S dupeguru           [On Arch Linux]
sudo zypper install dupeguru      [On OpenSUSE]    

5. FSlint – Linux için Yinelenen Dosya Bulucu

FSlint, bir dosya sistemindeki çeşitli tüy türlerini bulmak ve temizlemek için kullanılan ücretsiz bir yardımcı programdır. Aynı zamanda yinelenen dosyaları, boş dizinleri, geçici dosyaları, yinelenen/çakışan (ikili) adları, hatalı sembolik bağlantıları ve çok daha fazlasını bildirir. Hem komut satırı hem de GUI modlarına sahiptir.

Ancak, Eylül 2022'deki bilgi kesintim itibarıyla FSlint'in en son 2013'te güncellendiğini ve aktif olarak bakımının yapılmayabileceğini veya daha yeni Linux dağıtımlarıyla uyumlu olmayabileceğini unutmamak önemlidir.

FSlint'i Linux'a yükleyin

FSlint'i Linux'a yüklemek için Linux dağıtımınıza uygun olarak aşağıdaki komutu kullanın.

sudo apt install fslint         [On Debian, Ubuntu and Mint]
sudo yum install fslint         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/fslint  [On Gentoo Linux]
sudo apk add fslint             [On Alpine Linux]
sudo pacman -S fslint           [On Arch Linux]
sudo zypper install fslint      [On OpenSUSE]    

Çözüm

Bunlar, Linux sisteminizde yinelenen dosyaları bulmak için çok yararlı araçlardır, ancak bu tür dosyaları silerken çok dikkatli olmalısınız.

Bir dosyaya ihtiyacınız olup olmadığından emin değilseniz, o dosyanın yedeğini almanız ve silmeden önce dizinini hatırlamanız daha iyi olacaktır. Herhangi bir sorunuz veya yorumunuz varsa, lütfen bunları aşağıdaki yorum bölümüne gönderin.