Лучший способ хранить игры с большим количеством файлов на жестком диске

979
Matěj Pokorný

Я только что установил Age of Mythology на свой внешний жесткий диск и заметил, что довольно маленькая игра (2 ГБ) занимает почти 55 ГБ на диске.

Age of Mythology size

Я знаю, что это связано с большим размером единицы размещения, но 1 МБ рекомендуется для объема 3 ТБ (согласно Windows).

DISKPART> filesystems  Current File System  Type : exFAT Allocation Unit Size : 1024K Flags : 00000000  File Systems Supported for Formatting  Type : NTFS (Recommended) Allocation Unit Sizes: 4096 (Default), 8192, 16K, 32K, 64K, 128K, 256K, 512K, 1024K, 2048K  Type : exFAT (Default) Allocation Unit Sizes: 256K, 512K, 1024K (Default), 2048K, 4096K, 8192K, 16384K, 32768K 

Что мне делать в этих случаях? Мне нравится VMware (и другие программы для виртуализации), который хранит все в одном большом файле. Это что-то похожее для игр?

0

2 ответа на вопрос

3
harrymc

Ваша проблема заключается в формате диска: exFAT, который является форматом Microsoft, который был разработан для использования на маленьких дисках, обычно в Windows CE. Его ограничение приводит к тому, что на больших дисках требуется очень большой блок выделения, что приводит к трате дискового пространства.

Например, небольшой текстовый файл размером 1 КБ займет на вашем диске 1 МБ, что является настоящей тратой.

Поэтому я предлагаю переформатировать ваш диск в NTFS, который является единственным форматом Microsoft, который поддерживает современные большие диски.

Рекомендуемые размеры кластеров для NTFS см. В статье службы поддержки Microsoft.
Размер кластера по умолчанию для NTFS, FAT и exFAT .

Рекомендуемый размер сектора NTFS для диска 3 ТБ составляет всего 4 КБ. Абсолютно самый большой рекомендуемый размер - 64 КБ для дисков, превышающих 128 ТБ. Размер сектора 1 МБ, безусловно, не рекомендуется.

Я предлагаю затем переформатировать ваш внешний диск в NTFS с размером сектора 4 КБ. Это решит вашу проблему без необходимости в дополнительном программном обеспечении.

Является ли «кластер» таким же, как «единица выделения» в FAT / exFAT? Если так, то продемонстрированные OP рекомендации инструмента DISKPART не совсем соответствуют рекомендациям базы знаний MS ... grawity 5 лет назад 0
@ Grawity: они одинаковы. Я бы пошел с NTFS, так как exFAT кажется менее приспособленным для такого большого диска (несмотря на то, что рекомендуемый размер составляет всего 128 КБ, но, похоже, у него много маленьких файлов). harrymc 5 лет назад 0
Я думаю, что вы путаете exFAT и FAT - exFat на самом деле новее, чем NTFS IIRC Journeyman Geek 5 лет назад 0
@JourneymanGeek: На самом деле вы правы: exFat был преемником FAT32, и я думаю, что он является собственностью Microsoft по патентам. Он действительно был разработан для Windows CE, потому что таблицы файловой системы меньше (но также и более ограничены), поэтому он очень экономичен для маленьких дисков, но не очень хорош для больших. harrymc 5 лет назад 0
Я хочу придерживаться exFat, из-за совместимости с OS X .. Matěj Pokorný 5 лет назад 0
Затем вы должны уменьшить размер сектора до минимально возможного. Microsoft в моей ссылке выше рекомендует 128 КБ для диска 3 ТБ. Но странно, что diskpart позволяет использовать не менее 256 КБ. Но понимаю, что это огромно. harrymc 5 лет назад 0
Первый вариант с exFat - 256 КБ (или, по крайней мере, Windows говорит мне об этом), поэтому 55977 файлов означают, что на диске занято не менее 13,6 ГБ. Если совместимость не является проблемой, я бы выбрал NTFS с 4 КБ, но в этом случае я попробую вариант с виртуальным диском. Matěj Pokorný 5 лет назад 0
3
grawity

Мне нравится VMware (и другие программы для виртуализации), который хранит все в одном большом файле. Это что-то похожее для игр?

Ну, здесь нужно не само программное обеспечение для виртуализации; только его технология "виртуального диска".

Если изменение текущей файловой системы невозможно, вы можете создать образ диска с другой файловой системой внутри него. Он будет иметь собственную букву диска (по умолчанию), и вам придется монтировать его каждый раз, когда вы захотите поиграть в игру. (Вы, возможно, потребуется переустановить игру, или вы могли бы просто переместить его на ... это зависит от игры.)

Существуют сторонние инструменты, но в Windows 10 встроена эта функция: она позволяет создавать и монтировать .vhdxобразы дисков (того же типа, что и Hyper-V и VirtualPC) без каких-либо сторонних инструментов.

  1. Создайте образ VHDX:

    • Вы можете использовать Действие → Создать виртуальный жесткий диск в DiskMgmt.msc (если он выделен серым цветом, убедитесь, что в основном списке не выбран том). После создания он будет автоматически прикреплен, и вы увидите его в нижней части.
    • Вы можете использовать Hyper-V Virtual Machine Manager для создания нового VHDX.
    • Если вы хотите создать образ существующего физического диска, вы можете использовать Sysinternals Disk2vhd. Но не делайте этого сейчас, потому что создание образа существующей файловой системы exFAT также сохранит существующие проблемы с раздуванием.
  2. Примечание. Если ожидается интенсивная запись, изображения «фиксированного размера» обеспечат лучшую производительность на жестком диске благодаря уменьшенной фрагментации. (Принимая во внимание, что изображения динамического размера будут фрагментированы на базовом жестком диске, а также на уровне VHDX и во внутренней файловой системе.)

    (Это должен был получить собственный номер, потому что анализатор Markdown SU не самый лучший.)

  3. Смонтировать (прикрепить) изображение:

    • Вы можете дважды щелкнуть файл .vhdx.
    • Вы можете использовать Действие → Подключить VHD в DiskMgmt.msc (если он выделен серым цветом, убедитесь, что в основном списке не выбран том).
    • Вы можете использовать SELECT VDISKи ATTACH VDISKв DISKPART.
  4. Разбейте и отформатируйте виртуальный диск.

    Какой бы метод ни использовался, он создаст пустое изображение. Поэтому после подключения через DiskMgmt.msc вы должны щелкнуть правой кнопкой мыши и инициализировать его, создать раздел, отформатировать этот раздел (на этот раз с использованием NTFS или, по крайней мере, меньшего размера кластера exFAT). Вы можете сделать то же самое через DISKPART, если хотите.

  5. Переместите файлы на новый виртуальный диск. Убедитесь, что игра все еще работает.

  6. Отсоедините изображение - если хотите.

    • Вы можете использовать DISKPART или DiskMgmt.msc.
    • Вы можете извлечь диск через Windows Explorer (в окне Компьютер).
  7. Всякий раз, когда вы хотите играть в игру, прикрепите изображение снова.

Спасибо за подробное руководство! Это больше, чем я ожидал и вообще интересно не только для игр. Matěj Pokorný 5 лет назад 0

Похожие вопросы