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

Автор Тема: Grub2-generator  (Прочитано 2026 раз)

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

Оффлайн AZJIO

  • Модератор
  • Старожил
  • ****
  • Сообщений: 298
  • Репутация: +10/-0
  • Автор темы
Grub2-generator
« : 16 Октябрь 2021, 16:23:45 »
Grub2-generator

программа для создания/изменения конфига Grub2

Скачать: yandex upload.ee


Обновление
10.03.2024
Добавлено диалоговое окно замены.

09.03.2024
При открытии шаблона если в нём есть UUID и в буфере обмена UUID, то предложение заменить UUID в шаблоне.
Неоходимость сохранения теперь также контролируется при дублировании, удалении, открытии шаблона
При закрытии программы предлагается сохранить, если данные помечены как не сохранённые.

06.03.2024
Значки кнопок сохранения (2 шт) изменяются на красный цвет, когда документ требует сохранения
Окно информации теперь поддерживает множество кнопок и зависит от числа параметров в секции [info] в ini-файле.
Моноширинный шрифт для окна инфо можно задать в ini-файле FontInfo=DejaVuSansMono
Исправлена ошибка связанная с изменением окна информации, которая распространялась на оба окна.

05.03.2024
1. Добавлена кнопка открытия дефолтных настроек "/etc/default/grub"
2. Добавлена кнопка "Бэкап" (создаёт папку "backup" рядом с файлом и копирует туда файл с меткой времени)
3. Добавлен пункт меню "Сохранить как шаблон" (в папку "template")
4. Исправлено открытие шаблона: из-за метки BOM шаблон не парсился воспринимался как код вставки, а не как пункт. Также из-за неправильного слеша не открывалась папка "template".
5. Добавлена кнопка получения информации о дисках (UUID и т.д.), которые могут быть необходимы для Grub2.

21.02.2024
Добавлено горячие клавиши: Ctrl+S - сохранить, Ctrl+F - поиск, Ctrl+F3 - продолжить поиск
Добавлено при выделении слова подсвечиваются все вхождения.
Добавлено запрос пароля админа, так как без него не происходит сохранения файла.
Добавлено перетаскивание файла в окно редактора, чтобы открыть файл, обновляется всё включая список пунктов.

скрин на Windows
« Последнее редактирование: 12 Март 2024, 14:33:39 от AZJIO »

Оффлайн imp

  • cat /dev/ass > /dev/head
  • Ветеран
  • *****
  • Сообщений: 1718
  • Репутация: +49/-1
  • /dev/hands < /dev/ass
Re: Grub2-generator
« Ответ #1 : 17 Октябрь 2021, 03:15:13 »
А будет искать уже установленные системы?
Компьютер имеет то преимущество перед мозгом, что им пользуются.

Оффлайн AZJIO

  • Модератор
  • Старожил
  • ****
  • Сообщений: 298
  • Репутация: +10/-0
  • Автор темы
Re: Grub2-generator
« Ответ #2 : 17 Октябрь 2021, 12:23:19 »
А будет искать уже установленные системы?
думаю что нет, так как я не знаю как это делать и в Linux есть os-proder, так что я хотел сделать что-то похожее на "Grub Customizer", только поудобней в некоторых моментах. ТЗ я написал тут, в спойлере, то есть чего хочу сделать.

Кстати автор и команда PureBasic сделали конвертирование кода в Си для Windows и  обещают сделать для Linux тоже, так что появятся исходники в Си. Но пока я ещё не понимаю, можно ли будет выкладывать это как Си код, потому что свои функции находятся в файлах-объектах и можно ли будет выкладывать свой код вместе с их файлами неизвестно.
« Последнее редактирование: 17 Октябрь 2021, 12:27:38 от AZJIO »

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 8635
  • Репутация: +187/-2
  • Старый чайник
Re: Grub2-generator
« Ответ #3 : 17 Октябрь 2021, 16:33:48 »
Определить загрузчик:
Код
bash-4.4# hexdump -n 2 /dev/sdc | awk '{print $2}'
5eeb
#загрузчик grub4dos на флешке
bash-4.4# hexdump -n 2 /dev/sda|awk '{print $2}'
5eeb
#загрузчик grub4dos на жёстком диске
bash-4.4# hexdump -n 2 /dev/sda4|awk '{print $2}'
58eb
#загрузчик GRUB2 на разделе (Altlinux)
bash-4.4# hexdump -n 2 /dev/sda3|awk '{print $2}'

