Настройка запуска Астры Орёл

Сообщения
20
#1
Здравствуйте. На ноутбуке установлена Роса. Начал устанавливать Астру Орёл, появился запрос установки загрузчика. Я пропустил его, так как у меня загрузчик уже стоит. Зайдя в Росу обновил загрузчик, он увидел Астру. Но не запускается. Что делать? Или нужно использовать ТОЛЬКО загрузчика Астры.
 

Вложения

Последнее редактирование:

cogniter

Moderator
Team Astra Linux
Сообщения
507
#2
честно говоря, не знаю, что там за проблемы у загрузчика Росы.
 
Сообщения
20
#3
честно говоря, не знаю, что там за проблемы у загрузчика Росы.
Стоит роса, всё работает. Устанавливаю Астру, просит установить загрузчик, устанавливаю. Запускается загрузчик Астры. Захожу в Росу, обновляю загрузчик Росы, обновляется. Сохраняю данные. При перезапуске загрузчик не меняется, остаётся от Астры. Опять из под росы переустанавливаю загрузчик Росы, все системы обнаруживаются в том числе и Астра, но при запуске от Астры происходит, то что описано выше.
 

ArturS

New member
Сообщения
13
#4
Здравствуйте. На ноутбуке установлена Роса. Начал устанавливать Астру Орёл, появился запрос установки загрузчика. Я пропустил его, так как у меня загрузчик уже стоит. Зайдя в Росу обновил загрузчик, он увидел Астру. Но не запускается. Что делать? Или нужно использовать ТОЛЬКО загрузчика Астры.
Код:
Загружается Linux 4.15.3-1-hardened ...
ошибка: файл «/boot/4.15.3-1-hardened» не найден.
Загружается начальный виртуальный диск ...
ошибка: сначала вам нужно загрузить ядро.

Нажмите любую клавишу для продолжения.
А можно список ваших файлов из Росы каталога /boot?

ls > rosa_boot.txt

Такой же список из каталога /boot Астры и содержимое из Росы файла /boot/grub/grub.cfg?

Содержимое можно запостить на pastebin.com и дать ссылки.
Есть подозрение, что загрузчик из Росы некорректно прописал в конфиге ядро Астры.
OS-selector грешен этим. И частенько неправильно прописывает в конфиг grub загрузку другой системы.
 

ArturS

New member
Сообщения
13
#5
Вообще то я делаю по другому. Устанавливаю второй дистр и при установке отказываюсь устанавливать загрузчик ос из устанавливаемого дистра вообще. В Вашем случае у Вас уже есть загрузчик из Росы. После перезагрузки из Росы нужно дать команду:

sudo update-grub

os-selector из Росы должен просканировать разделы, обнаружить и прописать заново все загрузочные файлы обнаруженных систем в grub.cfg.
Другое дело, что он не всегда это делает корректно. Но «родную» систему всегда прописывает правильно, сбоев не наблюдалось.
 

ArturS

New member
Сообщения
13
#7
У нас по совпадению Астра установлена на sda7 и у Вас, и у меня.
У меня первой системой MX-Linux, Астра на sda7. Вот мой работающий пункт меню загрузки Астра из Grub MX:

Код:
menuentry 'Astra Linux CE 2.12.22 (Orel) (2.12.22) (на /dev/sda7)' --class astralinuxce --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-38b6c32a-69e1-4022-ae1e-d952ca89c953' {
    insmod part_msdos
    insmod ext2
    set root='hd0,msdos7'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7  38b6c32a-69e1-4022-ae1e-d952ca89c953
    else
      search --no-floppy --fs-uuid --set=root 38b6c32a-69e1-4022-ae1e-d952ca89c953
    fi
    linux /boot/vmlinuz-4.15.3-1-hardened root=UUID=38b6c32a-69e1-4022-ae1e-d952ca89c953 ro quiet net.ifnames=0 slub_debug=P page_poison=1 slab_nomerge pti=on user.max_user_namespaces=0 kernel.kptr_restrict=1 vsyscall=none
    initrd /boot/initrd.img-4.15.3-1-hardened
}
Вот Ваш из Росы:

