Сайт | Скачать | Видео | Wiki

Автор Тема: Как суммировать/складывать переменные (в строке загрузки Grub4dos (PRA))?  (Прочитано 8070 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн knn

  • Ветеран
  • *****
  • Сообщений: 2538
  • Репутация: +33/-0
  • Автор темы
Вот. Собирал строку загр. PRA в G4D (охота - пуще неволи). Не мог найти , определиться как складывать переменные, в принципе.
Интересует букква "а"  в "ядерной строке в параметре sda%P%. Нету моченьки. И опыта и базы. Спройлер.
Код
title ▒▒ exp pra 32 sda8 
# disk:
set /a h=0
# № part:
set /a p=8
# № part. for G4d (=P-1):
set /a r=%p%-1
# dir. distr (!no 1-st slash, way from /part.):
set d=pra
# kernel version (! no - ):
set v=4.8.10-pf8
# bootdisk letter:
set t=a 
set P=%p%

root (hd%h%,%r%)/%d%
kernel /vmlinuz-%v% from=/dev/sda%P% dir=%d% quiet  copy2ram noswap  noload=nvidia
initrd /initrd.xz

Получается как-то - при задании переменной "t"=а и подстановке не находит initrd на sda8, грузится с sda1.
В глядя в "inxi" получается, что именно переменная "t" (в лице бук. "а") оставляет после себя "след" на 2 символа в различных сочетаниях попыток (пробовал складвать set tP=%t%%P%.
Может кто подскажет - как убрать "пробелы" после "А" или доделает/переделает/подкинет ссылку/~ки.
К какому языку ближе G4D?  Хотя здесь уже наверное ядро "отрабатывает" или porteus.

подсказать можно и здесь: http://forum.puppyrus.org/index.php?topic=19544.0
« Последнее редактирование: 18 Январь 2017, 20:37:59 от knn »
Gr4D, Grub2; HP Mini 210 VT - Intel Atom N470  @ 1.83GHz, Intel GMA3150, RAM=2 ГБ ;
Sams-n110: N270 - 1,6 ГГц, Intel GMA 950, RAM=2 ГБ.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
    • PuppyRus-A
Суммировать - арифметические действия? Вроде такого нет
Склеить:
Код
set a=a
set b=b
echo %a%%b%

Найти нужный раздел лучше через файл на нем
Код
find --set-root --ignore-floppies --ignore-cd /%d%/initrd.xz.
После чего можно писать пути от корня раздела

sea /a - откуда вы взяли /a и что дает?
К какому языку ближе G4D?
Ни к какому у него упрошенный свой. Разраб китаец

Оффлайн knn

  • Ветеран
  • *****
  • Сообщений: 2538
  • Репутация: +33/-0
  • Автор темы
sea /a - откуда вы взяли /a и что дает?
set /a  x=y  - задание числовой переменной, т.к. симв. перем. с параметром root(h,r) не работают - точнее наоборот.
откуда
"Ok`nigma" = задание переменных) - название языка точно не помнюю.
В отношеннии сложения переменных встречалось где-то для языка С или С+(через сложение с "0" ::) - но тут у меня не вышло - в основном действовал методом перебора - тоже вполне математический метод). Находил статью-перевод по подробной работе porteus и initrd 2009 г. Как приблизительно для себя вынес - загруж-ся ядро с параметраи и портеусом и инитрд, а затем кто-то из  двоих последних пересобирает/~ют ядро, подкл. модули - "кто-то" и отрабатывает "from="  - у меня пока "виртуализации мозга " не хватает :o.
Осталась для полного шастья "невынесенная" перем. "а"(/b,c). Может как-то в "ядерной" строке "свести" переменную? Ну может - кто - чего знает по такому поводу.
Хотя при запущенном с жестк. диска G4D - эта "строка загрузки " до флешки всеравно "не добивает".
« Последнее редактирование: 17 Январь 2017, 15:07:33 от knn »
Gr4D, Grub2; HP Mini 210 VT - Intel Atom N470  @ 1.83GHz, Intel GMA3150, RAM=2 ГБ ;
Sams-n110: N270 - 1,6 ГГц, Intel GMA 950, RAM=2 ГБ.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
    • PuppyRus-A
