Làm cách nào tôi có thể hình dung dung lượng ổ cứng với hàng triệu tệp?


18

Chúng tôi có một đĩa cứng là 600 Gigs và gần đầy. Nó đã được lấp đầy với 18.501.765 tệp (chủ yếu là hình ảnh 19k nhỏ) và 7.142.132 thư mục. Rất khó để tìm ra chính xác tất cả không gian đã đi đâu. Các quy trình dọn dẹp thường xuyên của chúng tôi không dọn đủ không gian, điều đó có nghĩa là chúng tôi cần xem xét toàn bộ ổ đĩa này và xác định những gì ở ngoài đó và những gì có thể được di chuyển hoặc loại bỏ. Chúng tôi đã thử một vài ứng dụng và cho đến nay chúng đã bị nổ tung hoặc đơn giản là chạy trong một khoảng thời gian đáng kinh ngạc để hoàn thành.

Thông tin máy chủ

  • Hệ điều hành: Windows Server 2003
  • Hệ thống tệp: NTFS

Dung dịch

Space ObServer có thể đọc qua 18.501.765 tệp và 7.142.132 thư mục mà không chiếm bất kỳ bộ nhớ nào. Tôi chắc chắn điều này chủ yếu là do thực tế là nó sử dụng phụ trợ SQL để lưu trữ tất cả dữ liệu. Thật không may, nó đắt nhất trong tất cả các sản phẩm ở mức $ 259,95 mỗi máy chủ.

Giải pháp đã cố gắng

Trong quá trình nghiên cứu, tôi đã thử một số giải pháp khác nhau cả trả tiền và miễn phí. Tôi giữ một danh sách các sản phẩm tôi đã thử dưới đây để biết thông tin của mọi người.

Phần mềm miễn phí

Phần mềm thanh toán

Cập nhật

Cập nhật # 1 : Máy chủ tôi đang cố gắng phân tích có 2 GB RAM và hầu hết các sản phẩm mà tôi thử dường như cố gắng giữ thông tin tệp / thư mục trong bộ nhớ. Điều này có xu hướng hết quá nhanh với 18.501.765 tệp và 7.142.132 thư mục.

Cập nhật # 2 : Có vẻ như các nhà phát triển của WinDirStat đã tham gia đủ để nói với chúng tôi rằng nó có thể biên dịch dưới 64 bit. Điều đó mang lại cho nó nhiều bộ nhớ hơn để làm việc nhưng tôi không chắc liệu nó có đủ không trừ khi chúng có thể tồn tại trên đĩa.


Hệ điều hành nào?
Wesley

Đó là Windows Server 2003. Tôi đã chỉnh sửa bài đăng để hiển thị điều đó ngay bây giờ.
Nathan Palmer

có bất kỳ thứ nào trong số này hoàn toàn miễn phí, phần mềm chia sẻ hoặc nguồn mở không?
Maslow

Rất vui được cập nhật cho chúng tôi theo cách đó về những gì không thành công, đang chạy và đang chờ xử lý. Cung cấp cho tôi những ý tưởng tốt.
Wesley

2
Không vấn đề gì. Tôi cho rằng đó sẽ là thông tin tốt vì tôi cảm thấy như chúng ta đang xử lý một số tệp mà các công ty thường không làm việc hàng ngày. Ngoài ra, tôi vừa cập nhật với các danh mục Miễn phí và Trả tiền.
Nathan Palmer

Câu trả lời:


6

Giả sử hệ điều hành của bạn là Windows ...

Dù bạn cắt lát nó như thế nào, việc lập bảng hàng triệu tệp sẽ luôn mất nhiều thời gian và sẽ bị hạn chế bởi chính I / O của đĩa. Tôi khuyên bạn nên dùng TreeSize Professional . Hoặc có thể là SpaceObServer . Bạn cũng có thể thử phiên bản phần mềm miễn phí của TreeSize.


Tôi đồng ý. Nhưng hai sản phẩm đó tôi chưa thử nên tôi sẽ xem qua.
Nathan Palmer

5

Chắc chắn thử WinDirStat : nó cung cấp một hình ảnh tuyệt vời về việc sử dụng đĩa bằng cách mô tả mỗi tệp dưới dạng một hình chữ nhật được vẽ theo tỷ lệ, màu được mã hóa theo loại tệp. Nhấp vào bất kỳ mục nào trong trực quan hóa và bạn sẽ thấy nó trong cây thư mục.

