[Quote]

    Kupr_Soft
  • 26917
  • Longevity: 2 years 7 months
  • Posts: 26
  • REPUTATION:4

    [+] [-]
  • Location: Питер
Доброго...
искал, но вроде не увидел конкретно такой ситуации как у меня...
в общем есть флешка, с несколькими разделами (4)
все в Fat32(LBA)
на первом разделе DOS и автозапуск Груб (0.4.6a 2014-01-17)
в грубе есть переходы на другие разделы, там пара WinPE и дистрибутив Win10
Менюшки выглядят так:
chainloader (hd0,3)+1
chainloader (hd0,2)+1
root (hd0,1)/MIPE/BOOT/BOOTMGR
chainloader (hd0,1)+1/MIPE/BOOT/BOOTMGR
boot

сейчас понадобилось перейти на другую флешку...
делал клонирование разными программами
Ghost, Acronis... и всякие другие.
На новой флешке, в процессе загрузки с этих разделов, выдаёт ошибку подобного вида:

Fatal! Inconsistent data read from (0x80)938418113+127
Fatal! Inconsistent data read from (0x80)938418176+1
Fatal! Inconsistent data read from (0x80)938418113+127
Fatal! Inconsistent data read from (0x80)938418176+1
chainloader (hd0,3)
Error 25: Disk read error

и чёт я не понимаю, куда копать...
А если запускать новую флешку через Qemu, то вроде всё ок и нормально загружается...


Last edited by Kupr_Soft on 2023-08-23 11:51; edited 1 time in total

[Quote]

    Ander_73
  • 15549
  • Longevity: 6 years 7 months
  • Posts: 3344
  • REPUTATION:127

    [+] [-]
100947Груб (0.4.6a 2014-01-17)
Не пора ли отнести бабушку в морг? ab
Я обычно прислушиваюсь к рекомендациям:
I highly recommend that you download and use only this version of grub4dos 0.4.6a version 2020-02-29 (2019-09-09 or 2019-12-30 are also good) – Other versions of grub4dos, both older and newer, may be buggy!

[Quote]

    Kupr_Soft
  • 26917
  • Longevity: 2 years 7 months
  • Posts: 26
  • REPUTATION:4

    [+] [-]
  • Location: Питер
Я обычно прислушиваюсь к рекомендациям:
I highly recommend that you download and use only this version of grub4dos 0.4.6a version 2020-02-29 (2019-09-09 or 2019-12-30 are also good) – Other versions of grub4dos, both older and newer, may be buggy!
Да блин, я уже попробовал
grub4dos-0.4.6a-2019-09-09
grub4dos-0.4.6a-2019-12-30
grub4dos-0.4.6a-2020-02-29
grub4dos-0.4.6a-2023-07-01

дык они вообще НЕ запускаются =)
Programm too big to fit in memory
бред какой-то...
уже поздно вечером попробовал не клонировать а тупо заново форматнуть в DOS и напихать всё туда с чистого листа...
Как не странно, стали работать все версии груба...
остаётся сделать разделы и их проверить..
P.S.
после дня ковыряния...
выяснено, что флешка, работает, но только на виртуалке либо на современной материнке.
если мать типа для Athlon X2 ил более ранняя то GRUB вываливается с ошибкой... при попытке перейти на другой раздел...
всё больше склоняюсь к тому что...
старые материнки походу не понимает флешки более 128Gb... либо некорректно считают сектор для старта с раздела...
на строй флешке 128Gb всё ок, работает на ВСЕХ материнках. (у меня там 4 раздела, все в FAT32)
пробовал 256Gb и 512Gb а вот с ними уже проблема...
хех... блин прикольно... ai
P.P.S. На всякий случай форматнул один из разделов в NTFS и проверил. Ведёт себя так-же как и FAT32.
На новых видится и пытается стартовать, на старых материнках- в ошибку...
Попробовал даже клонировать 128 на 256 с сохранением размеров всех разделов. (в конце пустое неразмеченное пространство)
всё равно не хочет грузиться с разделов...
Значит дело всё-же именно в самой разметке диска. В общем количестве секторов...

[Quote]

    JuraAD
  • 28398
  • Longevity: 2 years 2 months
  • Posts: 65
  • REPUTATION:24

    [+] [-]