Вы все перепутали
Про ключи set grub4dos нужно читать только в его доке
Код
set h=0
set r=0
root(%h%,%r%)
должно работать
Все что прописывается в строке kernel обрабатывается initrd и дистром. grub4dos может только подставить туда свои переменные - не более
« Последнее редактирование: 17 Январь 2017, 15:17:53 от sfs »

Оффлайн knn

  • Ветеран
  • *****
  • Сообщений: 2538
  • Репутация: +33/-0
  • Автор темы
должно работать
симв. перем. с параметром root(h,r) не работают - точнее наоборот.
пров. опыт. путем.
Код: [Выделить]
set h=0
set r=0
root(%h%,%r%)
- "схватит"  скорее по-умолчанию.
 
обрабатывается initrd
до initrd  с 2-мя пробелами после "а "- т. е. - from=/dev/sda  8  - дело не доходит.
« Последнее редактирование: 17 Январь 2017, 15:26:34 от knn »
Gr4D, Grub2; HP Mini 210 VT - Intel Atom N470  @ 1.83GHz, Intel GMA3150, RAM=2 ГБ ;
Sams-n110: N270 - 1,6 ГГц, Intel GMA 950, RAM=2 ГБ.

Оффлайн knn

  • Ветеран
  • *****
  • Сообщений: 2538
  • Репутация: +33/-0
  • Автор темы
до initrd  с 2-мя пробелами после "а "- т. е. - from=/dev/sda  8  - дело не доходит.
(если прописать - kernel /vmlinuz-%v% from=/dev/sd%t%%P% dir=%d% quiet  copy2ram noswap  noload=nvidia)
или задать   set tP=%t%%P%  - dв каком-то случае 2, в каком-то 3 пробела (после продолжения загрузки с hd0,1 и просмотра inxi.)
а так - код в вверху -  вполне рабочий.
Хотя и осталась  лишняя переменная (t=a) от попыток сложения.
« Последнее редактирование: 17 Январь 2017, 15:41:22 от knn »
Gr4D, Grub2; HP Mini 210 VT - Intel Atom N470  @ 1.83GHz, Intel GMA3150, RAM=2 ГБ ;
Sams-n110: N270 - 1,6 ГГц, Intel GMA 950, RAM=2 ГБ.

Оффлайн knn

  • Ветеран
  • *****
  • Сообщений: 2538
  • Репутация: +33/-0
  • Автор темы
до initrd  с 2-мя пробелами после "а "- т. е. - from=/dev/sda  8  - дело не доходит.
можно предположить, что работает портеус.
Gr4D, Grub2; HP Mini 210 VT - Intel Atom N470  @ 1.83GHz, Intel GMA3150, RAM=2 ГБ ;
Sams-n110: N270 - 1,6 ГГц, Intel GMA 950, RAM=2 ГБ.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
    • PuppyRus-A
- "схватит"  скорее по-умолчанию.
"схватит" root(0,0)
То что схватит - можно посмотреть написав echo root(0,0)
Вот в g4dos ком. строке

Оффлайн knn

  • Ветеран
  • *****
  • Сообщений: 2538
  • Репутация: +33/-0
  • Автор темы
в Гр4Дос у меня и переменные не раз складывались
set tP=%t%%P%
без пробела - в консоли!!
Практика - не видит инитрд (остановка загрузки и /mnt/sda8 - busy или, что нет раздела) и
аком-то случае 2, в каком-то 3 пробела (после продолжения загрузки с hd0,1 и просмотра inxi.)
« Последнее редактирование: 17 Январь 2017, 16:11:13 от knn »
Gr4D, Grub2; HP Mini 210 VT - Intel Atom N470  @ 1.83GHz, Intel GMA3150, RAM=2 ГБ ;
Sams-n110: N270 - 1,6 ГГц, Intel GMA 950, RAM=2 ГБ.

Оффлайн knn

  • Ветеран
  • *****
  • Сообщений: 2538
  • Репутация: +33/-0
  • Автор темы