Bản dựng 32 bit tiêu chuẩn được giới hạn ở 10 triệu tệp và mức sử dụng RAM 2 GB, nhưng mã nguồn sẽ được xây dựng thành công dưới dạng ứng dụng 64 bit. Việc máy chủ được đề cập chỉ có 2GB RAM có thể có vấn đề trong trường hợp cụ thể này, nhưng hầu hết các máy chủ có số lượng tệp lớn như vậy sẽ có nhiều RAM hơn.

Chỉnh sửa # 1: Tôi rất tiếc khi phát hiện ra rằng, khi được thử nghiệm trên ổ đĩa 4TB chứa hàng triệu tệp, WinDirStat Portable đã gặp sự cố sau khi lập chỉ mục khoảng 6,5 triệu tệp. Nó có thể không hoạt động cho câu hỏi ban đầu nếu ổ đĩa chứa hơn 6 triệu tệp.

Chỉnh sửa # 2: Phiên bản đầy đủ của WinDirStat gặp sự cố ở 10 triệu tệp và 1,9 GB được sử dụng

Chỉnh sửa # 3: Tôi đã liên lạc với các nhà phát triển WinDirStat và: (1) họ đồng ý rằng điều này là do giới hạn sử dụng bộ nhớ của kiến ​​trúc x86 và (2) đã đề cập rằng nó có thể được biên dịch thành 64 bit mà không gặp lỗi. Sớm hơn.

Chỉnh sửa # 4: Thử nghiệm bản dựng 64 bit của WinDirStat đã thành công. Trong 44 phút, nó đã lập chỉ mục 11,4 triệu tệp và tiêu thụ 2,7 GB RAM.


Có thể đáng để thử phiên bản thông thường, vì có thể môi trường di động đã tạo ra một hạn chế không mong muốn. Tôi không ở vị trí để kiểm tra điều đó bản thân mình. Windirstat.info
John Gardeniers

Thật vậy, phiên bản thông thường chết ở hơn 10 triệu tệp và sử dụng RAM 1.9GB. Tôi nghi ngờ rằng nó không thể phân bổ> 2GB. Tôi ngạc nhiên khi nó sử dụng khá nhiều RAM (gần 200 byte cho mỗi tệp được tính), nhưng, một lần nữa, tôi lớn lên trong thời đại mà các byte riêng lẻ quý hơn rất nhiều so với ngày nay ...
Skyhawk

Tôi sử dụng WinDirStat rất nhiều. Thật không may, nó chỉ không cắt được khi bạn vào một số lượng lớn các tệp.
Nathan Palmer

Tôi rất muốn biết liệu nhà phát triển trên WinDirStat có quay lại với bất cứ điều gì không. RAM sẽ là một hạn chế đối với tôi trong 32 bit hoặc 64 bit.
Nathan Palmer

1
Không có bản dựng chính thức, nhưng tôi có thể gửi cho bạn một bản không chính thức - rõ ràng, sẽ rất khó để tự cuộn nếu bạn không có Visual Studio! (my.name @ gmail liên lạc với tôi)
Skyhawk

4

Tôi thường xuyên sử dụng FolderSizes trên một số ổ đĩa 1TB với vài triệu tệp mà không gặp vấn đề gì.


Tuyệt vời. Không biết về điều đó.
Wesley

Tuyệt quá. Tôi sẽ thử.
Nathan Palmer

3

+1 cho các sản phẩm TreeSize, nhưng ...

Câu của bạn về "không làm sạch đủ không gian" khiến tôi tự hỏi: Bạn có thể đã hết dung lượng dành riêng cho NTFS MFT không? Nếu hệ thống tệp lấy nhiều không gian MFT hơn mức phân bổ ban đầu, nó sẽ không được trả về không gian tệp thông thường và không được hiển thị trong các hoạt động chống phân mảnh.

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

"Các tập có một số lượng nhỏ các tệp tương đối lớn sẽ làm cạn kiệt không gian không được kiểm soát trước, trong khi các tập có số lượng lớn các tệp tương đối sẽ làm cạn kiệt không gian vùng MFT trước. Trong cả hai trường hợp, sự phân mảnh của MFT bắt đầu diễn ra khi một vùng hoặc Nếu không gian không được giám sát trở nên đầy, không gian cho các tệp và thư mục người dùng bắt đầu được phân bổ từ vùng MFT cạnh tranh với MFT để phân bổ. Nếu vùng MFT trở nên đầy, không gian cho các mục MFT mới được phân bổ từ phần còn lại của đĩa, một lần nữa cạnh tranh với các tập tin khác. "


Có vẻ như một cái gì đó tốt để kiểm tra. Thật không may, chúng tôi không thể thấy kích thước MFT vì phân mảnh sẽ không phân tích nếu không có CHKDSK và CHKDSK hiện không thành công với "Xảy ra lỗi không xác định."
Nathan Palmer

3
  1. cd \
  2. thư mục / s> out.txt
  3. gặp sự cố Phép thuật xảy ra; hoặc một hacker perl xuất hiện
  4. Các kết quả!

Nghiêm túc. Tôi đã thực hiện điều này với 5 hoặc 6 triệu tệp; không chắc chắn chính xác những gì bạn đang tìm kiếm nhưng một ngôn ngữ kịch bản tốt sẽ ăn nó lên.


Vậy ... chuyện gì xảy ra ở bước # 3 .. giả sử một hacker perl không xuất hiện?
Nathan Palmer

Bạn có thể đăng thêm thông tin về những gì bạn cần? Tập tin lớn nhất? Thư mục lớn nhất? Bạn có cần thông tin ngày / thời gian? Đó là một nhu cầu một lần, hoặc định kỳ?
SqlACID

Bây giờ là một lần. Tôi cần biết thư mục nào là lớn nhất (dir + children) nhưng tôi sẽ cần phải đi một vài thư mục trước khi thông tin đó hợp lệ. Sau đó, tôi sẽ cần phải chia nhỏ các tệp theo ngày để tôi có thể xem các tệp gần đây so với các tệp cũ.
Nathan Palmer

3

Tôi thường không phải là người dùng Windows, nhưng tôi biết về sự tồn tại của Cygwin. :-)

Nếu nó hoạt động đủ tốt, một cái gì đó như

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

hoặc có lẽ ở Cygwin

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

Dù sao, những người đó sẽ in cho bạn 50 thư mục lớn nhất (kích thước tính bằng megabyte).


2

Tôi đã tìm thấy một vài vấn đề với Spacemonger và khi tìm kiếm một tiện ích tôi có thể dễ dàng chuyển hoặc chạy từ thanh usb - Space Sniffer hóa ra rất linh hoạt trong vấn đề đó và xử lý khối lượng nhiều terabyte một cách dễ dàng.


khối lượng nhiều terabyte với bao nhiêu tập tin? Có vẻ như vấn đề chính của chúng tôi không phải là sử dụng bao nhiêu dung lượng mà là chương trình có thể xử lý bao nhiêu tệp. Hầu hết đều nghẹt thở ở mức 10 triệu.
Nathan Palmer

Tôi không có máy chủ có hơn vài triệu tệp để thử nghiệm vì vậy tôi không thể tự tin trả lời câu hỏi về tệp 10 triệu của bạn - đề nghị duy nhất của tôi là với những công cụ này bạn có thể đặt độ sâu thư mục đang hiển thị - tìm hạnh phúc vừa và sau đó đi sâu vào thư mục bạn cần, nên tiết kiệm thời gian thực hiện trực quan là tốt.




0

Nhìn vào bảng mft, từ phía sau đầu tôi dường như nhớ lại rằng jkdefrag, phiên bản mã nguồn mở ban đầu, đã đưa ra một chế độ xem đĩa rất chính xác bao gồm cả màu khác biệt cho các vùng mft. Tôi nghĩ rằng tôi đã sử dụng nó một lần trước đây cho một quy tắc ngón tay cái dự đoán về kích thước và phân mảnh mft.

Cũng không quan tâm đến chdsk.

Có thể thử điều đó?


tôi mang đến cho nó một thử thách. Khi tôi chạy phân tích, nó chịu chung số phận với hầu hết các chương trình khác. Quá nhiều tệp / thư mục được lưu trữ trong bộ nhớ.
Nathan Palmer

Xin lỗi để đọc điều đó. Có vẻ như một vấn đề nền tảng. Tôi có một đề nghị khác: Phản chiếu đĩa (hình ảnh bit, gương mềm hoặc gương phần cứng) cho dù thế nào, hãy phá vỡ gương và đặt bản sao theo pháp y trên nền tảng khác, ví dụ. linux / nix. Điều này đã tiêu tốn đủ thời gian để đảm bảo chi phí cho một ổ đĩa gương liên quan đến thời gian làm việc của bạn đã đầu tư.
deploymonkey


0

Tôi đã sử dụng Trình phân tích sử dụng đĩa - Baobab trên Linux bằng chức năng quét từ xa trên máy chủ Windows. Tôi không biết những gì nó là giới hạn mặc dù.

Fedora LiveCD chứa Baobab. Khởi động nó trên bất kỳ máy tính nào trong mạng LAN của bạn.

Tất cả đều miễn phí - như trong bia và như trong lời nói. Ngoài ra để sử dụng thương mại.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.