#нет загрузчика
так как я не знаю как это делать
Для full-дистрибутивов ищем циклом на каждом разделе /booy/vmlinuz*, и, если он есть, continue, если нет - генерируем загрузочную запись и дописываем её в соответствующий конфиг загрузчика (GRUB2 в grub.cfg, grub4dos в menu.lst)
Вроде бы не сложно.
GPT и UEFI не знаю и изучать не буду. На мой век BIOS и MBR хватит.
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150, 2 Gb RAM) Richy64
Nettop Acer Aspire Revo R3610 (Atom N330, nVidia GeForce 9400, 3 Gb RAM) Richy64

Оффлайн imp

  • cat /dev/ass > /dev/head
  • Ветеран
  • *****
  • Сообщений: 1718
  • Репутация: +49/-1
  • /dev/hands < /dev/ass
Re: Grub2-generator
« Ответ #4 : 17 Октябрь 2021, 21:06:43 »
Для фул - проблем нет. Все правильно. Ещё надо глянуть в /etc/issue, дабы определиться, что за дистр.
Для винд надо искать ntldr или bootmgr. Пресеты для них уже есть.
А что с фругалом и всем разнообразием наших зоопарков?
Компьютер имеет то преимущество перед мозгом, что им пользуются.

Оффлайн AZJIO

  • Модератор
  • Старожил
  • ****
  • Сообщений: 298
  • Репутация: +10/-0
  • Автор темы
Re: Grub2-generator
« Ответ #5 : 26 Октябрь 2021, 07:05:08 »
Пресеты для них уже есть.
ну тогда просто пресет закинуть в папку шаблонов, делов-то.

Обновил, 3 пункта, подробнее в 1-м посте.
кроме ранее собранных пакетов собрал ещё и deb для x32

Попутно возникла проблема, как при установки копировать папку конфигов в ~/.config ?
« Последнее редактирование: 26 Октябрь 2021, 07:06:55 от AZJIO »

Оффлайн imp

  • cat /dev/ass > /dev/head
  • Ветеран
  • *****
  • Сообщений: 1718
  • Репутация: +49/-1
  • /dev/hands < /dev/ass
Re: Grub2-generator
« Ответ #6 : 26 Октябрь 2021, 14:06:31 »
Для grub4dos, правда...

# Windows
# this entry searches Windows on the HDD and boot it up
title Windows\nBoot up Windows if installed
  errorcheck off
  find --set-root --ignore-floppies --ignore-cd  /bootmgr
  chainloader /bootmgr
  find --set-root --ignore-floppies --ignore-cd  /ntldr
  chainloader /ntldr
  find --set-root --ignore-floppies --ignore-cd   /io.sys
  chainloader /io.sys
  errorcheck on

То бишь, есть 3 загрузчика окон - bootmgr, ntldr и io.sys
Вот их и надо искать
« Последнее редактирование: 26 Октябрь 2021, 14:09:21 от imp »
Компьютер имеет то преимущество перед мозгом, что им пользуются.

Оффлайн imp

  • cat /dev/ass > /dev/head
  • Ветеран
  • *****
  • Сообщений: 1718
  • Репутация: +49/-1
  • /dev/hands < /dev/ass
Re: Grub2-generator
« Ответ #7 : 26 Октябрь 2021, 14:12:42 »
Попутно возникла проблема, как при установки копировать папку конфигов в ~/.config ?
В PureBasic-е есть возможность вызова системных команд?
И вообще, немного не понял. Можно для тех, кто в танке?
Компьютер имеет то преимущество перед мозгом, что им пользуются.

Оффлайн AZJIO

  • Модератор
  • Старожил
  • ****
  • Сообщений: 298
  • Репутация: +10/-0
  • Автор темы
Re: Grub2-generator
« Ответ #8 : 26 Октябрь 2021, 15:46:27 »
В PureBasic-е есть возможность вызова системных команд?
И вообще, немного не понял. Можно для тех, кто в танке?
Нашёл информацию:
Цитата
DEBIAN/postinst
Выполняется сразу после установки пакета: он настраивает установленный пакет так, чтоб он был готов к работе. Здесь также выполняется интерактивная конфигурация пакета: это делается при помощи dh_input и файла DEBIAN/templates.
Надо при установке пакета извлечь конфигурационные файлы в /tmp и потом с помощью postinst скопировать в ~/.config

Оффлайн AZJIO

  • Модератор
  • Старожил
  • ****
  • Сообщений: 298
  • Репутация: +10/-0
  • Автор темы
Re: Grub2-generator
« Ответ #9 : 12 Март 2024, 18:11:25 »
Обновление
При переименовании пункта в поле ввода старое имя, удобно, если хочется поменять номер версии, а не вводить пункт целиком.
При бэкапировании без прав root, так как доступ к папке "/boot/grub" не возможен, то бэкапируется в папку конфигов "/home/user/.config/Grub2-generator"