Як я можу уявити простір на жорсткому диску з мільйонами файлів?


18

У нас є жорсткий диск, який становить 600 Gigs і майже повний. Він був заповнений 18 501 765 файлами (в основному невеликими 19-тисячними зображеннями) та 7,142,132 папками. Дуже важко з’ясувати, куди саме потрапив і весь простір. Наші регулярні процедури очищення не очищають достатньо місця, а значить, нам потрібно переглянути цей диск у цілому та визначити, що там знаходиться, а що можна перемістити чи видалити. Ми спробували декілька додатків, і поки що вони або підірвались, або просто побігли протягом дивовижної кількості часу.

Інформація про сервер

  • Операційна система: Windows Server 2003
  • Файлова система: NTFS

Рішення

Space ObServer зміг прочитати 18 501 765 файлів та 7,142,132 папок, не займаючи майже жодної пам'яті. Я впевнений, що це здебільшого пояснюється тим, що він використовує сервер SQL для зберігання всіх даних. Це, на жаль, найдорожчий з усіх продуктів по $ 259,95 за один сервер.

Спроби рішення

Під час мого дослідження я спробував кілька різних рішень як платних, так і безкоштовних. Я зберігав список продуктів, які я спробував нижче, для отримання інформації для всіх.

Безкоштовне програмне забезпечення

Оплатити програмне забезпечення

Оновлення

Оновлення №1 : Сервер, який я намагаюся проаналізувати, має 2 Гб оперативної пам’яті, а більшість продуктів, які я намагаюся, намагаються зберегти інформацію про файл / папку в пам’яті. Це, як правило, занадто швидко закінчується з 18 501 765 файлами та 7,142,132 папками.

Оновлення №2 : Схоже, розробники WinDirStat залучилися достатньо, щоб сказати нам, що він може компілюватись під 64-бітною версією. Це дає йому більше пам'яті для роботи, але я не впевнений, чи цього буде достатньо, якщо вони не зможуть зберігати диск.


Яка операційна система?
Веслі

Це Windows Server 2003. Я редагував публікацію, щоб показати це зараз.
Натан Палмер

чи є якісь із цих абсолютно безкоштовних, безкоштовних програм або з відкритим кодом?
Маслоу

Приємно, що ви нас таким чином поінформували про те, що не вдалося, запущено та очікує на розгляд. Дає мені гарні ідеї.
Веслі

2
Без проблем. Я вважав, що це буде корисна інформація, оскільки я відчуваю, що ми маємо справу з # файлами, з якими компанії зазвичай не працюють щодня. Також я щойно оновив категорії "Безкоштовно" та "Платити".
Натан Палмер

Відповіді:


6

Якщо ваша ОС - це Windows ...

У будь-якому випадку ви нарізаєте його, табуляція мільйонів файлів завжди займе багато часу і обмежуватиметься введенням / виведенням самого диска. Я рекомендую TreeSize Professional . А може і SpaceObServer . Ви можете спробувати також безкоштовну версію TreeSize.


Я згоден. Але ці два продукти я не пробував, тому я погляну.
Натан Палмер

5

Однозначно спробуйте WinDirStat : він дає фантастичну візуалізацію використання диска, зображаючи кожен файл у вигляді прямокутника, намальованого масштабом, кольором, кодованим за типом файлу. Клацніть будь-який елемент візуалізації, і ви побачите його в дереві каталогів.

Стандартна 32-бітна збірка обмежена 10 мільйонами файлів та використанням 2 Гб оперативної пам’яті, але вихідний код буде успішно створений як 64-бітний додаток. Той факт, що на розглянутому сервері є лише 2 ГБ оперативної пам’яті, може бути проблематичним у цьому конкретному випадку, але більшість серверів з такою великою кількістю файлів матиме набагато більше оперативної пам’яті.

Редагувати №1: Я шкодую, що виявив, що під час тестування на томі 4 ТБ, що містить мільйони файлів, WinDirStat Portable розбився після індексації близько 6,5 мільйонів файлів. Це може не спрацювати з оригінальним запитанням, якщо накопичувач містить 6+ мільйонів файлів.

Редагувати №2: Повна версія WinDirStat вибиває з 10 мільйонів файлів та 1,9 ГБ

Редагування №3: Я зв’язався з розробниками WinDirStat і: (1) вони погоджуються, що це було викликано обмеженнями використання пам'яті архітектури x86, і (2) відзначив, що вона може бути складена як 64-бітна без помилок. Більше скоро.

Редагування №4: Тест 64-бітної збірки WinDirStat був успішним. За 44 хвилини він індексував 11,4 мільйона файлів і спожив 2,7 ГБ оперативної пам’яті.


Можливо, варто спробувати звичайну версію, оскільки можливо, що портативне середовище створило несподіване обмеження. Я не в змозі перевірити це сам. windirstat.info
John Gardeniers

Дійсно, звичайна версія вмирає при 10+ мільйонах файлів та 1,9 ГБ оперативної пам'яті. Я підозрюю, що він не може виділити> 2 Гб. Я здивований, що він використовує досить багато оперативної пам’яті (майже 200 байт на файл талійовано), але, знову ж таки, я виріс в епоху, коли окремі байти були набагато дорожчі, ніж сьогодні ...
Skyhawk

Я багато використовую WinDirStat. На жаль, він просто не ріже, коли ви потрапляєте у велику кількість файлів.
Натан Палмер

