Я купил жесткий диск Seagate ST3000DM001 3 ТБ. Он был продан внутри корпуса. Я отформатировал в ext4, скопировал некоторые данные на него, а затем я удалил его из корпуса и подключил его непосредственно к материнской плате. Мои данные не были видны ОС (он видел один неизвестный раздел ~ 300 ГБ, а остальные - как свободное место), поэтому я начал читать о Advanced Format и> 2 ТБ дисках.
Я снова подключил диск к USB, скопировал все данные и снова подключился к sata. Я использовал gparted для создания таблицы разделов GPT (утилита диска ubuntu не позволяла мне Error synchronizing after initial wipe: Timed out waiting for object (udisks-error-quark, 0
), создал один большой раздел 3Tb Ext4, оставил Align to
значение по умолчанию MiB
и отформатировал.
Привод распознан правильно и правильно установлен. Файлы могут быть скопированы с и на диск успешно.
Тем не мение:
Gparted показывает диск, имеющий 512 тыс. Секторов, который, я знаю, не соответствует действительности 1
пока cat /sys/block/sdb/queue/physical_block_size
сообщает4096
Я нашел несколько отчетов , которые libparted
имеют проблемы с не-512K секторами 2 и других 3 , которые говорят , что выравнивающий к МиБу достаточно.
Раздельные отчеты о том, что диск выровнен, когда я выбираю минимальный
(parted) align-check
alignment type(min/opt) [optimal]/minimal? min
Partition number? 1
1 aligned
(parted)
Правильна ли моя конфигурация? Есть ли у меня потеря производительности, потому что диск отформатирован с 512 тыс. Секторов, gParted сообщает о ложных значениях или я все понял неправильно?
источник
Ответы:
Он сообщает 512 байт, потому что это размер логического сектора для обратной совместимости со старыми ОС (Windows). (g) parted выравнивает разделы до 1 МБ, что более чем достаточно для правильной работы с дисками, использующими физические сектора 4k, так что все в порядке.
источник
Во-первых, большинство дисков расширенного формата имеют размер логического сектора 512 байт, хотя размер физического сектора составляет 4096 байт (4 КБ). Это делается путем манипулирования данными в прошивке привода, и это может привести к проблемам с производительностью, если разделы не выровнены должным образом. Скорее всего, это не источник вашей проблемы, и ваше внимание на выравнивание разделов неуместно. ( Для того, чтобы быть уверенным, выравнивание разделов является важным, это просто не является источником вашей проблемы.)
Моя догадка (и это являетсяпросто догадка) проблема заключается в переключении между USB-корпусом и прямым подключением диска. В некоторых корпусах 512-байтовые логические сектора на диске преобразуются в 4096-байтовые логические сектора, представленные на компьютере, то есть в отличие от встроенного программного обеспечения на диске расширенного формата. Я не уверен, но я подозреваю, что некоторые корпуса делают это только на дисках размером более 2 ТБ. Схемы разделения MBR и GPT ссылаются на данные по номерам секторов, поэтому изменение размера сектора делает данные разделения недействительными. Таким образом, если вы подготовите диск в корпусе USB, который переводится таким образом, а затем попытаетесь использовать диск напрямую (или наоборот), вы увидите ошибки, потому что разделы (и даже данные резервного копирования GPT) не будут где компьютер ожидает его. Это все равно, что сказать человеку с завязанными глазами
Решение этой проблемы состоит в том, чтобы подготовить и использовать диск одним способом - либо использовать корпус USB, либо использовать прямое соединение, а не оба. Если по какой-либо причине необходимы оба варианта, вам нужно найти приложение, которое работает без применения этого типа перевода.
Чтобы проверить мою гипотезу, вы можете использовать инструмент (например
parted
), который сообщает о размерах логического сектора. Например:Я опустил кучу информации из этого вывода. Важная деталь находится в заключительной строке, показанной здесь: размеры логического и физического секторов составляют 512 байтов. Если вы запустите этот тест, затем подключите диск другим способом и запустите его снова, вы можете сравнить результаты. Если размер логического сектора изменяется в зависимости от того, как вы прикрепляете диск, моя гипотеза верна и является источником вашей проблемы. Или, по крайней мере, это одна проблема; могут быть и другие. В частности,
Error synchronizing after initial wipe
указанная вами ошибка может указывать на другую проблему. OTOH, это может быть побочным эффектомparted
пытаясь прочитать данные резервной копии GPT из-за конца диска. В любом случае, если вы видите изменение в размере логического сектора, вы должны решить эту проблему, прежде чем заниматься чем-либо еще. Если вы хотите перераспределить диск, но у вас есть проблемы из-заError synchronizing
ошибки, попробуйте использоватьgdisk
илиcgdisk
(вgdisk
пакете), а неparted
или GParted;gdisk
семья более устойчива к ошибкам , чем вparted
семье.источник
parted /dev/sdb print
возвращается,512/4096
поэтому кажется, что gParted сообщает размер логического сектора, который объясняет, почему @LiveWireBT видит 4096 для того же диска (подключенного через USB), а также подтверждает вашу догадку, как указано выше.Внесены изменения как в ядро Linux, так и в утилиты для поддержки дисков расширенного формата. Эти изменения обеспечивают правильное выравнивание всех разделов на дисках расширенного формата на границах секторов 4K. Поддержка ядра для дисков расширенного формата доступна в версиях ядра 2.6.31 и выше. Поддержка порционирования и форматирования дисков Advanced Format доступна в следующих утилитах Linux:
Fdisk: GNU Fdisk - это утилита командной строки, которая разбивает жесткие диски. Версии 1.2.3 и выше поддерживают диски расширенного формата.
Parted: GNU Parted - графическая утилита для разделения жестких дисков. Версии 2.1 и выше поддерживают диски расширенного формата.
Собственные 4K-диски (4Kn) имеют размер логического сектора 4 КБ. Современные операционные системы могут хранить данные на этих дисках, но они обычно не могут загружаться с этих дисков. Эти диски обычно являются внешними дисками с USB-соединением.
Чтобы создать раздел, используемый в качестве устройства хранения мультимедиа, просто нажмите Ctrl+ Alt+ Tна клавиатуре, чтобы открыть терминал. Когда он откроется, выполните команду (ы) ниже:
Большинство дисков 4k имеют размер физического сектора 4096 байт, так что 3 ТБ могут уместиться на пластинах, но у них все еще есть размер логического сектора 512B для совместимости с ОС, которые ожидают, что один сектор будет 512B. Вот почему, когда вы используете команду print в parted для распечатки деталей, это говорит, что размер сектора логический / физический 512B / 4096B. Это нормально.
Это «преобразование» осуществляется интеллектом на самом диске, и это нормально. Это как это должно работать.
Если вы не видите всего 3 ТБ, сначала проверьте в BIOS, что он не ограничивает размер диска. Может быть, вам нужно обновление BIOS для поддержки диска.
Также использование parted для создания раздела, начинающегося с 0, что является ошибкой. Вам необходимо запустить первый раздел в секторе 2048, который эквивалентен 1 МБ, чтобы разделы на диске были выровнены для оптимальной производительности.
Таким образом, измените единицу измерения на MiB, напечатайте информацию о диске, которая также напечатает размер диска в MiB, и создайте раздел (если вы хотите только один раздел), начиная с 1MiB и заканчивая последним MiB (или одним перед последним) ,
Например, диск объемом 3 ТБ должен иметь что-то вроде 2 861 022 МБ. Таким образом, создание одного раздела, охватывающего весь диск на дисковом устройстве под названием / dev / sdX, будет выглядеть так (замените X правильной буквой):
Если размер диска составляет несколько МБ, больше или меньше 2861022, настройте конечное местоположение.
Вот и все. После этого создайте нужную файловую систему в разделе.
Источники и дополнительное чтение
4K-сектор дисков и Linux
Проверка ошибок и установка 4k дисков в Linux
Форумы Ubuntu
источник
Пока вы выравниваете свои разделы по кратному 4 КБ, все в порядке. В противном случае вам не нужно делать ничего особенного для дисков с физическими секторами 4 КБ.
Старые разделы программного обеспечения выравнивали разделы на нескольких секторах размером 63x512B, что приведет к снижению производительности, если накопитель имеет физические сектора 4 КБ, поскольку это 31 с половиной килобайт, а НЕ кратно 4 КБ.
Практически никакое программное обеспечение для разметки, доступное сейчас в Ubuntu, больше не будет этого делать (если только вы не попросите об этом как-нибудь). По умолчанию большинство из них будут выровнены с кратным 1 МБ (секторам 2048x512B, что также равно секторам 256x4KB).
Что произойдет, если вы не выровняете это?
Если вы не выровняете разделы с кратностью 4 КБ, худшее, что может произойти, - это потеря производительности (довольно значительная для небольших файлов). Диски с секторами 4 КБ, как правило, эмулируют сектора 512 Б для совместимости с существующими системами. Таким образом, они прекрасно функционируют, если рассматривать их как секторный диск 512В. Но когда вы пишете в одну область 512B, она перезаписывает весь сектор 4KB.
Таким образом, по соображениям производительности важно убедиться, что кластеры 4 КБ, которые вы используете в своей файловой системе, выровнены с секторами 4 КБ на диске, чтобы одна запись кластера не привела к необходимости записи двух секторов 4 КБ на диске.
источник