Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » GRUB4DOS и GNU GRUB (часть 2)

Модерирует : gyra, Maz

gyra (06-12-2016 03:18): GRUB4DOS и GNU GRUB (часть 3)  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488

   

Widok



Moderator-Следопыт
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
<< 1-я часть
Второй Груб (тот, который в большинстве современных дистрибутивов) обсуждается в теме «GNU GRUB 2 (grub 1.9x); BURG»

Grub4Dos

Основные особенности Grub4Dos:
  • Возможность установки на USB-flash, HDD, CD и floppy
    При установке на USB-flash или HDD возможна установка в mbr, бутсектор или просто загрузка строкой в boot.ini
    C:\GRLDR="Start GRUB"
  • Возможность подключения ISO-образов, образов дискет и HDD как виртуальных дисков
  • Возможность передачи загрузки выбранному разделу или напрямую загрузчику (ntldr, bootmgr)
  • Наличие графического (gfxmenu) и текстового (splashimage) режима
  • Наличие собственного командного интерпретатора
  • Возможность автоматического поиска и загрузки установленных ОС
    Скачать Grub4Dos.
    Руководство на русском. Доп. инфа в файле README_GRUB4DOS.txt (Eng)
    Готовые GFX-Boot темы
     
    Подробнее...
     
    Полезные ссылки:
  • Установка ОС Xp/2003 x86-x64 и последующих версий из ISO образа.
  • Запуск и обновлениe антивирусных Live CD/USB
  • Запуск загрузочных образов от Acronis
  • Русские шрифты для Grub4Dos
  • Простая установка Grub4Dos на флешку без перезагрузок
  • Скрипт от kDnZP для создания мультизагрузочной/мультизагрузчиковой флешки на основе fbinst  (Описание скрипта с картинками)
  • конструктор от z0bra для создания собственных тем gfxboot-3.3
  • RIPPER-GFX от ded2007 - программа для создания собственных и редактирования старых тем gfxboot (+ видеоуроки). Расширенная функциональность gfxboot.
  • комплект Grub4Dos (4,4 Мб) - с описанием для флешки/hdd/iso-cd/lan/gfxboot-3.3 (AZJIO 2010.01.8), подробнее
     
    BootIce [__1__] [__2__]

  • Всего записей: 24190 | Зарегистр. 07-04-2002 | Отправлено: 11:21 08-02-2010 | Исправлено: At1ant, 11:50 05-11-2015
    VV2006

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Сколько оказывается интересных фич в новых версиях груба: GRUB4DOS TUTORIAL - How to use grub4dos and make pretty menus!
     
     

    Всего записей: 2122 | Зарегистр. 10-02-2006 | Отправлено: 00:25 29-04-2012
    Death_INN

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    conty9, %?% работает только в новых версиях груба, иначе возвратит 0x0. Хотя и echo тоже может не пахать, но если память в этой области пустая, то он и не нужен.
     
    title menu from 2nd drive  
    echo -n > (md)0x300+1,32
    find --devices=h /menu.lst > (md)0x300+1  
    cat --skip=10 (md)0x300+1 | set x=  
    configfile %x%/menu.lst || configfile %x%/MENU.LST
     
    (md)0x300 лучше не юзать, если будет грузиться gfx меню. Также будут глюки, если find выдаст типа такого:
    (hd0)
    (hd0,3)
    (hd1,0)
    ...

    Всего записей: 3013 | Зарегистр. 24-10-2002 | Отправлено: 01:56 29-04-2012 | Исправлено: Death_INN, 02:14 29-04-2012
    AlterEgoMc



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Спасибо за советы! Попробовал на MSDART70 и теперь он стал находить мою систему, а то он тоже диск требовал вставить. Вот только про фирадиск я не понял, он же маппит в память. Если у меня памяти всего 2 гига, а образ с уин7 2.3 гига? Так можно его использовать?

    Всего записей: 208 | Зарегистр. 07-07-2008 | Отправлено: 03:27 29-04-2012
    bomzzz



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    фирадиск не мапит ниче в память, он в винде позволяет продолжать переадресовывать запросы на виртуальное устройство в образ. фирадиск должен работать как с промапленными в память образами так и промапленными невпамять, но вот лично у меня чета только в память промапленными работает

    Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 05:36 29-04-2012
    conty9



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Sphinx114, Death_INN, спасибо. Второй вариант сработал (используется текстовое меню с фоновой картинкой - именно поэтому не хочу переходить на новую версию GRLDR - для неё нет нормального русского шрифта). Правда, дополнил вариант от Death_INN root %x% || rootnoverify %x% (кстати, а может лучше так - map () %x% && map %x% () ?). Проверил флешка vs HDD, работает:
    title menu from 2nd drive  
    echo -n > (md)0x300+1,32  
    find --devices=h /MENU.LST > (md)0x300+1  
    cat --skip=10 (md)0x300+1 | set x=  
    root %x% || rootnoverify %x%
    configfile /MENU.LST
    Зы: если путь/имя указывать большими буквами, прочитает из любого носителя (configfile /menu.lst || configfile /MENU.LST не нужно), маленькие буквы работают только на HDD (FAT/NTFS), а большие - на всех (включая CDFS на компакт-дисках).

    Всего записей: 1700 | Зарегистр. 27-11-2006 | Отправлено: 09:57 29-04-2012 | Исправлено: conty9, 13:35 29-04-2012
    AlterEgoMc



    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Пробую настроить timeout.inc от gfxmenu. Когда написанно по-русски, то всё отлично.
    /timeout.s.update {
      red setcolor
      timeout.s.x timeout.s.y moveto 500 0 rmoveto
      currentpoint 40 fontheight image
      "Выбранная система будет автоматически запущена через %d с." timeout.s.buf sprintf
      timeout.s.x timeout.s.y moveto timeout.s.buf show
    %  pop
    } def
     
    А вот если пишу "The default entry will be automatically loaded within %d s." вместо "Выбранная система будет автоматически запущена через %d с." то там где секунды всё смазанно. Пробовал шрифт чисто английский сувать, мульти шрифт, размер строки пробелами подгонять по длине русской, всё равно секунды из параметра %d смазанные. Кто-нибудь знает в чём проблема?

    Всего записей: 208 | Зарегистр. 07-07-2008 | Отправлено: 10:59 29-04-2012 | Исправлено: AlterEgoMc, 11:01 29-04-2012
    Death_INN

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    AlterEgoMc, я юзаю измененный timeout.inc от AZJIO. Да и какой смысл в надписи, если идет обратный отсчет секунд:
     

    Всего записей: 3013 | Зарегистр. 24-10-2002 | Отправлено: 12:35 29-04-2012 | Исправлено: Death_INN, 12:37 29-04-2012
    bomzzz



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    conty9
    я вроде ни причем, вообще не понимаю о чем это меню
    Death_INN
    а как эти менюшки делаются? это программка?

    Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 13:02 29-04-2012
    Sphinx114



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Убрал зависимость от длины названия 1-го диска. Echo там не надо, на переносе строки значение переменной обрезается.

    Код:
    title menu from 2nd drive
    find /MENU.LST > (md)0x300+1,18
    cat --locate=\x0A --number=1 (md)0x300+1 | set x=
    cat --skip=%x% (md)0x300+1 | set x=
    root %x% || rootnoverify %x%
    configfile /MENU.LST

    Также если грузить сдром с флешки, то ещё нужен cdrom --init && map --hook

    Всего записей: 1201 | Зарегистр. 26-03-2011 | Отправлено: 13:06 29-04-2012
    conty9



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Ещё одна проблемка возникла: Win-сборки из "переключенного" меню не загрузятся - не тот диск, нужно диск менять вместе с менюшкой. Как бы это корректно сделать?
    Death_INN, bomzzz, извините, писал поздно ночью.

    Всего записей: 1700 | Зарегистр. 27-11-2006 | Отправлено: 13:39 29-04-2012 | Исправлено: conty9, 13:50 29-04-2012
    Death_INN

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    conty9, да Win-сборки будут грузиться только с (hd0), так что без мапа не обойтись
     
    title menu from 2nd drive
    echo -n > (md)0x300+1,32
    find --devices=h /MENU.LST > (md)0x300+1
    cat --skip=10 (md)0x300+1 | set x=
    map (hd0) %x% && map %x% (hd0) && map --hook
    set part=%x:~-2,1%
    root (hd0,%part%)
    configfile /MENU.LST

    Цитата:
    а как эти менюшки делаются? это программка?

    Последняя ссылка в шапке

    Всего записей: 3013 | Зарегистр. 24-10-2002 | Отправлено: 15:24 29-04-2012 | Исправлено: Death_INN, 15:45 29-04-2012
    conty9



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Death_INN, ещё раз спасибо, теперь всё как нужно.
    Пришла в голову идея о принципиальной возможности создания автоменю с полным списком всех доступных загрузочных дисков, загрузчиков NTLDR, BOOTMGR, Grub4DOS, Syslinux... подобно тому, как сделано автоменю загрузки образов (используя возможности WENV). Но, подозреваю, непростая это задача.

    Всего записей: 1700 | Зарегистр. 27-11-2006 | Отправлено: 16:41 29-04-2012
    Frodo_Torbins

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    conty9
    Я как то пробовал раскурочить Ченаловский NTBoot. Ужас как там все закручено, а ведь это только для NT-систем.

    Всего записей: 2318 | Зарегистр. 24-05-2007 | Отправлено: 18:21 29-04-2012
    conty9



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Sphinx114, Death_INN, сделал свой вариант "обмена" носителей. Хорош тем, что работает во всех направлениях HDD vs CD vs Flash.
    set x=/MENU.LST
    map --unhook
    map (fd0) () && map () (fd0) && cdrom --init && map --rehook
    find --set-root --ignore-floppies %x%
    map --unhook
    map (hd0,0) () && map () (hd0,0) && cdrom --init && map --rehook
    find --set-root --ignore-floppies %x%
    configfile %x%
    Вначале map --unhook (для повторного/многократного запуска), потом "прячем" текущий носитель как fdd, ищем меню, игнорируя спрятанное. В результате root становится найденный (следующий) носитель. map --unhook - чтобы восстановить огинальный список дисков (найденный остаётся root!). Потом делаем из найдёныша (hd0,0) и запускаем меню. Конструкция работает в переходах HDD->CD, CD->HDD, Flash->HDD. Переход на->Flash с вызовом меню заканчивается зависанием (портится экран сверху), хотя, если вместо вызова меню (configfile %x%) сделать chainloader /GRLDR - флешка загружается. Меню и загрузчики идентичны на всех носителях.
    Это как-то можно исправить (вызывать именно меню, а не загрузчик) для флешки?

    Всего записей: 1700 | Зарегистр. 27-11-2006 | Отправлено: 17:05 30-04-2012 | Исправлено: conty9, 17:07 30-04-2012
    Death_INN

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Вначале map --unhook (для повторного/многократного запуска)

    Без --unmap ничего не дает, ибо таблица мапа не меняется

    Цитата:
    Переход на->Flash с вызовом меню заканчивается зависанием

    Note: You should better not use "configfile ANOTHER_MENU" frequently in your
    menu.lst file, because it could create infinite loop and thus hang your
    computer.

    Всего записей: 3013 | Зарегистр. 24-10-2002 | Отправлено: 22:17 30-04-2012 | Исправлено: Death_INN, 23:30 30-04-2012
    conty9



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Death_INN, спасибо. По поводу вызова другого меню - Neverending Story?

    Всего записей: 1700 | Зарегистр. 27-11-2006 | Отправлено: 23:31 30-04-2012
    Death_INN

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    conty9, лучше грузить другие носители с menu.lst через chainloader

    Всего записей: 3013 | Зарегистр. 24-10-2002 | Отправлено: 00:09 01-05-2012 | Исправлено: Death_INN, 00:09 01-05-2012
    Death_INN

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Никто не исследовал вопрос получения прямо из grub4dos модели и серийника харда?

    Всего записей: 3013 | Зарегистр. 24-10-2002 | Отправлено: 01:26 03-05-2012
    bomzzz



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Death_INN
    http://www.sources.ru/asm/devid32.shtml
    вот тут вроде есть пример для доса, через порты ввода вывода читается
     
    http://zufs.net/text/wasm-faq/ASSEMBLER.html#q-ASSEMBLER-30
    вот тута пара слов написькана
     
    кажеца брать надо описание спецификации протокола ATA - сата наверно все ранво эииулирует, и читать разбираться. гугл в основном дает примеры для винды, ниче больше не нагуглилось. но наверняка должен быть где то рабочий пример
     
    Добавлено:
    по первой ссылке рабочий пример для доса. там только через порты вводы ввывода получается инфа так что и под биос можно переделать

    Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 08:41 03-05-2012 | Исправлено: bomzzz, 08:46 03-05-2012
    Death_INN

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    кажеца брать надо описание спецификации протокола ATA - сата наверно все ранво эииулирует, и читать разбираться. гугл в

    Это имеется, правда 10-летней давности

    Цитата:
    по первой ссылке рабочий пример для доса. там только через порты вводы ввывода получается инфа так что и под биос можно переделать

    grub4dos позволяет не только работать с прерываниями, но и читать из портов и передавать в них, так что проблем быть не должно. Под биос не переделать, ибо нет стандартных прерываний для получения модели и серийника харда.
     
    Нарыл книгу Кулакова. В ней довольно подробно описан протокол АТА и получение данных из контроллера харда (асмом).

    Всего записей: 3013 | Зарегистр. 24-10-2002 | Отправлено: 09:45 03-05-2012 | Исправлено: Death_INN, 10:10 03-05-2012
       

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488

    Компьютерный форум Ru.Board » Компьютеры » Программы » GRUB4DOS и GNU GRUB (часть 2)
    gyra (06-12-2016 03:18): GRUB4DOS и GNU GRUB (часть 3)


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru