Previous Topic: Major Grid Crash Recovery, Controller Boot Volume CorruptedNext Topic: Mounting Volumes as a Block Device on Controller


Mounting a .Boot Volume from Another Appliance - Grub Reinstall

These steps are helpful if the .boot was overwritten or corrupted on an appliance. In this case the customer was unable to boot their application after the appliance volume was re-sized. This is a bug in 3.1 and unsure about 3.5 at this time. You can mount a DVD .iso to boot as well but the steps below can be executed quicker under most conditions.

[root@Dev1 ~]# 3t app create catest
Creating descriptors for application 'catest'...
Warning: Application 'catest' does not have an owner.
APPLOGIC RESTRICTED AREA
[root@Dev1 ~]# 3t app modify_acl catest <userID>=full

From the appliance Canvas:

  1. Branch the appliance.
  2. Modify the boundary -> add a placeholder volume.
  3. Edit the appliance user volumes by linking the app user volume to the placeholder volume
    [root@Dev1 ~]# 3tctl rename sv build_box.class.centos5_64.boot catest.user.centos5_64boot
    [root@Dev1 ~]# 3t app start catest --debug
    Building application...
    Configuring application...Done
    Loading application...
    Scheduling application...
    Starting application catest
    main.LINUX64 started
    Application catest started successfully
    APPLOGIC RESTRICTED AREA
    [catest:main.LINUX64 ~]# mount /dev/hdb1 /mnt/temp
    [catest:main.LINUX64 ~]# mount -t proc none /mnt/temp/proc
    [catest:main.LINUX64 ~]# mount -o bind /dev /mnt/temp/dev
    [catest:main.LINUX64 ~]# chroot /mnt/temp /bin/bash
    [root@LINUX64 /]# grub
    Probing devices to guess BIOS drives. This may take a long time.
    GNU GRUB version 0.97 (640K lower / 3072K upper memory)
    [ Minimal BASH-like line editing is supported. For the first word, TAB
    lists possible command completions. Anywhere else TAB lists the possible
    completions of a device/filename.]
    grub> root (hd1,0)
    root (hd1,0)
    Filesystem type is ext2fs, partition type 0x83
    grub> setup (hd1)
    setup (hd1)
    Checking if "/boot/grub/stage1" exists... yes
    Checking if "/boot/grub/stage2" exists... yes
    Checking if "/boot/grub/e2fs_stage1_5" exists... yes
    Running "embed /boot/grub/e2fs_stage1_5 (hd1)"... 15 sectors are embedded.
    succeeded
    Running "install /boot/grub/stage1 (hd1) (hd1)1+15 p
    (hd1,0)/boot/grub/stage2 /boot/grub/grub.conf"... succeeded
    Done.
    grub> quit
    quit
    [root@LINUX64 /]# exit
    exit
    [catest:main.LINUX64 ~]# umount /mnt/temp/dev
    [catest:main.LINUX64 ~]# umount /mnt/temp/proc
    [catest:main.LINUX64 ~]# umount /mnt/temp
    [catest:main.LINUX64 ~]#
    [root@Dev1 ~]# 3tctl rename sv catest.user.centos5_64boot
    build_box.class.centos5_64.boot
    APPLOGIC RESTRICTED AREA
    [root@Dev1 ~]# 3t app start build_box --debug
    Building application...
    Configuring application...Done
    Loading application...
    Scheduling application...
    Starting application build_box
    main.INSSLR started
    main.NET started
    main.centos5_64 started
    Application build_box started successfully
    APPLOGIC RESTRICTED AREA
    [root@Dev1 ~]#