OpenIndiana pregazila Trios grub

Instalacija OpenIndiana pregazila grub od Trios-a. Need a little help from my friends.

Don’t worry my friend :slight_smile:
Prvo, moraš reći šta želiš da uradiš…da vratiš TRIOS grub i likvidiraš OI, ili da dodaš TRIOS u OI grub?
Ako hoćeš da zadržiš instalaciju OI, onda je moja preporuka da se boot TRIOS-a doda u OI grub, zbog specifičnosti te verzije gruba.
Kod svakog ozbiljnijeg apdejta OI, pravi se novi BE (boot environment, snapshot sistema…) koji se automatski dodaje u grub.

@Dragan, Baš kako je podvučeno u gore navedenom tekstu. Probao sam da razumijem preko nekih primjera kako se dodaje grub od " tamo nekog linuksa" u rpool/boot/grub/menu.lst, no bojim se da nešto ne uk…m.

@banjah2002
Ok.
Sa te OI instalacije verovatno ne možeš da pristupiš (oobox…) ext4 particiji na kojoj je instaliran TRIOS…jedna od ćudljivih strana svojeglavog i samodovoljnog Solarisa, kojeg ne interesuju ostali fajl sistemi. Zli jezici bi rekli da je to ispravan stav :wink:
Ako ti nije problem, podigni live TRIOS na tom računaru, pronađi particiju na kojoj je instaliran TRIOS, pa prenesi ovde sadržaj /boot/grub/grub.cfg fajla iz instaliranog TRIOS-a.
Fajl mi je potreban da vidim kako je tačno i gde instaliran TRIOS…nakon toga ćemo probati da ubacimo novi unos u OI grub.

@Dragan
Evo sadzaja trazenog fajla.

DO NOT EDIT THIS FILE

It is automatically generated by grub-mkconfig using templates

from /etc/grub.d and settings from /etc/default/grub

BEGIN /etc/grub.d/00_header

if [ -s $prefix/grubenv ]; then
set have_grubenv=true
load_env
fi
if [ “${next_entry}” ] ; then
set default="${next_entry}"
set next_entry=
save_env next_entry
set boot_once=true
else
set default=“Advanced options for TRIOS GNU/Linux>TRIOS GNU/Linux, with Linux 3.16.0-4-amd64”
fi

if [ x"${feature_menuentry_id}" = xy ]; then
menuentry_id_option="–id"
else
menuentry_id_option=""
fi

export menuentry_id_option

if [ “${prev_saved_entry}” ]; then
set saved_entry="${prev_saved_entry}"
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi

function savedefault {
if [ -z “${boot_once}” ]; then
saved_entry="${chosen}"
save_env saved_entry
fi
}
function load_video {
if [ x$feature_all_video_module = xy ]; then
insmod all_video
else
insmod efi_gop
insmod efi_uga
insmod ieee1275_fb
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
fi
}

if [ x$feature_default_font_path = xy ] ; then
font=unicode
else
insmod part_msdos
insmod ext2
set root=‘hd0,msdos5’
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5 0a1e2e42-a1a1-442e-8cc7-eb139211bd91
else
search --no-floppy --fs-uuid --set=root 0a1e2e42-a1a1-442e-8cc7-eb139211bd91
fi
font="/usr/share/grub/unicode.pf2"
fi

if loadfont $font ; then
set gfxmode=auto
load_video
insmod gfxterm
set locale_dir=$prefix/locale
set lang=en_US
insmod gettext
fi
terminal_output gfxterm
if [ “${recordfail}” = 1 ] ; then
set timeout=-1
else
if [ x$feature_timeout_style = xy ] ; then
set timeout_style=menu
set timeout=10 # Set to a value != 0 to show the menu.

Fallback normal timeout code in case the timeout_style feature is

unavailable.

else
set timeout=10 # Set to a value != 0 to show the menu.
fi
fi

END /etc/grub.d/00_header

BEGIN /etc/grub.d/05_debian_theme

insmod part_msdos
insmod ext2
set root=‘hd0,msdos5’
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5 0a1e2e42-a1a1-442e-8cc7-eb139211bd91
else
search --no-floppy --fs-uuid --set=root 0a1e2e42-a1a1-442e-8cc7-eb139211bd91
fi
insmod png
if background_image /boot/grub/trios-grub-bg.png; then
true
else
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
fi

END /etc/grub.d/05_debian_theme

BEGIN /etc/grub.d/07_trios_theme