-)
https://ru.ruwiki.ru/w/index.php?title=FAT32
Максимально возможное число кластеров в FAT32 равно 268 435 445, что позволяет использовать тома (логические диски) объёмом до 8 TiB. Фактически максимальный размер всего диска не может быть более 2 TiB[1]. Размер кластера по умолчанию для файловой системы FAT32 составляет от 512 байт до 32 КБ в зависимости от размера тома и конкретной версии ОС[2]. При использовании размера кластера, равного 32768 байт, максимальный размер тома составит чуть менее 8 ТБ[3]. Хотя размер сектора может быть любым, традиционно он считается равным 1 сектору диска и равен 512 байт и так как эта величина не менялась с момента создания — она может считаться некоторым ПО как константа. Это может вызвать некоторые проблемы совместимости.
ps: современный стандарт FAT32 может допускать размер кластера: 64КБ и 128КБ, но с таким форматом я не нашел кто может работать... :lol: Тестировал кластер 32КБ, раздел 32ГБ и 64ГБ (по-моему), выше - уже начинаются проблемы, крышу срывает у утилит...
>format.com /?
Форматирование диска для работы с Windows.
FORMAT том [/FS:файловая_система] [/V:метка] [/Q] [/L[:состояние]] [/A:размер] [/C] [/I:состояние] [/X] [/P:проходы] [/S:состоян
ие]
...
/A:size Переопределяет размер единицы размещения по умолчанию. В общих случаях
...
FAT32 поддерживает размеры 512, 1024, 2048, 4096, 8192, 16K, 32K, 64K,
(128K, 256K для размера сектора > 512 байт).
...
Обратите внимание, что в системах FAT и FAT32 существуют
следующие ограничения на число кластеров в томе:
FAT: число кластеров <= 65526
FAT32: 65526 < число кластеров < 4177918
...
psps: загрузчики из MBR используют разные прерывания BIOS
13h 02h
13h 0ah
зависит от поддержки функций BIOS-ом... На старых машах 13h 0ah может не поддерживаться... -)

[Quote]

    Kupr_Soft
  • 26917
  • Longevity: 2 years 7 months
  • Posts: 26
  • REPUTATION:4

    [+] [-]
  • Location: Питер
Чёт перечитываю, пытаюсь осмыслить...
но никак не могу в голове всё разложить по полкам...
Ну размер кластера, это размер куска данных который можно записать на диск.
если скажем кластер 64кб а кусок данных 1кб он всё равно займёт ВЕСЬ кластер.
и по идее если сделать размер кластера-большой то Общее количество кластеров на диске станет меньше...
счас проверил -> флешка на 32Gb
FAT32 64 - 472 096 (количество кластеров)
FAT32 16 - 1 887 616 (количество кластеров)

Значиться:
кластер для FAT32 =
классика это 512
тестировалось 32к
в теории максимум 64к
если я правильно понимаю мысль, то надо форматьнуть эту большую флешку с кластером в 32 и посмотреть общее количество кластеров, что-бы оно не выходило за 4 177 918
p.s. Сейчас попробовал...
если разбить по 32кб (32 768 байт)
то количество кластеров = 15 624 472
блин... дофига получается...
сейчас форматнул с помощью проги
с кластером 64к (65 536 байт)
то количество кластеров = 7 813 189
один фиг много... почти в два раза...
P.P.S.
В общем сейчас побаловался ещё...
есть флешка на 256Gb
софтиной форматнул её FAT32 кластер 32к
с помошью BootIce прописал досовый загрузочный сектор, закинул системные файлы.
в Виртуалке стартанул DOS
потом эту-же флешку форматнул FAT32 с клаcтером по 64к
с помошью BootIce прописал досовый загрузочный сектор, закинул системные файлы.
и при запуске виртуалка не стартанула DOS
написало типа загрузка, и всё на этом.
ну походу рeально что максимальный кластер для DOS это всё-же 32к
и соотвественно, обхитрить тут не получится...
максимальный размер Флешки для нормально работы загрузочного DOS
это 128Gb