что- то в роде grub.txt в меню Г4Д просматривал, про переменные не увидел, буду благодарен за какую-либо ссылку.
Так-то тема "не горячая" - как срастется, так и ладно.
« Последнее редактирование: 17 Январь 2017, 15:58:09 от knn »
Gr4D, Grub2; HP Mini 210 VT - Intel Atom N470  @ 1.83GHz, Intel GMA3150, RAM=2 ГБ ;
Sams-n110: N270 - 1,6 ГГц, Intel GMA 950, RAM=2 ГБ.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
    • PuppyRus-A
Практика - не видит инитрд
Если с переменными и буквами результат одинаковый - это уже другая проблема, никак не связанная с переменными
Про переменные не помню где взял. Все тут рассказал

Оффлайн knn

  • Ветеран
  • *****
  • Сообщений: 2538
  • Репутация: +33/-0
  • Автор темы
Если с переменными и буквами результат одинаковый - это уже другая проблема, никак не связанная с переменными
здесь на данный момент все работтает (и загрузка из одноименнных папок на разных разделах, и нестандартные имена папок);
не выведенна "вверх" одна переменная (a,b,c), загрузка с флешки - только из-под запущенного с flash G4d  - может "выход" кому пригодится -:
из запущенного с ж/д Grub4dos -
  • reboot
Код
title ▒▒ Gr4d to-flash
root (hd1,0)
 kernel /boot/grub4dos/grub.exe
 rootnoverify (hd1,0)
    [/li]
- здесь root -для запуска grub.exe; rootnoveryfi - для menu.lst (какого-либо).
В другой menu.lst переход строкой загрузки:
Код
configfile=(hdx,y)/.../.../menu.lst
"Кольцую" у себя "загрузочную систему" -установленный G2 ж/д,GD4dosы,menu.lst. С преимуществом G4D (как из Gr2-ж/д "скакануть" на флешку?)
 Не серчайте на "from" - в kernel проверяется версия ядра, from указывает раздел, наверно можно как-то и sgn= приладить.
« Последнее редактирование: 17 Январь 2017, 20:33:26 от knn »
Gr4D, Grub2; HP Mini 210 VT - Intel Atom N470  @ 1.83GHz, Intel GMA3150, RAM=2 ГБ ;
Sams-n110: N270 - 1,6 ГГц, Intel GMA 950, RAM=2 ГБ.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
    • PuppyRus-A
Недопонял - какую задачу Вы решали?

Оффлайн knn

  • Ветеран
  • *****
  • Сообщений: 2538
  • Репутация: +33/-0
  • Автор темы
Установлен Арч-лин (уже на пару дней "падал",в сети тоже "падениями пугают, но Арч совместим с ПРА, по-своему интересен) с Grub2, Вин7(тоже нужен - для некоторых программ и пока для других ОС драйвера не подобрал - пока не решеная задача с ключами активации) , подарл сыну (8 лет) свой нетбук , себе купил по-шустрее "немного б/у" - порты раздолбанные (и прочее).
ПРА как переносная и резервная, ремонтная система (дочке с сыном тоже прилажу).
Окончательно, конечно с ПРА не разобрался, да и Проект развивается (нужно ~ 2-3 дистра).
Итого задача наладить и поддерживать три ОС (а PRA на компе - стаб, нов., и 64 и на флешке) , при этом поменьше передергивать флэшки, и "шоркать" аппаратные кнопки (загрузку USB-hdd поставил ниже Ж/Д).
Настраиваю "плавное" перемещение по загрузчикам, сборкам, меню.лст.
Недопонял - какую задачу Вы решали?
Если про самую верхнюю - "универсализация" строки загрузки для перемещения по разным сборкам ПРА, упрощение редактирования строк, ну ивообще, азарт какой- то,что ли был.
« Последнее редактирование: 17 Январь 2017, 20:35:08 от knn »
Gr4D, Grub2; HP Mini 210 VT - Intel Atom N470  @ 1.83GHz, Intel GMA3150, RAM=2 ГБ ;
Sams-n110: N270 - 1,6 ГГц, Intel GMA 950, RAM=2 ГБ.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
    • PuppyRus-A
Вы решиле задачу? Выложите решение
Для набора Arch Win7-10 PRA оптимально использовать grub2