if background_image /boot/grub/trios-grub-bg.png ; then
set color_normal=white/black
set color_highlight=red/black
fi

END /etc/grub.d/07_trios_theme

BEGIN /etc/grub.d/10_linux

function gfxmode {
set gfxpayload="${1}"
}
set linux_gfx_mode=
export linux_gfx_mode
menuentry ‘TRIOS GNU/Linux’ --class trios --class gnu-linux --class gnu --class os $menuentry_id_option ‘gnulinux-simple-0a1e2e42-a1a1-442e-8cc7-eb139211bd91’ {
load_video
insmod gzio
insmod part_msdos
insmod ext2
set root=‘hd0,msdos5’
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5 0a1e2e42-a1a1-442e-8cc7-eb139211bd91
else
search --no-floppy --fs-uuid --set=root 0a1e2e42-a1a1-442e-8cc7-eb139211bd91
fi
echo ‘Loading Linux 3.16.0-4-amd64 …’
linux /boot/vmlinuz-3.16.0-4-amd64 root=UUID=0a1e2e42-a1a1-442e-8cc7-eb139211bd91 ro quiet resume=/dev/sda5
echo ‘Loading initial ramdisk …’
initrd /boot/initrd.img-3.16.0-4-amd64
}
submenu ‘Advanced options for TRIOS GNU/Linux’ $menuentry_id_option ‘gnulinux-advanced-0a1e2e42-a1a1-442e-8cc7-eb139211bd91’ {
menuentry ‘TRIOS GNU/Linux, with Linux 3.16.0-4-amd64’ --class trios --class gnu-linux --class gnu --class os $menuentry_id_option ‘gnulinux-3.16.0-4-amd64-advanced-0a1e2e42-a1a1-442e-8cc7-eb139211bd91’ {
load_video
insmod gzio
insmod part_msdos
insmod ext2
set root=‘hd0,msdos5’
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5 0a1e2e42-a1a1-442e-8cc7-eb139211bd91
else
search --no-floppy --fs-uuid --set=root 0a1e2e42-a1a1-442e-8cc7-eb139211bd91
fi
echo ‘Loading Linux 3.16.0-4-amd64 …’
linux /boot/vmlinuz-3.16.0-4-amd64 root=UUID=0a1e2e42-a1a1-442e-8cc7-eb139211bd91 ro quiet resume=/dev/sda5
echo ‘Loading initial ramdisk …’
initrd /boot/initrd.img-3.16.0-4-amd64
}
menuentry ‘TRIOS GNU/Linux, with Linux 3.16.0-4-amd64 (recovery mode)’ --class trios --class gnu-linux --class gnu --class os $menuentry_id_option ‘gnulinux-3.16.0-4-amd64-recovery-0a1e2e42-a1a1-442e-8cc7-eb139211bd91’ {
load_video
insmod gzio
insmod part_msdos
insmod ext2
set root=‘hd0,msdos5’
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5 0a1e2e42-a1a1-442e-8cc7-eb139211bd91
else
search --no-floppy --fs-uuid --set=root 0a1e2e42-a1a1-442e-8cc7-eb139211bd91
fi
echo ‘Loading Linux 3.16.0-4-amd64 …’
linux /boot/vmlinuz-3.16.0-4-amd64 root=UUID=0a1e2e42-a1a1-442e-8cc7-eb139211bd91 ro single
echo ‘Loading initial ramdisk …’
initrd /boot/initrd.img-3.16.0-4-amd64
}
}

END /etc/grub.d/10_linux

BEGIN /etc/grub.d/20_linux_xen

END /etc/grub.d/20_linux_xen

BEGIN /etc/grub.d/20_memtest86+

