Her gün işletim sistemimizde çeşitli dosya türlerini indiriyor, oluşturuyor ve düzenliyoruz, bu özel durumda Linux'tan bahsediyoruz ve yaygın hatalardan biri, yalnızca fazladan bir yer kaplamayan birkaç yinelenen dosyaya sahip olmamızdır. sabit sürücüde yer kaplayabilir, ancak dosyaları açarken ve düzenlerken kafa karıştırıcı bir faktör olabilir.
Çoğu durumda, masaüstü bilgisayarlarımızda veya sunucularımızda, biçimleri ne olursa olsun, kopyaları olan çeşitli dosyalar bulunur ve biz bunu bilmiyoruz. Bu, gereksiz yere yer kaplamasına ve yanlış bir dosya ile çalışabilmemize neden olur, çünkü birini düzenleyebilir ve ardından diğerini açabiliriz, vb. Çalışma ortamımızı daha iyi organize etmenin pratik bir yolu, bu mükerrer dosyaları tespit edip ortadan kaldırmaktır, böylece tek bir dosyadan faydalanmak mümkün olur.
Bu görevi sadece yinelenenleri silebilmek için değil, Linux işletim sisteminin farklı bölümleri tarafından tekrarlanan ancak artık istemediğimiz dosyaları ortadan kaldırabileceğimiz ve silebileceğimiz aramalar yapmak için yapmaya değer. Sürüm ne olursa olsun, diğerleri arasında Fedora, Ubuntu, Debian, CentOS'ta olabilir.
Windows'ta yinelenen dosyaların nasıl bulunacağını daha önce görmüştük, burada hem grafik düzeyinde hem de komut satırında bu dosyaları bulmamıza ve olduğunu düşündüğümüzleri ortadan kaldırmamıza yardımcı olacak araçlarımızın olduğu Linux ortamlarına odaklanıyoruz. yararlı değil.
Solvetic, Linux'ta yinelenen dosyaların nasıl tespit edilip ortadan kaldırılacağını basit ama işlevsel bir şekilde açıklayacaktır.
Rdfind yardımcı programı nedirRdfind, dizindeki yinelenen dosyaları algılamak için geliştirilmiş bir komut satırı aracıdır. Kullanımı, yedekleme dizinlerini sıkıştırmak veya çift dosyaları basit bir şekilde bulmak için uygulanabilir, bu yardımcı program dosyaları içeriklerine göre karşılaştırır, ancak sağlama toplamına dayalı olduğundan dosya adlarına göre karşılaştırmaz. Rdfind, dosyaları sınıflandırmak için bir algoritma kullanır ve böylece kopyalardan hangisinin orijinal olduğunu tespit eder ve böylece gerisini kopya olarak kabul eder. Rdfind kullanma kuralları şunlardır:
- B'den önce bir giriş argümanı taranırken A bulunursa, A daha yüksek sıralanır.
- A, B'den daha az bir derinlikte bulunursa, A daha yüksek sıralanır.
- A, B'den önce bulunursa, A daha üst sıralarda yer alır.
Rdfind Algoritması Nedir?Rdfind, bahsettiğimiz gibi, N'nin aranacak dosya sayısı ve gereken çabanın O (Nlog (N)) olduğu aşağıdaki algoritmayı kullanır. Rdfind, diskten okumadan önce dosyaları düğümler halinde sıralar, bu nedenle bu işlem hızlıdır ve yalnızca gerektiğinde diskten veri okur. Algoritma aşağıdaki dizileri yönetir:
- Komut satırındaki her argüman üzerinde bir döngü oluşturulur, her argümana artan sırada bir öncelik numarası atanır.
- Her argüman için, dizinin içeriği özyinelemeli olarak listelenir ve dosya listesine eşlenir.
- Rdfind, her argüman için 0'dan başlayarak bir dizin derinlik numarası atar.
- Giriş argümanı bir dosyaysa, dosya listesine eklenecektir.
- Ardından listede gezinilir ve tüm dosyaların boyutları keşfedilir.
- “-removeidentinode” bayrağı doğruysa, listenin zaten eklenmiş olan öğeleri, cihaz numarası ve inode kombinasyonuna göre kaldırılır.
- Dosyalar boyuta göre sıralanır, ardından benzersiz boyutlara sahip dosyalar listeden kaldırılır.
- Dosyaların okunmasını hızlandıran cihaz ve düğüme göre sıralanır).
- Listedeki aynı boyutta ancak farklı ilk bayt olan dosyalar kaldırılır.
- Her dosya için sağlama toplamı çalıştırılır.
- Yalnızca aynı boyut ve sağlama toplamına sahip listedeki dosyalar tutulur. Bunlar kopyalar.
- Liste boyuta, öncelik numarasına ve derinliğe göre sıralanır. Her bir kopya kümesindeki ilk dosya, varsayılan olarak orijinal olarak kabul edilir.
- "-makeresultsfile true" seçeneğini işaretlerseniz, sonuç dosyası yazdırılır (varsayılan).
- İşaret "-deleteduplicates true" ise, yinelenen dosyalar silinecektir.
- İşaret "-makesymlinks true" ise, kopyalar orijinale sembolik bir bağlantı ile değiştirilir.
- Sonuç "-makehardlinks true" ise, kopyaları orijinal bağlantıyla değiştirmeye devam ederiz.
1. Linux'ta Rdfind yardımcı programı ile yinelenen dosyaları bulun
Aşama 1
Rdfind'i Linux'a kurmak için aşağıdaki komutlardan herhangi birini uygulayabiliriz:
sudo apt rdfind kurulumu (Debian / Ubuntu / Mint) sudo yum kurulum epel-release && $ sudo yum kurulum rdfind (CentOS / RHEL) sudo dnf kurulum rdfind (Fedora)
Adım 2
Rdfind indirilip kurulduktan sonra, onu aşağıdaki gibi basit bir dizinde çalıştıracağız:
rdfind / ana sayfa / Solvetik
Aşama 3
Orada, söz konusu dizindeki dosya sayısının tespit edildiğini ve mükerrer dosyaların ortadan kaldırılıp kaldırılmadığını gösterdiğini görebiliriz. Rdfind yardımcı programı sonuçları programın çalıştırıldığı dizinde bulunan bir result.txt dosyasına kaydeder, içeriğini cat kullanarak görebiliriz:
kedi sonuçları.txt
4. Adım
rdfind ile kullanmak için ek bir görev, üzerinde herhangi bir işlem yapmadan yinelenenlerin bir listesini sağlayacak olan "-dryrun" parametresini kullanmaktır:
rdfind -dryrun true / ana sayfa / Solvetic
Adım 5
Yinelenenlerin tespit edilmesi durumunda, bunları bunun gibi sabit bağlantılarla değiştirmek mümkündür.
rdfind -makehardlinks doğru / ev / kullanıcı6. Adım
Yinelenenleri ortadan kaldırmak için aşağıdakileri uygulamamız gerekir:
rdfind -deleteduplicates true / home / user7. Adım
Rdfind'in yardımına erişmek için aşağıdaki komutu kullanacağız:
adam bul
2. Linux'ta Fdupes yardımcı programıyla yinelenen dosyaları bulun
Yinelenen dosyaları doğrulamak için Linux'ta sahip olduğumuz başka bir seçenek de Fdupes. Sistemde hangi dosyaların kopyalandığını detaylı olarak gözlemlememizi sağlayan bir komut satırı aracıdır. Fdupes, Linux'ta belirli dizinlerde bulunan yinelenen dosyaları belirlemek veya ortadan kaldırmak için geliştirilmiş bir programdır, açık kaynak kodlu ve ücretsiz olup C ile yazılmıştır.
Fdupes'in ÖzellikleriFdupes, dizinlerdeki yinelenen dosyaları belirlemek için aşağıdaki yöntemleri kullanır:
- Kısmi md5sum imzalarını karşılaştırma.
- Tüm md5sum imzalarının karşılaştırılması.
- Bayt bayt karşılaştırma kontrolü.
Fdupes'i kullanırken aşağıdaki gibi kullanım seçeneklerine sahip olacağız:
- Özyinelemeli arama.
- Boş dosyaları hariç tutun.
- Yinelenen dosyaların boyutunu görüntüleyin.
- Yinelenenleri hemen kaldırın.
- Farklı sahiplere sahip dosyaları hariç tutun.
Aşama 1
Varsayılan olarak, bu araç kurulu değildir, bu yüzden kurmak için aşağıdaki komutu girmeliyiz. Fdupes'i kurmak için aşağıdaki komutu uygulayacağız:
sudo apt kurulum fdupes
Adım 2
İndirdikten sonra, basit bir arama için aşağıdaki satırı çalıştırabiliriz. Orada yinelenen dosyalar görüntülenecektir.
fdupes / arama yolu
Aşama 3
Özyinelemeli bir arama yapmak için aşağıdaki satırı kullanacağız:
fdupes -r / arama yolu
4. Adım
Birkaç dizin belirtmek ve yinelemeli olarak aranacak bir dizin belirlemek aşağıdaki gibi mümkün olacaktır:
fdupes -rAdım 5
Fdupes'in yinelenen dosyaların boyutunu hesaplamasını istiyorsak, -S seçeneğini kullanacağız:
fdupes -S
6. Adım
Bulunan dosyalar hakkında özet bilgi toplamak için -m seçeneğini kullanacağız:
fdupes -m
7. Adım
Tüm kopyaları silmek istemeniz durumunda, aşağıdakileri uygulayacağız:
fdupes -d8. Adım
Yardımcı programın yardımına erişmek istiyorsak şunu uygularız:
fdupes -yardım9. Adım
Genel kullanım seçeneklerinden bazıları şunlardır:
Seçilen her dizin için alt dizinlerine erişin
-r -yineleme
Özyinelemeli aramayı etkinleştir
-R --tekrarlama
Sembolik bağlantılar oluşturun
-s -simgesel bağlantılar
İki veya daha fazla dosya aynı hedefi gösterdiğinde, bunlar kopya olmayan dosyalar olarak kabul edilir.
-H -sabit bağlantılar
Sıfır uzunluklu dosyaları hariç tut
-n -boş yok
Gizli dosyaları hariç tut
-A -gizlenmemiş
Yinelenen dosya boyutunu göster
-S -boyutu
Seçili dosyaları sil
-d -sil
-q -quiet'i gizle
-q -sessiz
Dosyaya göre çıktı ve silme için sıralama düzeni seçin
-o - ***** = TARAFINDAN
Dosya silme seçeneklerini LOGFILE'a kaydedin
-l --log = LOGFILE
Fdupes sürümünü dağıtın
-v -sürüm
Yardım mesajını göster
-h - yardım
3. Linux'ta FSlint yardımcı programıyla yinelenen dosyaları bulun
Kullanacağımız bir diğeri, Ubuntu, Debian, Fedora, vb. Gibi çeşitli Linux ditrolarında varsayılan olarak gelen FSlint'tir. FSlint hakkında daha fazla bilgi için aşağıdaki bağlantıyı ziyaret edebiliriz:
Aşama 1
Aktiviteler menüsünden kullanmak için FSlint'i arayabiliriz.
BÜYÜT
Adım 2
Açıldıktan sonra uygulamayı yüklememiz gerekiyor, bunu yapmak için Yükle düğmesine tıklamanız yeterlidir ve yardımcı program yükleme işlemi başlayacaktır.
BÜYÜT
Aşama 3
Araç kurulduktan sonra yürütmesine geçiyoruz ve aşağıdaki ortamı göreceğiz:
4. Adım
Tüm yinelenen dosyalar için arama işlemini başlatmak için, altta bulunan "Ara" düğmesine basın, sonuç buna benzer olacaktır. Orada gerekli olmayan dosyaları seçip Sil düğmesine basarak silebiliriz. FSlint aracı, Ubuntu 16'daki terminalden de kullanılabilir.
Adım 5
Aracı terminalden kurmak istiyorsak şu komutu gireceğiz:
sudo apt-get install fslint
6. Adım
FSlint kurulduktan sonra FSlint'i kullanmak için aşağıdaki komutları gireceğiz. Sistemde kopyaladığımız tüm dosyaların görüntülendiğini görebiliriz.
cd / usr / share / fslint / fslint (Ubuntu'daki varsayılan yol budur) ./fslint / Dosyaları bulma yolu
Önemli NotBu araçların hiçbiri çift dosyaları silmez, yalnızca bize ne olduklarını gösterir ve bu görevi manuel olarak gerçekleştirmemiz gerekir.
Linux ortamlarında mükerrer dosyaları tespit etmek ve ortadan kaldırmak ve böylece alanı ve kullanılacak dosyaları daha iyi yönetmek için iki pratik seçeneğimiz olduğunu görebiliriz.