[Quote]

    JuraAD
  • 28398
  • Longevity: 2 years 2 months
  • Posts: 65
  • REPUTATION:24

    [+] [-]
101006Чёт перечитываю, пытаюсь осмыслить...
но никак не могу в голове всё разложить по полкам...
Ну размер кластера, это размер куска данных который можно записать на диск.
если скажем кластер 64кб а кусок данных 1кб он всё равно займёт ВЕСЬ кластер.
и по идее если сделать размер кластера-большой то Общее количество кластеров на диске станет меньше...
https://ru.ruwiki.ru/w/index.php?title=LBA
В общем нужно понимать:
1. Понятие сектора - физический размер единицы записи на поверхность уст-ва - часто путают с блоками, на уровне прерываний мы работаем не с сектарами, а с блоками, с секторами работает контроллер диска (размер блока может совпадать с размером сектора, раньше так и было 512 байт)...
2. Понятие блок - размер единицы записи программный на уст-во...
3. Понятие кластера - размер единицы записи в разделе. Для каждого раздела - свой...
и т.д...
А ограничения на размер раздела нужно считать по размеру блока и допустимого количества... У MS свои предпочтения - свои стандарты... всех научили дури... -)))
+ есть ограничение на размер раздела в записи MBR - но это другая история про дурь инженерную...

[Quote]

    Kupr_Soft
  • 26917
  • Longevity: 2 years 7 months
  • Posts: 26
  • REPUTATION:4

    [+] [-]
  • Location: Питер
Май факинг брейн...
стало ещё запутаннее...
... по факту, Досовый загрузчик в MBR - работает и на больших дисках, вон 512Gb размечаk в FAT32
и запускал DOS. всё ок.
Значит полагаю что ЭТА тема тут не мешает:
101004
psps: загрузчики из MBR используют разные прерывания BIOS
13h 02h
13h 0ah
зависит от поддержки функций BIOS-ом... На старых машах 13h 0ah может не поддерживаться... -)
А вот уже у GRUB4DOS проблемы при обращении к разделам.
причём только на старых матерях...
старые материнки не умеют понимать разделы что-ли... или адресацию...
но ведь на современных матерях такого нету, всё грузится...
...получается на уровне BIOS где-то ограничения на ...
на размер блока... или даже точнее на его адресацию...
типа слишкоб большие цифры получаются и старый биос не понимает куда обращаться на диске...
я уже просто не понимаю, куда копать что-бы попытаться как-то решить броблему-то...
разбить на 4 раздела флешку, делал...и кластеры размером менял...
но если я правильно понимаю, то скорее всего ограничение на количество блоков, а оно не зависит от разделов и кластера...
оно просто изначально есть и его нельзя изменить...
а значит и подсунуть старому биосу то-же...
Но с другой стороны...
я-же делал клон 128Gb флешки на 512Gb
так что-бы все разделы были точь в точь и в конце оставалось свободное место...
по идее в таком случаем я НЕ обращался к каким-то большим цифрам по адресам...
и всё равно это вываливалось с ошибками...

[Quote]

    JuraAD
  • 28398
  • Longevity: 2 years 2 months
  • Posts: 65
  • REPUTATION:24

    [+] [-]