Код:
menuentry 'AstraLinuxCE GNU/Linux, with Linux 4.15.3-1-hardened (на sda7)' --class astralinuxce --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-/dev/sda7' {
    savedefault
        load_video
        set gfxpayload=keep
        insmod gzio
    insmod part_msdos
    echo 'Загружается Linux 4.15.3-1-hardened …'
    linux /boot/vmlinuz-4.15.3-1-hardened root=UUID=8b063897-1d53-4b26-94fd-b2efa83b82c7 ro quiet net.ifnames=0 slub_debug=P page_poison=1 slab_nomerge pti=on user.max_user_namespaces=0 kernel.kptr_restrict=1 vsyscall=none
    echo 'Загружается начальный виртуальный диск …'
    initrd /boot/initrd.img-4.15.3-1-hardened
}
Можно вставить мой пункт меню из grub вместо Вашего, только заменить номер UUID на Ваш. И посмотреть что будет.

Мой = "38b6c32a-69e1-4022-ae1e-d952ca89c953"

заменить на Ваш в четырёх местах пункта меню.

Ваш UUID = "8b063897-1d53-4b26-94fd-b2efa83b82c7"

Делать это нужно из Росы, просто открыв в текстовом редакторе boot/grub/grub.cfg, Заменить пункт меню моим, исправить UUID на Ваш, сохранить и перезагрузиться. Если даже Астра не загрузится после этого, вернуть grub.cfg можно будет командой sudo update-grub из Росы.

Уж очень по разному конфигурирует утилита конфиги.
 

ArturS

New member
Сообщения
13
#8
Хочу добавить, у меня винчестер разбит на диски без EFI, поэтому наверное в меню - set root='hd0,msdos7'
Смущает, что у вас insmod gzio и у меня insmod ext2
 

oko

New member
Сообщения
522
#9
to Викторович
У вас загрузчик Росы нихрена не понимает, что Astra Linux != Windows, и пытается ее грузить, не указав, где размещается корневая ФС с каталогом /boot (при этом для ROSA Desktop Fresh R11 указатель на корневой раздел имеется - set root='hd0,msdos1')...
Короче, либо разбирайте конфигурации и обновляйте GRUB Росы, либо не занимайтесь ерундой с подменой загрузчика и используйте GRUB из поставки Astra - он корректно определяет и Астру, и Росу, и другие операционные системы, установленные совместно...

to ArturS
insmod ext2 - подгрузка модуля поддержки файловой системы ext2 в целях автоматической перестраховки - /boot достаточно часто выносят на отдельный раздел именно с этой файловой системой...
 

ArturS

New member
Сообщения
13
#10
insmod ext2 - подгрузка модуля поддержки файловой системы ext2 в целях автоматической перестраховки - /boot достаточно часто выносят на отдельный раздел именно с этой файловой системой...
Спасибо за подсказку.
Короче, либо разбирайте конфигурации и обновляйте GRUB Росы
Дельный совет...
либо не занимайтесь ерундой с подменой загрузчика
А вот поучать некрасиво. Каждый обучается как то по своему, и не все могут читать по английски...
 

oko

New member
Сообщения
522
#11
to ArturS
А вот поучать некрасиво. Каждый обучается как то по своему, и не все могут читать по английски...
И в мыслях не было...
Всего лишь считаю, что, упорно пытаться менять местами стартеры "девятки" и "газели" без крайней необходимости и, не особо задумываясь о совместимости и целесообразности подхода, - это называется, заниматься ерундой...
 
Сообщения
20
#12
Здравствуйте ArturS. Я взял пункт из загрузчика Астры, который её загружает.

