Размер кластера при форматировании флешки и диска
Друзья, приветствую вас в очередной раз на нашем наидобрейшем портале WiFiGId. При форматировании тома диска (особенно на WIndows) вылезает окно, где нужно указать размер кластера. Меня часто спрашивают, какой же размер кластера лучше указать при форматировании. Этой теме и посвящаю отдельную заметку.
Лучший вариант
Если вы абсолютный новичок, и не хотите сделать что-то странное – оставляйте тот размер, который указан у вас по умолчанию. Причем можно указать и сам размер по умолчанию, и просто значение «Стандартный размер кластера».
Итоговый вывод: стандартный размер кластера – это нормально.
Зачем нужен нестандартный размер?
Примечание. Тем, кто использует сжатие NTFS – оно не работает при размере кластера больше 4 Кб (4096 байт).
Предлагаю очень поверхностно пробежаться по теории и определить случаи, когда нужно использовать нестандартный размер кластера. Кластер – минимальная единица места на жестком диске. Чем меньше размер кластера (иногда называют «единицей распределения»), тем экономнее будет размещение файлов. Чем больше кластер, тем жесткий диск будет быстрее обращаться к ним. Небольшие разъяснения:
- Допустим, мы используем стандартный размер кластера 4 Кб (4096 байт). И создаем обычный текстовый файл, который весит на самом деле 100 байт. На диске же этот файл будет занимать размер кластер – 4 Кб. Остальное место «пропадает» вникуда. Если таких мелких файлов немного – потери минимальны. Если же все ваше пространство состоит из таких файлов, да еще и указываете размер кластера в несколько гигабайт – место очень быстро закончится. На практике стандартные размеры не сильно влияют на расход места, так что можно смело использовать их.
- Чем больше размер кластера, тем жесткий диск быстрее обращается к ним (а еще и меньше, а значит диски и флешки будут работать чуть надежнее). Для достижения максимальной скорости работы диска размер кластера должен быть максимальным. На практике же это применимо только к использованию больших файлов на диске (например, фильмов), но и так особенного прироста скорости не будет. В домашних условиях для увеличения скорости гораздо лучше поменять свой диск (с HDD на SSD или с SSD на M.2).
- С другой стороны, нестандартный размер тома может быть причиной конфликта в каких-то приложениях. Так для установки той же Windows рекомендуется все-таки размечать свой диск или флешку стандартным размером кластера.
Стандартные размеры
Если вы форматируете диск или флешку вручную через ту же командную строку, возможно, вам пригодится этот раздел. Привожу рекомендованные стандартные размеры кластера под все размеры тома и актуальные файловые системы.
Размеры привожу под все актуальные версии Windows (Windows 7, Windows 10, Windows 11).
Файловая система | Размер тома (диск, флешка) | Размер кластера |
---|---|---|
NTFS | 7 Мб – 16 Тб | 4 Кб |
NTFS | 16 – 32 Тб | 8 Гб |
NTFS | 32 – 64 Тб | 16 Гб |
NTFS | 64 – 128 Тб | 32 Гб |
NTFS | 128 – 256 Тб | 64 Гб |
FAT32 | 32 – 64 Мб | 512 байт |
FAT32 | 64 – 128 Мб | 1 Мб |
FAT32 | 128 – 256 Тб | 2 Гб |
FAT32 | 256 Мб – 8 Гб | 4 Кб |
FAT32 | 8 – 16 Гб | 8 Кб |
FAT32 | 16 – 32 Тб | 16 Гб |
exFAT | 7 Мб – 256 Мб | 4 Кб |
exFAT | 256 Мб – 1 Гб | 32 Кб |
exFAT | 32 Гб – 256 Тб | 128 Мб |
Определяемся с размером кластера при форматировании USB накопителя в NTFS
При форматировании USB накопителя или жесткого диска обычными средствами ОС Windows в меню есть поле «Размер кластера». Обычно пользователь пропускает это поле, оставляя его значение по умолчанию. Также причиной этому может стать то, что нет подсказки относительно того, как правильно выставить этот параметр.
Какой выбрать размер кластера при форматировании флешки в NTFS
Если открыть окно форматирования и выбрать файловую систему NTFS, то в поле размер кластера становятся доступными варианты в диапазоне от 512 байт до 64 Кб.
Давайте разберемся, как влияет параметр «Размер кластера» на работу флешки. По определению, кластер представляет собой минимальный объем, выделенный для хранения файла. Для оптимального выбора этого параметра при форматировании устройства в файловой системе NTFS нужно учитывать несколько критериев.
Данная инструкция понадобится Вам при выполнении форматирования съемного накопителя в NTFS.
Критерий 1: Размеры файлов
Определитесь с тем, файлы какого размера вы собираетесь хранить на флешке.
Например, размер кластера на флешке 4096 байт. Если скопировать файл размером 1 байт, то он займет на флешке все равно 4096 байт. Поэтому для небольших файлов лучше использовать размер кластеров поменьше. Если же флешка предназначается для хранения и просмотра видео и аудио файлов, то размер кластера лучше выбрать побольше где-то 32 или 64 кб. Когда флешка предназначена для различных целей, то можно оставить значение по умолчанию.
Помните, что неправильно выбранный размер кластера приводит к потере пространства на флешке. Система выставляет стандартный размер кластера 4 Кб. И если на диске есть 10 тысяч документов по 100 байт каждый, то потери составят 46 Мб. Если вы отформатировали флешку с параметром кластера 32 кб, а текстовый документ будет всего 4 кб. То он все равно займет 32 кб. Это приводит к нерациональному использованию флешки и потере части пространства на ней.
Корпорация Microsoft для расчета потерянного пространства использует формулу:
(размер кластера)/2*(количество файлов)
Критерий 2: Желаемая скорость обмена информацией
Учитывайте тот факт, что от размера кластера зависит скорость обмена данных на вашем накопителе. Чем больше размер кластера, тем меньше операций выполняется при обращении к накопителю и тем выше скорость работы флеш-накопителя. Фильм, записанный на флешке с размером кластера 4 кб, будет воспроизводиться медленнее, чем на накопителе с размером кластера 64 кб.
Критерий 3: Надежность
Примите к сведению, что флешка, отформатированная с кластерами больших размеров более надежна в эксплуатации. Уменьшается количество обращений к носителю. Ведь, надежнее отправлять порцию информации одним большим куском, чем несколько раз маленькими порциями.
Имейте в виду, что с нестандартными размерами кластеров могут быть проблемы с софтом, работающим с дисками. В основном это служебные программы, использующие дефрагментацию, а она выполняется только при стандартных кластерах. При создании загрузочных флешек размер кластера также нужно оставлять стандартным. Кстати, выполнить данную задачу Вам поможет наша инструкция.
Некоторые пользователи на форумах советуют при размерах флеш-накопителя более 16 Гб, разделять его на 2 тома и форматировать их по разному. Том меньшего объема отформатировать с параметром кластера 4 Кб, а другой под большие файлы под 16-32 Кб. Таким образом будет достигнута и оптимизация пространства и нужное быстродействие при просмотре и записи объемных файлов.
Итак, правильный подбор размера кластера:
- позволяет эффективно размещать данные на флешке;
- ускоряет обмен данными на носителе информации при чтении и записи;
- повышает надежность эксплуатации носителя.
И если Вы затрудняетесь с выбором кластера при форматировании, то лучше оставляйте его стандартным. Также можете написать об этом в комментариях. Мы постараемся помочь Вам с выбором.
Меняем размер логического сектора диска: 520, 524, 528, 512, 4k
Пришли SAS диски с неверным размером логического сектора в 520 байт. Диски заказывали для сервера HPE Proliant DL360 Gen9 с RAID контроллером Smart Array P440ar.
При установке такого диска в сервер получаем ошибку (В Smart Storage Administrator):
This physical drive does not support RAID and is not exposed to OS. It cannot be used for configuration on this controller.
Сам диск в списке отображается, его данные определяются. Однако мы видим:
Drive Configuration Type: Unsupported for RAID Configuration.
Logical / Physical Block Size: 520/4160
Я уже встречал подобный размер логического сектора в некоторых хранилищах. Лишние байты используются для дополнительного контроля целостности данных. Размер физического блока 4160 байт. Т.е. один физический блок разбит на восемь логических секторов по 520 байт.
Если посмотреть больше деталей, то ничего нового мы не узнаем. Ещё видно, что диск не пробрасывается в операционную систему.
А какой должен быть размер логического сектора, чтобы RAID контроллер смог с ним работать? Посмотрю на соседнем сервере информацию о каком-нибудь диске. Под руки попался HDD диск, он прекрасно работает в RAID массиве. Размер логического сектора 512 байт. Физического, кстати, тоже.
Со временем появились диски с увеличенным размером физического сектора, чтобы они определялись старыми RAID контроллерами, диск умеет эмулировать размер логического сектора и может отображаться , например, как 512/4096 или 512e/4096. Это так называемый Advanced Format — новый формат разметки секторов. Вместо традиционного сектора размером 512 байт используется 4096 байт. Для решения проблем с совместимостью был введён дополнительный стандарт 512E, который обозначает диски с физическим размером сектора 4096 байт, но при этом эмулирующие обычный размер сектора в 512 байт.
Обычные современные контроллеры поддерживают три формата разметки:
Формат | Размер логического сектора | Размер физического сектора |
512N | 512 байт | 512 байт |
512E | 512 байт | 4096 байт (4КиБ) |
4KN | 4096 байт (4КиБ) | 4096 байт (4КиБ) |
Я точно знаю что RAID контроллер Smart Array P440ar поддерживает форматы 512N и 512E. Не уверен, что он поддерживает 4KN, но это сейчас не важно. Для того чтобы наш диск заработал, нужно изменить размер логического сектора с 520 байт на 512 байт. Это возможно.
Режим HBA
Для начала нужно сделать так, чтобы диск был виден в операционной системе. Для этого переводим контроллер в режим HBA (Host Bus Adapter), в этом режиме контроллер не работает с массивами, а просто передаёт диски операционной системе.
Enable HBA Mode.
Контроллер перейдёт в режим HBA после перезагрузки. Finish.
Ubuntu Desktop
Менять размер логического сектора будем в Ubuntu. Скачиваем инсталляционный дистрибутив Ubuntu Desktop 20.04.2 — ISO образ. Монтируем к серверу и загружаемся с него.
Работаю удалённо, канал медленный, процесс длительный. А вот и Ubuntu.
Для работы нам понадобится Интернет, загрузим пару пакетов. Самый главный пакет для работы с дисками — sg3-utils.
Можно и вручную его скопировать, но там куча зависимостей, лень качать все, будем пользоваться преимуществами Интернета. Настраиваем сеть и обновляем репозиторий.
apt-get update
Работа с дисками
Давайте посмотрим, что у нас с дисками.
dmesg | grep -E "(mpt|scsi|sd)" | less
Я специально оставил в сервере только один диск, чтобы уменьшить количество информации.
Операционная система видит наш диск, но ругается:
Unsupported sector size 520
0 512-byte logical blocks: (0 B/0 B)
Для форматирования диска нужно узнать его имя, можно и в dmesg выловить, но проще воспользоваться вспомогательными пакетами, установим их.
apt-get install lsscsi apt-get install sg3-utils
Узнаем имя диска с помощью lsscsi:
lsscsi -g
Имя нашего диска /dev/sg1. Имя также можно узнать с помощью утилиты sg_scan из пакета sg3-utils:
sg_scan -i
Проверить размер логического сектора:
sg_readcap /dev/sg1
Размер логического блока указанного диска /dev/sg1 520 байт, имя определили верно.
Приступаем к низкоуровневому форматированию:
sg_format --format --size=512 /dev/sg1
Не забываем указать новый размер логического сектора 512 байт.
Форматирование уничтожит все данные на диске!
Форматирование начинается не сразу, есть несколько секунд на то, чтобы нажать Ctrl+C для отмены операции.
Если ничего не нажимать, то форматирование начнётся.
Процесс долгий, мой SSD диск на 960 Гб форматировался около 20 минут.
FORMAT UNIT Complete. Форматирование завершено.
Посмотрим каким стал размер логического сектора:
sg_readcap /dev/sg1
512 байт, как и планировали.
Проверка
Перезагружаем сервер и входим в Smart Storage Administrator. 512e / 4096 Bytes. Диск прекрасно работает. При переключении контроллера в режим RAID диск может использоваться в RAID массивах.
Мы с вами изменили размер логического сектора диска с 520 байт на 512 байт.
P.S.
На видео к статье я прошиваю оставшиеся три диска точно таким же способом.
P.P.S
Если sg_format выдаёт ошибку вида:
Fixed format, current; Sense key: Illegal Request Additional sense: Parameter list length error Sense Key Specific: Error in Data parameters: byte 0 MODE SELECT command: Illegal request sense key, apart from Invalid opcode
то можно посмотреть в сторону атрибута -6 или —six:
--six|-6 use 6 byte MODE SENSE/SELECT to probe disk (def: use 10 byte MODE SENSE/SELECT)
sg_format --format --size=512 --six /dev/sg1
Источник https://wifigid.ru/raznye-sovety-dlya-windows/razmer-klastera-pri-formatirovanii
Источник https://lumpics.ru/which-choose-cluster-size-when-formatting-flash-drive-in-ntfs/
Источник https://internet-lab.ru/sector_size_520_to_512