menuentry “Memory test (memtest86+)” {
insmod part_msdos
insmod ext2
set root=‘hd0,msdos5’
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5 0a1e2e42-a1a1-442e-8cc7-eb139211bd91
else
search --no-floppy --fs-uuid --set=root 0a1e2e42-a1a1-442e-8cc7-eb139211bd91
fi
linux16 /boot/memtest86+.bin
}
menuentry “Memory test (memtest86+, serial console 115200)” {
insmod part_msdos
insmod ext2
set root=‘hd0,msdos5’
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5 0a1e2e42-a1a1-442e-8cc7-eb139211bd91
else
search --no-floppy --fs-uuid --set=root 0a1e2e42-a1a1-442e-8cc7-eb139211bd91
fi
linux16 /boot/memtest86+.bin console=ttyS0,115200n8
}
menuentry “Memory test (memtest86+, experimental multiboot)” {
insmod part_msdos
insmod ext2
set root=‘hd0,msdos5’
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5 0a1e2e42-a1a1-442e-8cc7-eb139211bd91
else
search --no-floppy --fs-uuid --set=root 0a1e2e42-a1a1-442e-8cc7-eb139211bd91
fi
multiboot /boot/memtest86+_multiboot.bin
}
menuentry “Memory test (memtest86+, serial console 115200, experimental multiboot)” {
insmod part_msdos
insmod ext2
set root=‘hd0,msdos5’
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5 0a1e2e42-a1a1-442e-8cc7-eb139211bd91
else
search --no-floppy --fs-uuid --set=root 0a1e2e42-a1a1-442e-8cc7-eb139211bd91
fi
multiboot /boot/memtest86+_multiboot.bin console=ttyS0,115200n8
}

END /etc/grub.d/20_memtest86+

BEGIN /etc/grub.d/30_os-prober

menuentry ‘Windows 7 (loader) (on /dev/sda1)’ --class windows --class os $menuentry_id_option ‘osprober-chain-32DC8B99DC8B564F’ {
insmod part_msdos
insmod ntfs
set root=‘hd0,msdos1’
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 32DC8B99DC8B564F
else
search --no-floppy --fs-uuid --set=root 32DC8B99DC8B564F
fi
parttool ${root} hidden-
chainloader +1
}
menuentry ‘PCLinuxOS (on /dev/sda8)’ --class gnu-linux --class gnu --class os $menuentry_id_option ‘osprober-gnulinux-simple-2d2eab24-9af0-43e3-9b99-b514a07da146’ {
insmod part_msdos
insmod ext2
set root=‘hd0,msdos8’
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos8 --hint-efi=hd0,msdos8 --hint-baremetal=ahci0,msdos8 2d2eab24-9af0-43e3-9b99-b514a07da146
else
search --no-floppy --fs-uuid --set=root 2d2eab24-9af0-43e3-9b99-b514a07da146
fi
linux /boot/vmlinuz-4.4.4-pclos1 root=UUID=2d2eab24-9af0-43e3-9b99-b514a07da146 ro nokmsboot splash quiet noiswmd resume=UUID=e1115627-dc1c-4824-bdc6-9f1759b320c5
initrd /boot/initrd-4.4.4-pclos1.img
}
submenu ‘Advanced options for PCLinuxOS (on /dev/sda8)’ $menuentry_id_option ‘osprober-gnulinux-advanced-2d2eab24-9af0-43e3-9b99-b514a07da146’ {
menuentry ‘PCLinuxOS, with Linux 4.4.4-pclos1 (on /dev/sda8)’ --class gnu-linux --class gnu --class os $menuentry_id_option ‘osprober-gnulinux-/boot/vmlinuz-4.4.4-pclos1–2d2eab24-9af0-43e3-9b99-b514a07da146’ {
insmod part_msdos
insmod ext2
set root=‘hd0,msdos8’
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos8 --hint-efi=hd0,msdos8 --hint-baremetal=ahci0,msdos8 2d2eab24-9af0-43e3-9b99-b514a07da146
else
search --no-floppy --fs-uuid --set=root 2d2eab24-9af0-43e3-9b99-b514a07da146
fi
linux /boot/vmlinuz-4.4.4-pclos1 root=UUID=2d2eab24-9af0-43e3-9b99-b514a07da146 ro nokmsboot splash quiet noiswmd resume=UUID=e1115627-dc1c-4824-bdc6-9f1759b320c5
initrd /boot/initrd-4.4.4-pclos1.img
}
menuentry ‘PCLinuxOS, with Linux 4.4.4-pclos1 (recovery mode) (on /dev/sda8)’ --class gnu-linux --class gnu --class os $menuentry_id_option ‘osprober-gnulinux-/boot/vmlinuz-4.4.4-pclos1-root=UUID=2d2eab24-9af0-43e3-9b99-b514a07da146 ro single-2d2eab24-9af0-43e3-9b99-b514a07da146’ {
insmod part_msdos
insmod ext2
set root=‘hd0,msdos8’
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos8 --hint-efi=hd0,msdos8 --hint-baremetal=ahci0,msdos8 2d2eab24-9af0-43e3-9b99-b514a07da146
else
search --no-floppy --fs-uuid --set=root 2d2eab24-9af0-43e3-9b99-b514a07da146
fi
linux /boot/vmlinuz-4.4.4-pclos1 root=UUID=2d2eab24-9af0-43e3-9b99-b514a07da146 ro single
initrd /boot/initrd-4.4.4-pclos1.img
}
}

