Calculate Forum

GRUB2 - загрузчик по умолчанию

#1

С первых версий в Calculate Linux для загрузки операционной системы используется GRUB. GRUB является эталонной реализацией загрузчика, соответствующего спецификации Multiboot и может загрузить любую совместимую с ней операционную систему. Среди них: Linux, FreeBSD, Solaris и многие другие. Кроме того, GRUB умеет по цепочке передавать управление другому загрузчику, что позволяет ему загружать Windows (через загрузчик NTLDR).

Начиная со стейджа от 2011/06/10 (а также Calculate Utilities 2.2.16) выполнен переход на GRUB2. Из отличий от GRUB1 (или Legacy Grub) можно выделить следующее:

  • поддержка скриптов, в частности циклов, условий, переменных и функций;
  • графический интерфейс;
  • динамическая подгрузка модулей, позволяющая расширять функционал не на этапе сборки, а прямо во время выполнения;
  • переносимость на разные архитектуры;
  • интернационализация;
  • настоящее управление памятью, делающее GNU GRUB более гибким;
  • модульный, иерархичный, объектно-ориентированный фреймворк для файловых систем, файлов, устройств, дисководов, терминалов, команд, таблиц разделов и загрузчиков операционных систем;
  • кроссплатформенная установка, позволяющая установить GRUB с другой архитектуры;
  • безопасный режим для трудных случаев. Stage 1.5 ликвидирована;
  • исправление ошибок, которые были допущены при проектировании GRUB Legacy, и не могли быть исправлены из-за требований обратной совместимости. Например, способ нумерации разделов;
  • возможность автоматически определять сторонние операционные системы;
  • возможность загружать систему с Soft-RAID либо LVM без дополнительного /boot раздела.

При установке системы по умолчанию теперь будет использоваться GRUB2. При этом сохранена возможность использования Legacy Grub, поэтому если систему не удалось поставить с GRUB2 - Вы можете поставить ее с GRUB1, для этого необходимо установить пустое значение для переменной cl-install --set os_grub2_path= <остальные параметры>.

Настройка GRUB2 в Calculate происходит традиционно при помощи шаблонов и скриптов настройки пакета.

Для того, чтобы перейти на GRUB2, не переустанавливая систему, необходимо:

  • обновить sys-apps/calculate-utilities до версии 2.2.16;
  • обновить sys-boot/grub до версии 1.99-r2;
  • для определения операционных систем понадобиться пакет sys-boot/os-prober;
  • для фоновой картинки grub2 sys-boot/calcboot;
  • если в системе уже стояла версия grub2 необходимо выполнить dispatch-conf и применить изменения для grub;
  • выполнить перенастройку системы при помощи команды cl-install --live;
  • прописать grub2 в загрузчик grub2-install /dev/sda.

Если установщик сообщает, что ему не удалось установить загрузчик, отправьте нам лог grub2-install

grub2-install [диск для установки] --debug --force

и содержимое файла grub.cfg.

#2

Пытался установить GRUB2 без переустановки и при выполнении cl-template --live выдало вот что:

calculate-install 2.2.16