http://biosprog.narod.ru/real/ints/int13.htm
не совсем правильно написано... вообще в и-нете столько дури написано...
13h 02h - прочитать секторы в память (старая)
13h 0ah - прочитать длинные секторы в память (новая) где-то с 1994 года начали внедрять...
различаются, вторая более современная
старые машины (BIOS) могут не поддерживать функцию 13h 0ah... GRUB4DOS - когда я его смотрел, по-моему была в нем автопроверка поддержки
кроме-того контроллеры дисков бывают расчитаны на разную разрядность в битах:
https://ru.ruwiki.ru/w/index.php?title=ATA
Оригинальная спецификация АТА предусматривала 28-битный режим адресации. Это позволяло адресовать 228 (268 435 456) секторов по 512 байт каждый, что давало максимальную ёмкость в 137 Гб (128 ГиБ). В стандартных PC BIOS поддерживал до 7,88 ГиБ (8,46 Гб), допуская максимум 1024 цилиндра, 256 головок и 63 сектора. Это ограничение на число цилиндров/головок/секторов CHS (Cyllinder-Head-Sector) в сочетании со стандартом IDE привело к ограничению адресуемого пространства в 504 МиБ (528 Мб). Для преодоления этого ограничения была введена схема адресации LBA (Logical Block Address), что позволило адресовать до 7,88 ГиБ. Со временем и это ограничение было снято, что позволило адресовать сначала 32 ГиБ, а затем и все 128 ГиБ, используя все 28 разрядов (в АТА-4) для адресации сектора. Запись 28-битного числа организована путём записи его частей в соответствующие регистры накопителя (с 1 по 8 бит в 4-й регистр, 9-16 в 5-й, 17-24 в 6-й и 25-28 в 7-й).
Что-бы разобраться где срабатывает ограничение, нужно это все сложить в голове... -)))
ps: так что, когда пишут поддержку ATA, EFI и все такое, часто забывают версию релиза, а по функцианалу они координально могут различаться... А многим - пофиг. Указан стандарт - не работает, долбятся о стену... -)
101006
максимальный размер Флешки для нормально работы загрузочного DOS
это 128Gb
Скорее не флэхи - а раздела для загрузки в первых 128Gb... -)


Last edited by JuraAD on 2023-08-19 21:15; edited 1 time in total

[Quote]

    Kupr_Soft
  • 26917
  • Longevity: 2 years 7 months
  • Posts: 26
  • REPUTATION:4

    [+] [-]
  • Location: Питер
Скорее всего на этом моменте я сдаюсь.
Не настолько я прям заинтересован в разгадывании этой загадки...
да и что более важно не настолько сведущь.
Просто возьму очень скоростную флешку но так-же на 128Gb

[Quote]

    JuraAD
  • 28398
  • Longevity: 2 years 2 months
  • Posts: 65
  • REPUTATION:24

    [+] [-]
101006
максимальный размер Флешки для нормально работы загрузочного DOS
это 128Gb
Скорее не флэхи - а раздела для загрузки в первых 128Gb... -) Возми хоть 2ТБ, загрузку с разделом оставь в первых 128Gb
зы: в МСДосе есть файлец io.sys прочитай что это... https://ru.ruwiki.ru/w/index.php?title=IO.SYS
https://ru.ruwiki.ru/wiki/MS-DOS почитай о версиях -)))


Last edited by JuraAD on 2023-08-19 21:38; edited 3 times in total

[Quote]

    Kupr_Soft
  • 26917
  • Longevity: 2 years 7 months
  • Posts: 26
  • REPUTATION:4

    [+] [-]
  • Location: Питер
Но с другой стороны...
я-же делал клон 128Gb флешки на 512Gb
так что-бы все разделы были точь в точь и в конце оставалось свободное место...
по идее в таком случаем я НЕ обращался к каким-то большим цифрам по адресам...
и всё равно это вываливалось с ошибками...
я конечно в понедельник снова на работе попробую, не клонировать а создать... несколько разделов
маленьких на 256Gb флешке...
P.S. Ну и про дос-то я вкратце знаю, как никак начинал с него =)
да , у меня 7.1 последний адекватный.
UPD.
В общем выкроил минутку потестить...только спустя сутки.
Для опытов использовал флешку на 256Gb
разбил на куски вручную, FAT32 кластеры разные пробовал (это не влияет)
вот в таком конфиге :

так-же как и в таком:

Всё работает. Ибо получается что загрузочный сектор 4 раздела, всё ещё влезает в адресацию FAT32 (128Gb)
А вот такой вариант:

При попытке загрузиться с последнего раздела, выкидывает ошибку.
Потому как здесь загрузочный сектор 4 раздела уже вышел за 130Gb
...странно, мне казалось что я уже пробовал такие манипуляции, одними из первых...и у меня тогда НИЧЕГО не работало.
потому я и думал что в этом направлении бесполезно копать.
Ну в общем по итогу: решение есть. Придётся как-то теперь перекроить флешку, раньше у меня всегда первый раздел был максимальным =)
а теперь надо сделать последний...
P.P.P.S. JuraAD, спасиб за умные мысли...


Display posts:    

Current time is: 24-Sep 04:00

All times are UTC + 3


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum