Milyonlarca dosyayla sabit disk alanını nasıl görselleştirebilirim?


18

600 Gig ve neredeyse dolu bir sabit diskimiz var. 18.501.765 dosya (çoğunlukla küçük 19k resimler) ve 7.142.132 klasörle doldurulmuştur. Tüm alanın tam olarak nereye gittiğini bulmak çok zor. Düzenli temizleme prosedürlerimiz yeterli alanı temizlemiyor, bu da bu sürücüye bir bütün olarak bakmamız ve dışarıda neler olduğunu ve nelerin taşınabileceğini veya çıkarılabileceğini belirlememiz gerektiği anlamına geliyor. Birkaç uygulamayı denedik ve şimdiye kadar patladılar veya tamamlamak için inanılmaz bir süre boyunca çalıştılar.

Sunucu Bilgileri

  • İşletim Sistemi: Windows Server 2003
  • Dosya Sistemi: NTFS

Çözüm

Space ObServer , neredeyse hiç bellek kullanmadan 18.501.765 dosya ve 7.142.132 klasörü okuyabildi. Bu çoğunlukla tüm verileri depolamak için bir SQL arka ucunu kullanması nedeniyle eminim. Ne yazık ki sunucu başına 259,95 $ tüm ürünlerin en pahalı.

Denenmiş Çözümler

Araştırmam sırasında hem ücretli hem de ücretsiz olarak birkaç farklı çözüm denedim. Herkesin bilgisi için aşağıda denediğim ürünlerin bir listesini tuttum.

Ücretsiz yazılım

Ücretli Yazılım

Güncellemeler

Güncelleme # 1 : Analiz etmeye çalıştığım sunucunun 2 GB RAM'i var ve denediğim çoğu ürün dosya / klasör bilgilerini hafızada tutmaya çalışıyor gibi görünüyor. Bu, 18.501.765 dosya ve 7.142.132 klasörle çok hızlı bir şekilde tükenme eğilimindedir.

Güncelleme # 2 : WinDirStat geliştiricileri, 64 bit'in altında derlenebileceğini söyleyecek kadar rol aldılar. Bu, çalışmak için daha fazla bellek verir, ancak diske devam etmedikçe yeterli olup olmayacağından emin değilim.


Hangi işletim sistemi?
Wesley

Windows Server 2003. Şimdi göstermek için gönderiyi düzenledim.
Nathan Palmer

tamamen ücretsiz, shareware veya açık kaynak herhangi biri?
Maslow

Başarısız olan, çalışan ve bekleyen neyle ilgili olarak bizi bu şekilde güncellemeniz güzel. Bana iyi fikirler verir.
Wesley

2
Sorun değil. Şirketlerin genellikle günlük olarak çalışmadığı bir dizi dosyayla uğraştığımızı hissettiğim için iyi bir bilgi olacağını düşündüm. Ayrıca, Free and Pay kategorileriyle güncelledim.
Nathan Palmer

Yanıtlar:


6

İşletim sisteminizin Windows olduğunu varsayalım ...

Her iki şekilde de dilimleyin, milyonlarca dosyayı tablolamak her zaman uzun zaman alacaktır ve diskin G / Ç'si tarafından kısıtlanacaktır. TreeSize Professional'ı öneririm . Ya da belki SpaceObServer . TreeSize'in ücretsiz sürümünü de deneyebilirsiniz.


Katılıyorum. Ama henüz denemediğim iki ürün bir göz atacağım.
Nathan Palmer

5

Kesinlikle WinDirStat'ı deneyin : her dosyayı, dosya türüne göre kodlanmış renk, ölçeklemek için çizilmiş bir dikdörtgen olarak tasvir ederek disk kullanımının harika bir görselleştirmesini sağlar. Görselleştirmedeki herhangi bir öğeyi tıkladığınızda dizin ağacında görürsünüz.