Использование: cl-template [options] путь_к_clt_файлу
cl-template: ошибка: нет такой опции: --live
Используйте `cl-template --help' для дополнительной информации

Все необходимые пакеты нужных версий стоят.

#3

Опечатка, <<cl-install --live>>

#4

Попробуйте выполнить python-updater и перезагрузитесь.

#5

А у меня дальше первой команды не пошло:

cl-install --live
 * Пакет установлен
 * calculate-install используется для конфигурации пакетов ...                                                  [ ok ]
 * Настройка системы ...                                                                                        [ !! ]
 * Traceback (most recent call last):
 *   File "/usr/lib/calculate-2.2/calculate-install/pym/cl_install.py", line 1831, in configureSystem
 *     self.printByResult(self.applyTemplatesLive())
 *   File "/usr/lib/calculate-2.2/calculate-install/pym/cl_install.py", line 1049, in applyTemplatesLive
 *     dirsFiles = self.clTempl.applyTemplates()
 *   File "/usr/lib/calculate-2.2/calculate-lib/pym/cl_template.py", line 3958, in applyTemplates
 *     skipTemplates=skipTemplates) is False:
 *   File "/usr/lib/calculate-2.2/calculate-lib/pym/cl_template.py", line 4040, in scanningTemplates
 *     optNextDir)
 *   File "/usr/lib/calculate-2.2/calculate-lib/pym/cl_template.py", line 4040, in scanningTemplates
 *     optNextDir)
 *   File "/usr/lib/calculate-2.2/calculate-lib/pym/cl_template.py", line 4040, in scanningTemplates
 *     optNextDir)
 *   File "/usr/lib/calculate-2.2/calculate-lib/pym/cl_template.py", line 4017, in scanningTemplates
 *     if not self.processingFile(absPath, prefix, optDir):
 *   File "/usr/lib/calculate-2.2/calculate-lib/pym/cl_template.py", line 4066, in processingFile
 *     filesApl = self.joinTemplate(path, nameFileConfig, optFile)
 *   File "/usr/lib/calculate-2.2/calculate-lib/pym/cl_template.py", line 4819, in joinTemplate
 *     optFile)
 *   File "/usr/lib/calculate-2.2/calculate-lib/pym/cl_template.py", line 4644, in getApplyHeadTemplate
 *     uid = self.getUidFromPasswd(strUid)
 *   File "/usr/lib/calculate-2.2/calculate-lib/pym/cl_template.py", line 4334, in getUidFromPasswd
 *     open(passwdFile,'r'))))
 * ValueError: dictionary update sequence element #37 has length 1; 2 is required
 * Не удалось настроить систему

Установлен CLD x86_64 со всеми обновлениями. Вторую команду не вводил. Да, и ещё одно. После ввода первой команды (или установки последних обновлений) перегрузился и теперь после ввода логина/пароля в kdm, появляется примерно такое-же сообщение про cl_template.py и вываливается обратно в kdm.
http://simplest-image-hosting.net/jpg-0-imgp3310
http://simplest-image-hosting.net/jpg-0-imgp3311
Пробовал переустанавливать calculate-templates calculate-install calculate-utilities[2.2.16-r1] calculate-lib, не помогло.
Есть идеи как поправить? Не хотелось бы переустанавливать систему.
P.S. А на другом компе с CLD (i686) - всё обновилось, включая Grub2.

#6

выполнил, перегрузился, изменений нет, есть ещё варианты?

#7

Всё, поезд ушёл, переустановил с последнего stage.

#8

Спасибо вам, Mike Hiretsky, обновился без проблем.

#9

Установка из последнего Stages Calculate Linux Scratch: x86_64

http://imageshack.us/photo/my-images/685/74409306.png/

Stages от 20110610 груб ставиться нормально, зачем выкладывать непроверенные вещи? таким образом популярность идет вниз :frowning:

#10

Не слышал чтобы у кого-нибудь ещё не завелось. Только что проверил также в VirtualBox CLS 20110610 x86 и x86_64, все работает.

#11

я как раз и писал что CLS 20110610 работает, проверьте последний 20110617 который

#12

CLS 20110617 x86_64 - полет нормальный.

#13

надеюсь вы тот проверили который выложен? у меня выше скриншот привел! CLS 20110610 x86_64 пришлось поставить, а по CLS 20110617 x86_64 не идет и диск пере разбивал, чтобы ничего старого не осталось, однако с лайва CLS 20110617 x86_64 грузиться а как установишь на хард ошибка груба.

#14

Ну разумеется. Я же сам образы выкладываю.

#15

Как и в каком файле поправить расширение в консоли? Сейчас стоит 848х408, наверно потому и сыпит ошибками не находит заставку нужного расширения и т.д. вплоть до не верного initrd, хотелось бы хоть 1024х768, хотя реальное расширение 1366х768.

#16

тут - /etc/default/grub
GRUB_GFXMODE=1024x768
Попутный вопрос к разработчикам - если прописать GRUB_GFXMODE=“auto”
то на компе с видяхой GeForce 7100 GS на мониторе пишет про неподдерживаемый режим, но система дальше грузится разумеется. Из каких соображений выбирется оптимальный режим? Может сделать по умолчанию к примеру 1024х768 или 800х600?
P.S. На 2-х разных ноутбуках полёт нормальный.

#17

Иван Благодарю за совет! Ситуация следующая, у меня ноут hp 620, странная ситуация, иногда система загружается нормально без каких либо ошибок, с нормальным разрешением в консоли, но обычно с ошибками. Заметил что если выключить, а потом включить обычно все ок, а если перезагружать то ошибки. Как эти ошибки оформить в баг репорт, не знаю. Предполагаю что это связано с режимом сна и т.д., то что касается ноутбука. При выходе из режима сна переходит на 8 консоль, хотя Х сесия на 7 консоли, потому сразу и не сообразить, черный экран, а с консолью вообще засада после сна, рамка по периметру наблюдается, а в центре черный экран и нельзя ничего сделать.

Mastodon Mastodon