menuentry 'AstraLinuxCE GNU/Linux, with Linux 4.15.3-1-generic' --class astralinuxce --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-4.15.3-1-generic-advanced-8b063897-1d53-4b26-94fd-b2efa83b82c7' {
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_msdos
insmod ext2
set root='hd0,msdos7'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7 8b063897-1d53-4b26-94fd-b2efa83b82c7
else
search --no-floppy --fs-uuid --set=root 8b063897-1d53-4b26-94fd-b2efa83b82c7
fi
echo 'Loading Linux 4.15.3-1-generic ...'
linux /boot/vmlinuz-4.15.3-1-generic root=UUID=8b063897-1d53-4b26-94fd-b2efa83b82c7 ro quiet net.ifnames=0
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-4.15.3-1-generic
}

Из росы запустил команду grub-update, после отредактировал grub.cfg, перегрузил компьютер, загрузчик не поменялся (остался от астры).
Из росы запустил команду grub-install, перегрузил компьютер, выбрал пункт запуска Астры, экран моргает, ничего не произошло.
 
Сообщения
20
#13
Здравствуйте oko. Использую росу около 2 лет, одновременно с альтом и рунту. Также стоит Виндовс (дети играют). Я вообще интересуюсь российскими ос для простого пользователя. Поэтому решил попробовать и Астру. При установки Астры, я отказался от установки загрузчика (зачем, он у меня есть). После этого зайдя в Росу обновил загрузчик, он увидел Астру. Но при выборе пункта загрузки Астры получилось то, что я уже описал выше. Загрузчик Росы отлично запускает альта, рунту и Виндовс. Именно это и сподвигло меня на поиск решения данной проблемы. Я простой пользователь, и мне просто нужны советы или инструкции, при чём расписанными на простом языке, чтобы я смог извлечь пользу. Ваши комментарии для меня пользы не несут. Я и пытаюсь разобраться с конфигурацией или чем там ещё. Поэтому прошу писать по существу. То что не указан раздел, я и сам вижу (даже я могу сравнивать пункты росы и астры), а вот, что делать, тут мне нужна помощь. Я вообще удивлён, почему вы меня в Виндовс не отправили.
 

oko

New member
Сообщения
522
#14
to Викторович
Проблема велосипедиста в том, что его велосипед, как правило, интересен только ему. Поэтому конкретные инструкции вам приведут лишь те, кто попал в аналогичную ситуацию или те, у кого масса свободного времени для тестирования подобной связки...
Если хотите поковыряться - что достойно уважения - читайте мануал по разделам, которые видит Grub2 (например, тут) и общий мануал по Grub2 (например, тут), разбирайтесь с опцией set root (в который раз, именно ее вам не хватает в конфиге для Astra) и пробуйте...
Если же хотите вариант "для простого пользователя" - используйте автоматизацию, выданную вам при установке Astra (читай, ее Grub и ее конфиг для Grub), вместо того, чтобы править что-то руками (отказываться от загрузчика при установке, ставить чужой загрузчик в автоматическом режиме, явно не поддерживающий нужный конфиг, и т.д.)...
 

ArturS

New member
Сообщения
13
#15
Здравствуйте ArturS. Я взял пункт из загрузчика Астры, который её загружает.
Нужно было не брать из Астры пункт меню.

1. Этот пункт, который я подготовил(исправил на Ваш UUID):

Код:
menuentry 'Astra Linux CE 2.12.22 (Orel) (2.12.22) (на /dev/sda7)' --class astralinuxce --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-8b063897-1d53-4b26-94fd-b2efa83b82c7' {
    insmod part_msdos
    insmod ext2
    set root='hd0,msdos7'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos7 --hint-efi=hd0,msdos7 --hint-baremetal=ahci0,msdos7  8b063897-1d53-4b26-94fd-b2efa83b82c7
    else
      search --no-floppy --fs-uuid --set=root 8b063897-1d53-4b26-94fd-b2efa83b82c7
    fi
    linux /boot/vmlinuz-4.15.3-1-hardened root=UUID=8b063897-1d53-4b26-94fd-b2efa83b82c7 ro quiet net.ifnames=0 slub_debug=P page_poison=1 slab_nomerge pti=on user.max_user_namespaces=0 kernel.kptr_restrict=1 vsyscall=none
    initrd /boot/initrd.img-4.15.3-1-hardened
}
вставляйте в grub.cfg от Росы, вместо пункта, который запускает Астру.

2. Сохраните и ничего не делайте, просто перегрузите компьютер.
Никаких команд не давайте. Астра должна запуститься.

3. Команда update-grub запускает shell-скрипт osprober, который сканирует разделы с системами, находит ядра установленных систем и записывает их в grub.cfg. Старый grub.cfg удаляется. Сам grub, если загрузился, считывает конфигурационный файл grub.cfg и выполняет прописанные для него инструкции. Больше ничего он не делает и переустанавливать его командой grub-install необходимости нет.

4. Конфигурационный файл grub.cfg "живет" до первой команды update-grub, которую может дать Вы вручную, и может дать сама система при обновлении ядра допустим. Так что если подмена пункта вручную поможет, то это будет работать до первой команды update-grub. Мне самому хотелось понять где ошибка и oko прав - "set root='hd0,msdos7'" причиной может быть.
 
Сообщения
20
#16
Здравствуйте ArturS! Большое Вам спасибо, что пытаетесь разобраться. Наверное я делаю, что то неправильно. Поэтому я постарался, зафиксировать всё пошагово. В текстовом действия, в фотографиях сам пункт загрузки Астры и что происходит при его выборе.
 

Вложения

ArturS

New member
Сообщения
13
#17
Здравствуйте ArturS! Большое Вам спасибо, что пытаетесь разобраться. Наверное я делаю, что то неправильно. Поэтому я постарался, зафиксировать всё пошагово. В текстовом действия, в фотографиях сам пункт загрузки Астры и что происходит при его выборе.
Привет.
Да, скорее всего, пакет grub из Росы уникален и со своими ошибками. Сегодня уже ничего делать не буду, а завтра установлю Росу первым дистрибутивом и посмотрю, чего она там вытворяет. Отпишусь. Для меня это не проблема, я часто меняю дистрибутивы. Просто MX-linux со своим grub всегда почти адекватно определяет устанавливаемые системы, поэтому только его и держу первой системой. Если не спите, можете сказать версию Вашей Росы, чтобы попытаться симитировать Вашу ситуацию. Завтра займусь. Мне самому уже очень интересно. К слову, я Астру установил чисто из любопытства. Но теперь уже завёлся. Люблю решать проблемы. К слову про UUID просто и довольно понятно - статейка.
 

oko