Мені було б цікаво почути, чи повернуться розробники на WinDirStat з чим-небудь. Оперативна пам’ять буде для мене обмеженням у 32-розрядному або 64-бітному режимах.
Натан Палмер

1
Офіційного побудови немає, але я можу надіслати вам неофіційне - очевидно, було б складно прокрутити свій власний, якщо у вас немає Visual Studio! (my.name@gmail.com доходить до мене)
Skyhawk


3

+1 для продуктів TreeSize, але ...

Ваше речення про "недостатнє прибирання місця" змушує мене замислитися: Чи могли б у вас закінчитися зарезервованого місця для NTFS MFT? Якщо файлова система захоплює більше MFT-простору, ніж спочатку виділяється, вона не повертається до звичайної файлової області та не відображається в операціях дефрагментації.

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

"Томи з невеликою кількістю відносно великих файлів спочатку вичерпують незарезервований простір, тоді як томи з великою кількістю відносно невеликих файлів спочатку вичерпують простір зони MFT. У будь-якому випадку фрагментація MFT починає відбуватися, коли одна область або Якщо незарезервований простір стає заповненим, з MFT-зони, що конкурує з MFT, починає виділятися простір для файлів і каталогів користувачів, які конкурують з MFT для розподілу. Якщо зона MFT стає повною, місце для нових записів MFT виділяється з залишку диск, знову конкуруючи з іншими файлами. "


Це схоже на щось хороше перевірити. На жаль, ми не можемо побачити розмір MFT, оскільки defrag не буде аналізувати без CHKDSK, а CHKDSK наразі не працює із "Невизначеною помилкою."
Натан Палмер

3
  1. cd \
  2. dir / s> out.txt
  3. пуф! Магія буває; або з'являється хакер з перла
  4. Результати!

Серйозно. Я зробив це з 5 або 6 мільйонами файлів; не впевнений, що саме ви шукаєте, але хороша мова сценаріїв з'їсть це.


Отож, що відбувається на кроці №3 .. якщо припустити, що хакер з-за перла не з’являється?
Натан Палмер

Чи можете ви опублікувати більше інформації про те, що вам потрібно? Найбільші файли? Найбільші каталоги? Вам потрібна інформація про дату / час? Це разова потреба чи повторювана?
SqlACID

Поки що це один раз. Мені потрібно знати, які каталоги є найбільшими (реж. + Діти), але мені потрібно буде пройти кілька каталогів, перш ніж ця інформація дійсна. Тоді мені потрібно буде розбивати файли за датою, щоб я міг переглядати останні та старі файли.
Натан Палмер

3

Я зазвичай не користувач Windows, але я знаю про існування Cygwin. :-)

Якщо це працює досить добре, щось подібне

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

чи, можливо, у Сігвіна

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

У будь-якому разі, вони повинні надрукувати 50 найбільших каталогів (розміри в мегабайт).


2

Я знайшов кілька проблем зі Spacemonger і шукаючи утиліту, яку я міг легко перенести або запустити з USB-накопичувача - Space Sniffer виявився дуже універсальним у цьому відношенні, і обробляв багатотерапевтичні томи легко.


багато терабайтних томів з кількістю файлів? Здається, нашим головним питанням є не те, скільки місця використовується, а скільки файлів може обробити програма. Більшість захлинаються в 10 мільйонів.
Натан Палмер

У мене немає сервера з більш ніж декількома мільйонами файлів, щоб пережити, тому я не зміг би впевнено відповісти на ваше 10-мільйонне запитання файлів - моє єдине припущення було б, щоб за допомогою цих інструментів ви могли встановити глибину каталогу, на якій візуалізується - знайти щасливий носій, а потім заглиблюйтесь у папку, яка вам потрібна, також слід заощадити час, роблячи візуалізацію.

1

du -s можна використовувати в крайньому випадку і працюватиме стільки, скільки потрібно.


Спасибі. Перевірте це наступного разу, коли я буду в системі * ix.
Натан Палмер


Не зрозумів, що це доступно на Windows. Я перевірю це. Спасибі.
Натан Палмер



0

Згортаючи таблицю mft, я маю на увазі, що jkdefrag, оригінальна версія відкритого коду, дав дуже точний вигляд диска, включаючи різне забарвлення для областей mft. Я думаю, що я раніше використовував це для визначення великого розміру mft та фрагментації.

Також не піклується про chdsk.

Ви можете спробувати це?


Я спробував це. Коли я запускаю аналіз, то страждає та сама доля, що і у більшості інших програм. Забагато файлів / папок, що зберігаються в пам'яті.
Натан Палмер

Вибачте, що прочитав це. Схоже, проблема з платформою. У мене є ще одна пропозиція: Дзеркало диска (бітове зображення, зображення м'якого або апаратного дзеркала) незалежно від того, розбийте дзеркало і покладіть копію під криміналістику на іншу платформу, наприклад. linux / nix. Це витрачало достатньо часу, щоб гарантувати витрати дзеркального диска, що стосуються обсягу вкладеного вами робочого часу.
розгорнути мавку


0

Я використовував Disk Usage Analyzer - Baobab в Linux, використовуючи функцію віддаленого сканування на сервері Windows. Я не знаю, що це за межі.

Fedora LiveCD містить Baobab. Завантажте його на будь-якому комп’ютері вашої локальної мережі.

Це все безкоштовно - як у пиві, так і в мовленні. Також для комерційного використання.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.