Standart 32-bit derleme 10 milyon dosya ve 2 GB RAM kullanımı ile sınırlıdır, ancak kaynak kod 64-bit bir uygulama olarak başarıyla oluşturulacaktır. Söz konusu sunucunun sadece 2GB RAM'e sahip olması bu özel durumda sorunlu olabilir, ancak bu kadar çok sayıda dosyaya sahip sunucuların çoğunda çok daha fazla RAM olacaktır.

Düzenleme # 1: Milyonlarca dosya içeren 4 TB'lık bir birimde test edildiğinde, yaklaşık 6,5 milyon dosyayı endeksledikten sonra WinDirStat Portable'ın çöktüğünü keşfettiğim için üzgünüm. Sürücü 6 milyondan fazla dosya içeriyorsa orijinal soru için çalışmayabilir.

Düzenleme 2: WinDirStat'ın tam sürümü 10 milyon dosyada çöküyor ve 1,9 GB kullanılıyor

Edit # 3: WinDirStat geliştiricileri ile temasa geçtim ve: (1) bunun x86 mimarisinin bellek kullanım sınırlamalarından kaynaklandığını kabul ettiler ve (2) 64-bit olarak hatasız olarak derlenebileceğini belirtti. Daha fazlası yakında.

Edit # 4: 64-bit WinDirStat derlemesi testi başarılı oldu. 44 dakikada 11.4 milyon dosyayı dizine ekledi ve 2.7 GB RAM tüketdi.


Taşınabilir ortam beklenmedik bir kısıtlama yarattığından, normal sürümü denemeye değer olabilir. Bunu kendimi test edecek bir konumda değilim. windirstat.info
John

Gerçekten, normal sürüm 10 milyondan fazla dosyada ve 1,9 GB RAM kullanımında ölüyor. 2GB'den fazla bellek ayıramadığından şüpheleniyorum. Oldukça fazla RAM kullandığına şaşırdım (kaydedilen dosya başına yaklaşık 200 bayt), ancak, yine, bireysel baytların bugün olduğundan çok daha değerli olduğu bir dönemde büyüdüm ...
Skyhawk

WinDirStat'ı çok kullanıyorum. Ne yazık ki çok sayıda dosyaya girdiğinizde kesmiyor.
Nathan Palmer

WinDirStat üzerindeki geliştiricilerin herhangi bir şeyle geri gelip gelmediğini duymak isterim. RAM 32-bit veya 64-bit'de benim için bir kısıt olacak.
Nathan Palmer

1
Resmi bir yapı yok, ama size gayri resmi bir tane gönderebilirim. (my.name@gmail.com bana ulaşıyor)
Skyhawk


3

TreeSize ürünleri için +1, ancak ...

"Yeterli alan temizlememe" konusundaki cümlen beni meraklandırıyor: NTFS MFT ayrılmış alanınız bitebilir mi? Dosya sistemi başlangıçta ayrılandan daha fazla MFT alanı kaplarsa, normal dosya alanına döndürülmez ve birleştirme işlemlerinde gösterilmez.

http://support.microsoft.com/kb/174619

"Çok az sayıda göreceli olarak büyük dosyaya sahip birimler ilk önce kayıt edilmeyen alanı tüketirken, çok sayıda göreceli olarak küçük dosyaya sahip birimler önce MFT bölge alanını tüketir. Her iki durumda da, MFT'nin parçalanması bir bölge veya Kayıt edilmeyen alan dolarsa, kullanıcı dosyaları ve dizinleri için alan ayırma için MFT ile rekabet eden MFT bölgesinden ayrılmaya başlar MFT bölgesi dolarsa, yeni MFT girişleri için alan disk, yine diğer dosyalarla rekabet ediyor. "


Kontrol edilmesi iyi bir şey gibi görünüyor. Maalesef MFT boyutunu göremiyoruz çünkü dolandırmak bir CHKDSK olmadan analiz edilmiyor ve CHKDSK şu anda "Belirtilmemiş bir hata oluştu" ile başarısız oluyor.
Nathan Palmer

3
  1. cd \
  2. dir / s> out.txt
  3. puf! Büyü olur; veya bir perl hacker ortaya çıkıyor
  4. Sonuçlar!

