Solaris Express Installation Guide: Solaris Live Upgrade and Upgrade Planning

x86: Locating the GRUB Menu's menu.lst File (Tasks)

You must always use the bootadm command to locate the GRUB menu's menu.lst file. The list-menu subcommand finds the active GRUB menu. The menu.lst file lists all the operating systems that are installed on a system. The contents of this file dictate the list of operating systems that is displayed on the GRUB menu.

Typically, the active GRUB menu's menu.lst file is located at /boot/grub/menu.lst. In some situations, the GRUB menu.lst file resides elsewhere. For example, in a system that uses Solaris Live Upgrade, the GRUB menu.lst file might be on a boot environment that is not the currently running boot environment. Or if you have upgraded a system with an x86 boot partition, the menu.lst file might reside in the /stubboot directory. Only the active GRUB menu.lst file is used to boot the system. In order to modify the GRUB menu that is displayed when you boot the system, the active GRUB menu.lst file must be modified. Changing any other GRUB menu.lst file has no effect on the menu that is displayed when you boot the system. To determine the location of the active GRUB menu.lst file, use the bootadm command. The list-menu subcommand displays the location of the active GRUB menu. The following procedures determine the location of the GRUB menu's menu.lst file.

For more information about the bootadm command, see bootadm(1M) man page.

ProcedureLocating the GRUB Menu's menu.lst file

In the following procedure, the system contains two operating systems: Solaris and a Solaris Live Upgrade boot environment, second_disk. The Solaris OS has been booted and contains the GRUB menu.

  1. Become superuser or assume an equivalent role.

    Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.

  2. To locate the menu.lst file, type:


    # /sbin/bootadm list-menu
    

    The location and contents of the file are displayed.


    The location for the active GRUB menu is: /boot/grub/menu.lst
    default 0
    timeout 10
    0 Solaris
    1 Solaris failsafe
    2 second_disk
    3 second_disk failsafe

ProcedureLocating the GRUB Menu's menu.lst File When the active menu.lst file is in Another Boot Environment

In the following procedure, the system contains two operating systems: Solaris and a Solaris Live Upgrade boot environment, second_disk. In this example, the menu.lst file does not exist in the currently running boot environment. The second_disk boot environment has been booted. The Solaris boot environment contains the GRUB menu. The Solaris boot environment is not mounted.

  1. Become superuser or assume an equivalent role.

    Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.

  2. To locate the menu.lst file, type:


    # /sbin/bootadm list-menu
    

    The location and contents of the file are displayed.


    The location for the active GRUB menu is: /dev/dsk/device_name(not mounted)
    The filesystem type of the menu device is <ufs>
    default 0
    timeout 10
    0 Solaris
    1 Solaris failsafe
    2 second_disk
    3 second_disk failsafe
  3. Because the file system containing the menu.lst file is not mounted, mount the file system. Specify the UFS file system and the device name.


    # /usr/sbin/mount -F ufs /dev/dsk/device_name /mnt
    

    Where device_name specifies the location of the root (/) file system on the disk device of the boot environment that you want to mount. The device name is entered in the form of /dev/dsk/cwtxdysz. For example:


    # /usr/sbin/mount -F ufs /dev/dsk/c0t1d0s0 /mnt
    

    You can access the GRUB menu at /mnt/boot/grub/menu.lst

  4. Unmount the filesystem


    # /usr/sbin/umount /mnt
    

    Note –

    If you mount a boot environment or a file system of a boot environment, ensure that the file system or file systems are unmounted after use. If these file systems are not unmounted, future Solaris Live Upgrade operations on that boot environment might fail.


ProcedureLocating the GRUB Menu's menu.lst File When a Solaris Live Upgrade Boot Environment is Mounted

In the following procedure, the system contains two operating systems: Solaris and a Solaris Live Upgrade boot environment, second_disk. The second_disk boot environment has been booted. The Solaris boot environment contains the GRUB menu. The Solaris boot environment is mounted at /.alt.Solaris.

  1. Become superuser or assume an equivalent role.

    Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.

  2. To locate the menu.lst file, type:


    # /sbin/bootadm list-menu
    

    The location and contents of the file are displayed.


    The location for the active GRUB menu is:
    /.alt.Solaris/boot/grub/menu.lst
    default 0
    timeout 10
    0 Solaris
    1 Solaris failsafe
    2 second_disk
    3 second_disk failsafe

    Since the boot environment containing the GRUB menu is already mounted, then you can access the menu.lst file at /.alt.Solaris/boot/grub/menu.lst.

ProcedureLocating the GRUB Menu's menu.lst File When Your System Has an x86 Boot Partition

In the following procedure, the system contains two operating systems: Solaris and a Solaris Live Upgrade boot environment, second_disk. The second_disk boot environment has been booted. Your system has been upgraded and an x86 boot partition remains. The boot partition is mounted at /stubboot and contains the GRUB menu. For an explanation of x86 boot partitions, see Partitioning Recommendations in Solaris Express Installation Guide: Planning for Installation and Upgrade.

  1. Become superuser or assume an equivalent role.

    Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.

  2. To locate the menu.lst file, type:


    # /sbin/bootadm list-menu
    

    The location and contents of the file are displayed.


    The location for the active GRUB menu is:
    /stubboot/boot/grub/menu.lst
    default 0
    timeout 10
    0 Solaris
    1 Solaris failsafe
    2 second_disk
    3 second_disk failsafe

    You can access the menu.lst file at /stubboot/boot/grub/menu.lst.