New member
Сообщения
522
#18
*в сторону*
Нет, чтобы по ссылкам пройти, - давай сразу лепить один конфиг на другой, не разбирая дороги...
В общем случае, если при установке Astra Linux не выделялся отдельный раздел для /boot, то можно поступить так:
1. Грузим машину. При старте GRUB2 жмем "c" и попадаем в консоль восстановления (grub>)...
2. Выполняем ls и смотрим выхлоп. Должно быть нечто вроде (hd0) (hd0,msdos5) и т.п...
3. Последовательно выполняем ls (hd0,msdosX)/boot, где X - соответствующий номер из прошлого пункта. Выполняем до тех пор, пока не находим vmlinuz-4.15.3-1-... - значит, этот msdosX - раздел с нашей Astra Linux Орел (благо, у Росы ядро по-старше - vmlinuz-4.9.155)...
4. Для найденного msdosX выполняем cat (hd0,msdosX)/etc/fstab - читаем файл fstab, содержащий UUID-разделов, видимых Astra Linux. Запоминаем UUID для раздела, смонтированного в "/" (далее - root-uuid)...
5. Перезагружаемся в Росу. Правим файл /etc/grub.d/40_custom, дописывая в его конец:
echo "create new menuentry for Astra Linux CE" >&2
menuentry 'Custom boot for Astra Linux CE' {
insmod part_msdos
insmod ext2
set root='hd0,msdosХ'
linux /boot/vmlinuz-4.15.3-1-generic root=UUID=root-uuid ro quiet net.ifnames=0 slub_debug=P page_poison=1 slab_nomerge pti=on user.max_user_namespaces=0 kernel.kptr_restrict=1 vsyscall=none
initrd /boot/initrd.img-4.15.3-1-generic
}
6. Выполняем update-grub и дожидаемся выхлопа "create new menuentry for Astra Linux CE". В результате в меню GRUB2 появится новая точка входа с загрузкой generic-версии ядра для Astra Linux CE (можно аналогичным образом заменить загрузку generic на hardened по вкусу).
7. Перезагружаемся и проверяем пункт 'Custom boot for Astra Linux CE'...
После успешной проверки грузимся в Astra Linux, сносим к такой-то матери GRUB2, установленный Росой, ставим GRUB2 от Astra Linux и радуемся жизни. Ибо в противном случае, огребаем повторный геморрой при каждом обновлении Росы или Astra Linux, затрагивающем реконфигурацию ядра или загрузчика (читай, при каждом глобальном обновлении, которые не так уж и редки, ага)...
НО это все бесполезно, потому что (см. ниже)...

to Викторович
Скажите, а вас не смутила запись:
Найден Astra Linux CE 2.12.22 (Orel) (2.12.22) на /dev/sda7
/usr/sbin/grub2-probe: ошибка: неизвестная файловая система.
Найден Astra Linux CE 2.12.22 (Orel) (2.12.22) на /dev/sda7
/usr/sbin/grub2-probe: ошибка: неизвестная файловая система.
Вам загрузчик как бы намекает, что не сможет прочесть /dev/sda7 с Astra Linux ни при каком раскладе. С этим надо разбираться (а заодно уточнить, какие файловые системы вы использовали при установке и т.д.)
Поэтому вновь совет "для простого пользователя": повторно установите Astra Linux (раз так хотите дуалбут), установите ее GRUB2 в MBR-область /dev/sda, используйте конфиг созданный по умолчанию и не парьтесь...
 
Сообщения
20
#19
Здравствуйте око! Спасибо за развёрнутый совет. У меня есть пару вопросов.
1. Обязательно всё это делать из загрузчика, не могу я взять UUID из файла fstab в разделе Астра из РОСЫ?
2. Я не нашёл /etc/grub.d/40_custom , у меня его нет, в РОСЕ.
3. Загрузку Астру я восстанавливаю из загрузочной флешки, для даже для меня достаточно просто.
4. Запись меня смутила, с этим то и разбираюсь (почему я раньше Вам это не отправил, потому что сам только увидел, прошу прощения). Я просто не знаю, что Вам показать, чтобы Вы смогли разобраться.
 

Вложения

oko

New member
Сообщения
522
#20
to Викторович
UUID, записанный загрузчиком Росы, внезапно может отличаться от UUID, видимого Astra Linux. Поэтому надежнее через fstab. Раз уж мы подозреваем загрузчик Росы в "нестабильности", ага...
Раз 40_custom отсутствует - см. ман по GRUB2 в Росе и используйте /boot/grub/custom.cfg...
Разбирайтесь, какой там тип ФС использует корневой раздел Astra Linux и почему его не видит Роса...
Загрузку Астру я восстанавливаю из загрузочной флешки, для даже для меня достаточно просто.
Вот эта фраза заставляет модуль экстрасенсорики перегреться и отключиться. Короче говоря, возьмите LiveCD и установите GRUB2 с него в режиме автоконфигурации. Раз уж ваша загрузочная флешка самостоятельно определяет Astra Linux и Росу...