END /etc/grub.d/30_os-prober

BEGIN /etc/grub.d/30_uefi-firmware

END /etc/grub.d/30_uefi-firmware

BEGIN /etc/grub.d/40_custom

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.

END /etc/grub.d/40_custom

BEGIN /etc/grub.d/41_custom

if [ -f ${config_directory}/custom.cfg ]; then
source ${config_directory}/custom.cfg
elif [ -z “${config_directory}” -a -f $prefix/custom.cfg ]; then
source $prefix/custom.cfg;
fi

END /etc/grub.d/41_custom

BEGIN /etc/grub.d/42_trios_custom

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 “System shutdown” {
echo “System shutting down…”
halt
}

menuentry “System restart” {
echo “System rebooting…”
reboot
}

END /etc/grub.d/42_trios_custom

@banjah2002
Izvinjavam se zato što kasnim sa odgovorom…razlog je zato što sam naišao na problem koji još uvek nisam u stanju da rešim.
Da li će se taj problem i kod tebe iskazati ne znam, ali probaću da objasnim, pa neka odluka bude na tebi šta dalje da radiš.
Dakle, bar sudeći prema grub.cfg, kod tebe se nalaze 3 sistema + openindiana: Windows, TRIOS i PCLinuxOS.
Na osnovu toga, dodatni unosi za menu.lst u OI bi trebalo da budu ovakvi:

title TRIOS
        root (hd0,4)
        kernel /boot/vmlinuz-3.16.0-4-amd64 root=UUID=0a1e2e42-a1a1-442e-8cc7-eb139211bd91 ro quiet resume=/dev/sda5
        initrd /boot/initrd.img-3.16.0-4-amd64

title WINDOWS
    rootnoverify (hd0,0)
    chainloader +1

title PCLinuxOS
    root (hd0,7)
    kernel /boot/vmlinuz-4.4.4-pclos1 root=UUID=2d2eab24-9af0-43e3-9b99-b514a07da146 ro nokmsboot splash quiet noiswmd resume=UUID=e1115627-dc1c-4824-bdc6-9f1759b320c5
    initrd /boot/initrd-4.4.4-pclos1.img

Htedoh da prvo proverim sve kod mene (u vboxu…) ali pojavio mi se problem da grub 0.97 u OI ne prepoznaje fajl sistem na target particiji, izbacuje grešku, i naravno ne podiže nijedan sistem osim OI, iako je sam unos uredno prepoznat u grubu.
VirtualBox_TRIOS-GRUB_28_07_2016_23_20_49.png VirtualBox_TRIOS-GRUB_28_07_2016_23_20_57.png

Pretragom po internetu naišao sam na bezbroj primera istih/sličnih grešaka za stari, legacy grub, čak i na OI wiki se nalazi upozorenje slične sadržine:

OpenIndiana uses a special branch of GRUB with ZFS support and may lack direct support of newer filesystem and volume layouts relevant for other operating systems, though it can chainload Windows and can directly load Linux kernel and initrd miniroot files from partitions formatted as ext2/ext3 (however it can not, for example, interpret partitions with Linux LVM - containers of volumes with filesystems inside).

Adding GRUB entries for Windows and other Operating Systems (Dual booting) - OpenIndiana - OpenIndiana Wiki

TRIOS je instaliran na ext4 particiji, pa je moguće da OI grub ne prepoznaje ext4 fajl sistem, ali bi ti mogao da proveriš da li sam ispravno dodao unose za menu.lst bar za wintendo…boot wintenda ide na drugačiji način, kroz chainloader, i (ne)prepoznavanje fajl sistema kroz grub ne utiče u tom slučaju na podizanje sistema.
Generalno, ako odradiš unos u OI menu.lst kako treba, neće se ništa dodatno loše desiti po tvoj računar, pa ako si voljan…

@Dragan, ubacio sam još jedan manji hdd (80GB), te se spremam da na njega instaliram openindiana i ništa drugo. Naravno već imam dosta pitanja za tebe ali o tom-potom. Pozdrav.

Da, ovo je najbolji, a i najlakši način.