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

Автор Тема: Установка Puppy в Grub2  (Прочитано 7647 раз)

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

Оффлайн qrkx

  • Пользователь
  • **
  • Сообщений: 60
  • Репутация: +1/-0
  • Автор темы
Установка Puppy в Grub2
« : 11 Июль 2015, 21:53:27 »
Как установить Wary-5.5 на диск с Ubuntu-14.04.

Особенность в том, что приходиться настраивать загрузку с помощью Grub (Grub2), который используется в операционных системах семейства Ubuntu начиная с версии 9.10.

Для простой настройки Grub2 в Ubuntu-14.04 следует внести изменения в два файла:

1. /etc/default/grub
2. /etc/grub.d/40_custom

1. В файле /etc/default/grub настраивается поведение меню Grub, чтобы меню при загрузке системы появлялось автоматически следует
закомментировать строку GRUB_HIDDEN_TIMEOUT="0", тогда не придётся после Post-test-a удерживать клавишу "Shift".

а) открыть файл:
Код
 user:~$ sudo vi /etc/default/grub

б) внести изменения:    
Код

# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
#   info -f grub -n 'Simple configuration'

GRUB_DEFAULT="1"
#GRUB_HIDDEN_TIMEOUT="0"
GRUB_HIDDEN_TIMEOUT_QUIET="false"
GRUB_TIMEOUT="10"
GRUB_DISTRIBUTOR="`lsb_release -i -s 2> /dev/null || echo Debian`"
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
...


2. Если нет такого /etc/grub.d/40_custom, то его следует создать и написать скрип загрузки Wary:

а) Создать (или открыть):
Код
user:~$ sudo vi /etc/grub.d/40_custom

б) Написать (или скопировать):
Код

#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

menuentry "Wary" {
#set root=(hd0,5)
search --no-floppy --fs-uuid --set=root bd1254ae-19f4-491e-af99-05e48a2c6799
linux /puppy/wary/ pdev1=sda5 psubdir=puppy/wary pmedia=atahd pfix=fsck
initrd /puppy/wary/
}



в) Конец файла должен заканчиваться пустой строкой, иначе последний пункт не будет отображаться в меню!   



В скрипте (40_custom) стоит знак комментария в строке set root = (hd0,5) - такой код работает, когда hd0 - загрузочный диск.

Более подробную информацию можно узнать на страницах:

http://help.ubuntu.ru/wiki/grub - настройка Grub в Ubuntu
http://wiki.puppyrus.org/setups/load - настройки загрузки Puppy



Дополнительнительные подробности:

1. Команды Grub
2. Настройка Puppy


1. Команды Grub

set root = (hd0,5)
set - универсальная команда для изменения различных параметров. Служит для задания значений переменных и используется в формате: set переменная=значение
set root - наиболее необходимое ее применение - для задания root-раздела.
root - при использовании без параметров сообщает, какой раздел сейчас используется в качестве корневого и тип файловой системы на этом разделе, также команда может быть использована для задания другого root-раздела. Например: root (hd0,5)

"В GRUB изменилась нумерация разделов диска. Нумерация дисков идет с нуля, а нумерация разделов - с единицы!
Если в GRUB Legacy первый раздел первого диска (sda1) именовался «hd0,0». То в GRUB, первый раздел первого диска (sda1) теперь будет «hd0,1»."


(hd0,5) - так задается раздел в «grub device» - формат (hd*,*). Такой код работает только в случае, если диск (hd0) является загрузочным.
Поэтому для поиска раздела с файлами следует использовать uuid.

search - служит для поиска раздела по UUID, метке или заданному файлу.

Имеет следующие ключи:
-u (или –fs-uuid) - поиск раздела по UUID
-l (или –label) - поиск по метке раздела
-f (или –file) - поиск по указанному файлу
-n (или –no-floppy) - не проверять флоппи-дисковод (чтоб не трещал)
-s (или –set) - установить найденный раздел в качестве значения заданной переменной.

Чтобы добавить uuid в файл /etc/grub.d/40_custom, можно использовать команду:

Код
user:~$ sudo blkid

или

Код
user:~$ sudo blkid | grep sdb5 >>  anyfile.txt 

(sdb5 - в общем случае указывается раздел с файлами Wary, а из  anyfile.txt можно скопировать uuid раздела)


linux - аналог команды «kernel» в GRUB Legacy.

http://help.ubuntu.ru/wiki/grub


2. Команды Puppy:

pdev1 - раздел диска с файлами дистрибутива. Ускоряет загрузку.

psubdir - путь к файлам дистрибутива.

pmedia - тип загрузочного устройства: usbflash usbhd usbcd ataflash atahd atacd atazip scsihd scsicd cd

initrd - загружает указанный initrd-образ.

http://wiki.puppyrus.org/setups/load

Пример успешной загрузки Tahr_6.0.2 загрузчиком GRUB2
http://forum.puppyrus.org/index.php/topic,17302.0.html

  
« Последнее редактирование: 02 Сентябрь 2015, 15:54:05 от simplex_man »

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33965
  • Репутация: +231/-0
    • PuppyRus-A
Re:Установка Puppy в Grub2
« Ответ #1 : 12 Июль 2015, 11:04:52 »
Поправил заголовок. Тоже писал подобную инструкцию, но менее развернуто
Спасибо и +
У кого-нибудь есть замечания? Перенести в вики?

Оффлайн qrkx

  • Пользователь
  • **
  • Сообщений: 60
  • Репутация: +1/-0
  • Автор темы
Re:Установка Puppy в Grub2
« Ответ #2 : 12 Июль 2015, 11:57:36 »
Спасибо за отзыв.

Я встретил Вашу инструкцию, когда собирал материл.
Ваш код стал новым поворотным моментом в моих исследованиях настройки загрузки Puppy.

Я наблюдал в реальном времени в редакторе gedit (в Ubuntu-14.04), что файл 50_custom изменяет своё содержание при обновление Grub.
Поэтому я решил следовать примеру из инструкции для Ubuntu и создал 40_custom.

« Последнее редактирование: 12 Июль 2015, 13:01:54 от simplex_man »