Forums

Home / Forums

You need to log in to create posts and topics. Login · Register

Upgrade 2.1 to 2.2 "missing operating system"

Pages: 1 2
Better i will migrate the productive VMs to new 2.2 cluster (I think, in the productive cluster, an upgrade "apt-get upgrade" was made by another administrator, so it is better to reinstall). Can i migrate monitor/management node from 2.1 to 2.2? And how best to migrate vmdk from 2.1 osd nodes to new 2.2 without iscsi targets loss. Now i have 3 productive (management+osd) nodes with 9 hdd on each

I am not sure about your environment and if the apt-get upgrade is related. But because of the upgrade error you had, i will be cautious doing the same on other vms, maybe make a copy vm and try it as a test, is you still do, let us know more details to try to reproduce this.

I have the same issue. After upgrading an existing PetaSAN 2.1 installation to PetaSAN 2.2, the system refuses to boot. After showing a blinking cursor about 30 seconds,  a "BusyBox" shell opens, and it says "ALERT! /dev/sda2 does not exist. Dropping to a shell".

I followed the steps on the previous page of this topic, and mounted the filesystem using a LiveCD. The /dev/sda2 partition was readable, and the "ls /mnt/part2/boot" command listed the files you mentioned. I then executed the "chroot /mnt/part2/ grub-install --target=i386-pc --modules="ext2 part_gpt" /dev/sda" command, and it executed succesfully. The system still isn't willing to boot however.

I can reproduce this issue by re-installing PetaSAN 2.1 (clean install) and then running the PetaSAN 2.2 installer. The installer doesn't report any errors, but the system still doesn't boot.

First if possible let you know your environment: are these real systems or virtualized vSphere ? we want to reproduce this, so far all our install and upgrades tests work. Are you booting in BIOS or EFI ? Is your boot disk the first disk ?  what you see is slightly different than the original post, in this case the boot loader does install but is not able to find the root partition.
Also if you can please remount the boot disk on a second system as you did earlier and:

1) post the content of existing file: /mnt/part2/boot/grub/grub.cfg

2) edit the contents of the file to:

set timeout=0
set default=0

menuentry 'PetaSAN' {
insmod gzio
insmod part_gpt
insmod ext2

search --no-floppy --fs-uuid --set=root 66cb3ed0-409f-4766-aa1f-084907a0576b
linux /boot/vmlinuz-4.12.14-08-petasan root=UUID=66cb3ed0-409f-4766-aa1f-084907a0576b quiet net.ifnames=0
initrd /boot/initrd.img-4.12.14-08-petasan
}

( the net.ifnames=0 is on the same line, not a new line)

And replace the uuid 66cb3ed0-409f-4766-aa1f-084907a0576b with the uuid of the second partition on your boot disk, assume the boot disk is seen as /dev/sdx when attached in the current rescue system, do a

blkid -s UUID -o value /dev/sdX2

and replace the value you get in the above file ( 2 places ).

This is a physical server (not virtualized), and it's using the BIOS boot mode.

Below is the original grub.cfg file:

#
# 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="0"
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 recordfail {
set recordfail=1
if [ -n "${have_grubenv}" ]; then if [ -z "${boot_once}" ]; then save_env recordfail; fi; 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,msdos2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos2 --hint-efi=hd0,msdos2 --hint-baremetal=ahci0,msdos2 479411e4-b9b1-4a11-8e9c-1f416d6b1453
else
search --no-floppy --fs-uuid --set=root 479411e4-b9b1-4a11-8e9c-1f416d6b1453
fi
font="/usr/share/grub/unicode.pf2"
fi

if loadfont $font ; then
set gfxmode=auto
load_video
insmod gfxterm
fi
terminal_output gfxterm
if [ "${recordfail}" = 1 ] ; then
set timeout=30
else
if [ x$feature_timeout_style = xy ] ; then
set timeout_style=hidden
set timeout=0
# Fallback hidden-timeout code in case the timeout_style feature is
# unavailable.
elif sleep --interruptible 0 ; then
set timeout=0
fi
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
function gfxmode {
set gfxpayload="${1}"
if [ "${1}" = "keep" ]; then
set vt_handoff=vt.handoff=7
else
set vt_handoff=
fi
}
if [ "${recordfail}" != 1 ]; then
if [ -e ${prefix}/gfxblacklist.txt ]; then
if hwmatch ${prefix}/gfxblacklist.txt 3; then
if [ ${match} = 0 ]; then
set linux_gfx_mode=keep
else
set linux_gfx_mode=text
fi
else
set linux_gfx_mode=text
fi
else
set linux_gfx_mode=keep
fi
else
set linux_gfx_mode=text
fi
export linux_gfx_mode
menuentry 'Debian GNU/Linux' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-479411e4-b9b1-4a11-8e9c-1f416d6b1453' {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_msdos
insmod ext2
set root='hd0,msdos2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos2 --hint-efi=hd0,msdos2 --hint-baremetal=ahci0,msdos2 479411e4-b9b1-4a11-8e9c-1f416d6b1453
else
search --no-floppy --fs-uuid --set=root 479411e4-b9b1-4a11-8e9c-1f416d6b1453
fi
linux /boot/vmlinuz-4.12.14-08-petasan root=/dev/sda2 ro quiet net.ifnames=0 quiet net.ifnames=0
initrd /boot/initrd.img-4.12.14-08-petasan
}
submenu 'Advanced options for Debian GNU/Linux' $menuentry_id_option 'gnulinux-advanced-479411e4-b9b1-4a11-8e9c-1f416d6b1453' {
menuentry 'Debian GNU/Linux, with Linux 4.12.14-08-petasan' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.12.14-08-petasan-advanced-479411e4-b9b1-4a11-8e9c-1f416d6b1453' {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_msdos
insmod ext2
set root='hd0,msdos2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos2 --hint-efi=hd0,msdos2 --hint-baremetal=ahci0,msdos2 479411e4-b9b1-4a11-8e9c-1f416d6b1453
else
search --no-floppy --fs-uuid --set=root 479411e4-b9b1-4a11-8e9c-1f416d6b1453
fi
echo 'Loading Linux 4.12.14-08-petasan ...'
linux /boot/vmlinuz-4.12.14-08-petasan root=/dev/sda2 ro quiet net.ifnames=0 quiet net.ifnames=0
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-4.12.14-08-petasan
}
menuentry 'Debian GNU/Linux, with Linux 4.12.14-08-petasan (recovery mode)' --class debian --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.12.14-08-petasan-recovery-479411e4-b9b1-4a11-8e9c-1f416d6b1453' {
recordfail
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_msdos
insmod ext2
set root='hd0,msdos2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos2 --hint-efi=hd0,msdos2 --hint-baremetal=ahci0,msdos2 479411e4-b9b1-4a11-8e9c-1f416d6b1453
else
search --no-floppy --fs-uuid --set=root 479411e4-b9b1-4a11-8e9c-1f416d6b1453
fi
echo 'Loading Linux 4.12.14-08-petasan ...'
linux /boot/vmlinuz-4.12.14-08-petasan root=/dev/sda2 ro single nomodeset quiet net.ifnames=0
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-4.12.14-08-petasan
}
}

### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/30_os-prober ###
### 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 ###

I then replaced the contents of the file with:

set timeout=0
set default=0

menuentry 'PetaSAN' {
insmod gzio
insmod part_gpt
insmod ext2

search --no-floppy --fs-uuid --set=root 479411e4-b9b1-4a11-8e9c-1f416d6b1453
linux /boot/vmlinuz-4.12.14-08-petasan root=UUID=479411e4-b9b1-4a11-8e9c-1f416d6b1453 quiet net.ifnames=0
initrd /boot/initrd.img-4.12.14-08-petasan
}

After rebooting the main PetaSAN screen appeared, so that seems to have fixed the problem.

Pages: 1 2