Ciddi anlamda. Bunu 5 veya 6 milyon dosyayla yaptım; tam olarak ne aradığınızdan emin değilim ama iyi bir betik dili bunu yiyecektir.


Soo ... 3. adımda ne olur .. perl korsanının gelmediğini varsayarsak?
Nathan Palmer

İhtiyacınız olan şey hakkında daha fazla bilgi gönderebilir misiniz? En büyük dosyalar? En büyük dizinler? Tarih / saat bilgisine mi ihtiyacınız var? Tek seferlik bir ihtiyaç mı yoksa tekrar eden mi?
SqlACID

Şimdilik bir kez. Hangi dizinlerin en büyük olduğunu bilmeliyim (dir + çocuk) ama geçerli olarak bu bilgilerden önce birkaç dizine gitmem gerekecek. O zaman son vs eski dosyaları görebilmek için tarihe göre dosyaların bölünmesi gerekecek.
Nathan Palmer

3

Genellikle Windows kullanıcısı değilim, ancak Cygwin'in varlığının farkındayım. :-)

Yeterince iyi çalışıyorsa,

du -m /your/path | sort -nr | head -n 50

veya belki de Cygwin'de

du C:\ | sort -nr | head -n 50

Her neyse, bunlar size en büyük 50 dizini (megabayt olarak boyutlar) yazdırmalıdır.


2

Spacemonger ile birkaç sorun buldum ve usb stick'ten kolayca aktarabildiğim veya çalıştırabildiğim bir yardımcı program arıyorum - Space Sniffer bu konuda çok yönlü olduğu ortaya çıktı ve çok terabaytlı hacimleri kolaylıkla ele aldı.


kaç terabayt hacimli kaç dosya? Bizim en büyük sorunumuz ne kadar alan kullanıldığı değil, programın kaç dosya işleyebileceği gibi görünüyor. Çoğu 10 milyonda boğuluyor.
Nathan Palmer

Deneyim için birkaç milyondan fazla dosyaya sahip bir sunucum yok, bu yüzden 10 milyon dosya sorunuza güvenle cevap veremedim - tek önerim, bu araçlarla görselleştirilen dizin derinliğini ayarlayabilmeniz - mutlu orta ve daha sonra ihtiyacınız klasörde derin, görselleştirme de zamandan tasarruf gerekir.




0

Mft tablosuyla ilgili olarak, başımın arkasından, orijinal açık kaynak sürümü olan jkdefrag'ın, mft alanları için farklı renklendirme de dahil olmak üzere çok hassas bir disk görünümü verdiğini hatırlıyorum. Ben daha önce bir kez mft boyutu ve parçalanma başparmak guesstimate kuralı için kullanılır düşünüyorum.

Ayrıca chdsk umurunda değil.

Bunu deneyebilir miyim?


Denedim. Analiz çalıştırdığımda, bu diğer programların çoğunda aynı kaderi yaşıyor. Bellekte saklanan çok fazla dosya / klasör var.
Nathan Palmer

Bunu okuduğum için üzgünüm. Bir platform problemi gibi görünüyor. Başka bir öneri var: Nasıl olursa olsun diski (bit görüntü, Görüntüleme yumuşak veya donanım ayna) ayna, ayna kırmak ve kopya başka bir platformda adli tıp altına koymak örneğin. linux / nix. Bu, harcadığınız çalışma sürenizin miktarıyla ilgili olarak bir ayna sürücüsünün maliyetini garanti etmek için yeterli zaman harcamıştır.
deploymonkey


0

Ben kullandım Baobab - Disk Kullanımı Analyzer uzaktan Windows sunucusunda tarama fonksiyonu var kullanarak Linux üzerinde. Yine de bunun sınırları olduğunu bilmiyorum.

Fedora LiveCD Baobab içerir. LAN'ınızdaki herhangi bir bilgisayara önyükleyin.

Birada ve konuşmada olduğu gibi hepsi ücretsiz. Ayrıca ticari kullanım için.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.