Jak mogę dodać nową pozycję rozruchową systemu operacyjnego do menu GRUB2?


17

Jestem całkiem nowy w Linuksie, ale w ciągu ostatnich kilku dni postanowiłem spróbować. Próbuję kilku różnych dystrybucji, żeby poszukać różnych wersji, i to jest jedyna rzecz, która naprawdę mnie rozłączyła.

Zacząłem od systemu Windows 7, następnie zainstalowałem Ubuntu 13.10 (który działa doskonale), a następnie zainstalowałem Linux Mint. Nie mam jednak sposobu na uruchomienie Linux Mint i właśnie to chciałbym osiągnąć. Moim celem jest, aby pozycja menu Linux Mint w menu Grub2, która pojawia się podczas uruchamiania, była zgodna z pozycjami menu Ubuntu i Windows 7 (oraz kilkoma innymi, których muszę jeszcze używać, np. Podmenu Zaawansowane opcje Ubuntu oraz pozycja menu memtest).


W przypadku, gdy potrzebna jest jakakolwiek z tych informacji, oto niektóre informacje z tablicy partycji GParted, a także części danych bootinfoscriptwyjściowych:

Informacje o partycjach i opisy zaczerpnięte z GParted:

  1. /dev/sda1 to partycja podstawowa MiB 101.94 z systemem plików fat16 z flagą „diag”
  2. /dev/sda2to partycja podstawowa GiB 11,29 z systemem plików NTFS z flagą „boot” i etykietą „RECOVERY”. Według /boot/grub/grub.cfgtego miejsca rezyduje moduł ładujący Windows 7. Nie mam problemów z uruchamianiem do systemu Windows 7 z bieżącego menu Grub2.
  3. /dev/sda3to partycja podstawowa GiB 275.12 z systemem plików NTFS z etykietą „OS”. Ta partycja przechowuje wszystkie moje pliki, które zostały pierwotnie utworzone w systemie Windows, choć niektóre zostały zapisane za pomocą programów Ubuntu (jak dotąd nic nie poszło źle podczas edycji plików w różnych systemach operacyjnych, ale daj mi znać, jeśli jest to złe z jakiegokolwiek powodu).
  4. /dev/sda4jest rozszerzoną partycją 171.01 GiB. Ta partycja jest obecnie zamontowana. Zawiera partycję wymiany oprócz partycji logicznych dla Ubuntu 13.10 i Linux Mint 16:
    • /dev/sda5jest partycją logiczną GiB 58,79 z systemem plików ext4, która zawiera instalację Linux Mint 16. W GParted napisano, że punktem montowania dla tego systemu plików jest /. Jest to jedyna partycja, która ma niepustą pozycję punktu montowania. Nie wiem, co z tym zrobić, a także obecnie nie znam sposobu na uruchomienie Linuksa Mint 16 w jego obecnej postaci.
    • /dev/sda6to partycja 19,56 GiB (uważam, że jest uważana za podstawową?) z systemem plików „linux-swap”. Zostało to utworzone automatycznie podczas instalacji Ubuntu, ale zwiększyłem jego rozmiar ręcznie o około 10 GB, gdy miałem kilka problemów z instalacją Linux Mint 16. Linux Mint 16 jest obecnie pomyślnie zainstalowany, o ile wiem, ale nie nie wiem jak to zrobić, jak powiedziałem wcześniej. Ta partycja jest obecnie zamontowana.
    • /dev/sda7to partycja logiczna GiB 36.41 z systemem plików ext4, która zawiera Ubuntu 13.10. Ubuntu 13.10 działa całkiem dobrze i na tym właśnie piszę to pytanie. Ta partycja jest obecnie zamontowana.

Oto bootinfoscriptwynik (jest dość długi i zawiera grub.cfgplik oraz sudo fdisk -linformacje już tu opublikowane - niektóre musiały zostać pominięte z powodu ograniczeń znaków):

                  Boot Info Script 0.61      [1 April 2012]


============================= Boot Info Summary: ===============================

 => Grub2 (v1.99) is installed in the MBR of /dev/sda and looks at sector 1 of 
    the same hard drive for core.img. core.img is at this location and looks 
    in partition 94 for .
 => Syslinux MBR (4.04 and higher) is installed in the MBR of /dev/sdb.

sda1: __________________________________________________________________________

    File system:       vfat
    Boot sector type:  Dell Utility: FAT16
    Boot sector info:  No errors found in the Boot Parameter Block.
    Operating System:  
    Boot files:        /DELLBIO.BIN /DELLRMK.BIN /COMMAND.COM

sda2: __________________________________________________________________________

    File system:       ntfs
    Boot sector type:  Windows Vista/7: NTFS
    Boot sector info:  No errors found in the Boot Parameter Block.
    Operating System:  
    Boot files:        /bootmgr /Boot/BCD

sda3: __________________________________________________________________________

    File system:       ntfs
    Boot sector type:  Windows Vista/7: NTFS
    Boot sector info:  No errors found in the Boot Parameter Block.
    Operating System:  Windows 7
    Boot files:        /Windows/System32/winload.exe /ubuntu/winboot/wubildr 
                       /ubuntu/winboot/wubildr.mbr

sda4: __________________________________________________________________________

    File system:       Extended Partition
    Boot sector type:  -
    Boot sector info: 

sda5: __________________________________________________________________________

    File system:       ext4
    Boot sector type:  -
    Boot sector info: 
    Operating System:  Ubuntu 13.10
    Boot files:        /boot/grub/grub.cfg /etc/fstab

sda6: __________________________________________________________________________

    File system:       swap
    Boot sector type:  -
    Boot sector info: 

sda7: __________________________________________________________________________

    File system:       ext4
    Boot sector type:  Grub2 (v1.99)
    Boot sector info:  Grub2 (v1.99) is installed in the boot sector of sda7 
                       and looks at sector 648107560 of the same hard drive 
                       for core.img. core.img is at this location and looks 
                       in partition 94 for .
    Operating System:  Linux Mint 16 Petra
    Boot files:        /boot/grub/grub.cfg /etc/fstab


============================ Drive/Partition Info: =============================

Drive: sda _____________________________________________________________________

Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders, total 976773168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes

Partition  Boot  Start Sector    End Sector  # of Sectors  Id System

/dev/sda1                  63       208,844       208,782  de Dell Utility
/dev/sda2    *        212,992    41,172,991    40,960,000   7 NTFS / exFAT / HPFS
/dev/sda3          41,172,992   618,134,175   576,961,184   7 NTFS / exFAT / HPFS
/dev/sda4         618,139,646   976,771,071   358,631,426   5 Extended
/dev/sda5         694,501,376   817,790,975   123,289,600  83 Linux
/dev/sda6         935,753,728   976,771,071    41,017,344  82 Linux swap / Solaris
/dev/sda7         618,139,648   694,499,022    76,359,375  83 Linux

"blkid" output: ________________________________________________________________

Device           UUID                                   TYPE       LABEL

/dev/sda1        3030-3030                              vfat       DellUtility
/dev/sda2        76C2AD13C2ACD89F                       ntfs       RECOVERY
/dev/sda3        B864AE8864AE4948                       ntfs       OS
/dev/sda5        5832ede3-f357-427e-ac67-b2157b5ba6e1   ext4       
/dev/sda6        24a1b8d2-d3a0-4b3f-b48e-9a3f5bab16c2   swap       
/dev/sda7        520dfeb8-758e-47c0-97de-a0a8cb8b4866   ext4

================================ Mount points: =================================

Device           Mount_Point              Type       Options

/dev/sda3        /media/matt/OS           fuseblk    (rw,nosuid,nodev,allow_other,default_permissions,blksize=4096)
/dev/sda5        /                        ext4       (rw,errors=remount-ro)
/dev/sda7        /media/matt/520dfeb8-758e-47c0-97de-a0a8cb8b4866 ext4       (rw,nosuid,nodev,uhelper=udisks2)


=========================== sda5/boot/grub/grub.cfg: ===========================
Bootinfoscript
--------------------------------------------------------------------------------
#
# DO NOT EDIT THIS FILE
#

### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
  set have_grubenv=true
  load_env
fi
set default="0"

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,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  5832ede3-f357-427e-ac67-b2157b5ba6e1
else
  search --no-floppy --fs-uuid --set=root 5832ede3-f357-427e-ac67-b2157b5ba6e1
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
  set timeout=10
fi
### END /etc/grub.d/00_header ###

/\/\/\/\/\ EDITED OUT MORE THEME INFO /\/\/\/\/\/\

### 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 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-5832ede3-f357-427e-ac67-b2157b5ba6e1' {
recordfail
    load_video
    gfxmode $linux_gfx_mode
    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  5832ede3-f357-427e-ac67-b2157b5ba6e1
    else
      search --no-floppy --fs-uuid --set=root 5832ede3-f357-427e-ac67-b2157b5ba6e1
    fi
    linux   /boot/vmlinuz-3.11.0-15-generic root=UUID=5832ede3-f357-427e-ac67-b2157b5ba6e1 ro   acpi_backlight=vendor dell_laptop.backlight=0 quiet splash $vt_handoff
    initrd  /boot/initrd.img-3.11.0-15-generic
}

/\/\/\/\/\/\/\/ I MANUALLY OMITTED THE UBUNTU ADVANCED OPTIONS SUBMENU FROM HERE BECAUSE THERE Was >30000 CHARACTERS /\/\/\/\/\/\/

--class gnu --class os $menuentry_id_option 'gnulinux-3.8.0-35-generic-advanced-5832ede3-f357-427e-ac67-b2157b5ba6e1' {
    recordfail
        load_video
        gfxmode $linux_gfx_mode
        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  5832ede3-f357-427e-ac67-b2157b5ba6e1
        else
          search --no-floppy --fs-uuid --set=root 5832ede3-f357-427e-ac67-b2157b5ba6e1
        fi
        echo    'Loading Linux 3.8.0-35-generic ...'
        linux   /boot/vmlinuz-3.8.0-35-generic root=UUID=5832ede3-f357-427e-ac67-b2157b5ba6e1 ro   acpi_backlight=vendor dell_laptop.backlight=0 quiet splash $vt_handoff
        echo    'Loading initial ramdisk ...'
        initrd  /boot/initrd.img-3.8.0-35-generic
    }
    menuentry 'Ubuntu, with Linux 3.8.0-35-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.8.0-35-generic-recovery-5832ede3-f357-427e-ac67-b2157b5ba6e1' {
    recordfail
        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  5832ede3-f357-427e-ac67-b2157b5ba6e1
        else
          search --no-floppy --fs-uuid --set=root 5832ede3-f357-427e-ac67-b2157b5ba6e1
        fi
        echo    'Loading Linux 3.8.0-35-generic ...'
        linux   /boot/vmlinuz-3.8.0-35-generic root=UUID=5832ede3-f357-427e-ac67-b2157b5ba6e1 ro recovery nomodeset 
        echo    'Loading initial ramdisk ...'
        initrd  /boot/initrd.img-3.8.0-35-generic
    }
    menuentry 'Ubuntu, with Linux 3.8.0-19-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.8.0-19-generic-advanced-5832ede3-f357-427e-ac67-b2157b5ba6e1' {
    recordfail
        load_video
        gfxmode $linux_gfx_mode
        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  5832ede3-f357-427e-ac67-b2157b5ba6e1
        else
          search --no-floppy --fs-uuid --set=root 5832ede3-f357-427e-ac67-b2157b5ba6e1
        fi
        echo    'Loading Linux 3.8.0-19-generic ...'
        linux   /boot/vmlinuz-3.8.0-19-generic root=UUID=5832ede3-f357-427e-ac67-b2157b5ba6e1 ro   acpi_backlight=vendor dell_laptop.backlight=0 quiet splash $vt_handoff
        echo    'Loading initial ramdisk ...'
        initrd  /boot/initrd.img-3.8.0-19-generic
    }
    menuentry 'Ubuntu, with Linux 3.8.0-19-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.8.0-19-generic-recovery-5832ede3-f357-427e-ac67-b2157b5ba6e1' {
    recordfail
        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  5832ede3-f357-427e-ac67-b2157b5ba6e1
        else
          search --no-floppy --fs-uuid --set=root 5832ede3-f357-427e-ac67-b2157b5ba6e1
        fi
        echo    'Loading Linux 3.8.0-19-generic ...'
        linux   /boot/vmlinuz-3.8.0-19-generic root=UUID=5832ede3-f357-427e-ac67-b2157b5ba6e1 ro recovery nomodeset 
        echo    'Loading initial ramdisk ...'
        initrd  /boot/initrd.img-3.8.0-19-generic
    }
}

### 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  5832ede3-f357-427e-ac67-b2157b5ba6e1
else
  search --no-floppy --fs-uuid --set=root 5832ede3-f357-427e-ac67-b2157b5ba6e1
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  5832ede3-f357-427e-ac67-b2157b5ba6e1
else
  search --no-floppy --fs-uuid --set=root 5832ede3-f357-427e-ac67-b2157b5ba6e1
fi
linux16 /boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Windows 7 (loader) (on /dev/sda2)' --class windows --class os $menuentry_id_option 'osprober-chain-76C2AD13C2ACD89F' {
    insmod part_msdos
    insmod ntfs
    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  76C2AD13C2ACD89F
    else
      search --no-floppy --fs-uuid --set=root 76C2AD13C2ACD89F
    fi
    chainloader +1
}
### 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 ###
--------------------------------------------------------------------------------

=============================== sda5/etc/fstab: ================================

--------------------------------------------------------------------------------
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sdb5 during installation
UUID=5832ede3-f357-427e-ac67-b2157b5ba6e1 /               ext4    errors=remount-ro 0     1
# swap was on /dev/sdb6 during installation
UUID=24a1b8d2-d3a0-4b3f-b48e-9a3f5bab16c2 none            swap    sw              0       0
--------------------------------------------------------------------------------


=========================== sda7/boot/grub/grub.cfg: ===========================

--------------------------------------------------------------------------------
#
# 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
set default="0"

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,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  520dfeb8-758e-47c0-97de-a0a8cb8b4866
else
  search --no-floppy --fs-uuid --set=root 520dfeb8-758e-47c0-97de-a0a8cb8b4866
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
  set timeout=10
fi
### END /etc/grub.d/00_header ###

/\/\/\/\/\/\/ EDITED OUT SOME DEBIAN/MINT THEME INFO HERE /\/\/\/\/\/\/\

### 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
if [ "$linux_gfx_mode" != "text" ]; then load_video; fi
menuentry 'Linux Mint 16 Cinnamon 64-bit, 3.11.0-12-generic (/dev/sda7)' --class ubuntu --class gnu-linux --class gnu --class os {
    recordfail
    gfxmode $linux_gfx_mode
    insmod gzio
    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  520dfeb8-758e-47c0-97de-a0a8cb8b4866
    else
      search --no-floppy --fs-uuid --set=root 520dfeb8-758e-47c0-97de-a0a8cb8b4866
    fi
    linux   /boot/vmlinuz-3.11.0-12-generic root=UUID=520dfeb8-758e-47c0-97de-a0a8cb8b4866 ro   quiet splash $vt_handoff
    initrd  /boot/initrd.img-3.11.0-12-generic
}
menuentry 'Linux Mint 16 Cinnamon 64-bit, 3.11.0-12-generic (/dev/sda7) -- recovery mode' --class ubuntu --class gnu-linux --class gnu --class os {
    recordfail
    insmod gzio
    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  520dfeb8-758e-47c0-97de-a0a8cb8b4866
    else
      search --no-floppy --fs-uuid --set=root 520dfeb8-758e-47c0-97de-a0a8cb8b4866
    fi
    echo    'Loading Linux 3.11.0-12-generic ...'
    linux   /boot/vmlinuz-3.11.0-12-generic root=UUID=520dfeb8-758e-47c0-97de-a0a8cb8b4866 ro recovery nomodeset 
    echo    'Loading initial ramdisk ...'
    initrd  /boot/initrd.img-3.11.0-12-generic
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/10_lupin ###
### END /etc/grub.d/10_lupin ###

### 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,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  520dfeb8-758e-47c0-97de-a0a8cb8b4866
    else
      search --no-floppy --fs-uuid --set=root 520dfeb8-758e-47c0-97de-a0a8cb8b4866
    fi
    linux16 /boot/memtest86+.bin
}
menuentry 'Memory test (memtest86+, serial console 115200)' {
    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  520dfeb8-758e-47c0-97de-a0a8cb8b4866
    else
      search --no-floppy --fs-uuid --set=root 520dfeb8-758e-47c0-97de-a0a8cb8b4866
    fi
    linux16 /boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Windows 7 (loader) (on /dev/sda2)' --class windows --class os     $menuentry_id_option 'osprober-chain-76C2AD13C2ACD89F' {
    insmod part_msdos
    insmod ntfs
    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  76C2AD13C2ACD89F
    else
      search --no-floppy --fs-uuid --set=root 76C2AD13C2ACD89F
    fi
    chainloader +1
}
menuentry 'Ubuntu 13.10 (13.10)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-5832ede3-f357-427e-ac67-b2157b5ba6e1' {
    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  5832ede3-f357-427e-ac67-b2157b5ba6e1
    else
      search --no-floppy --fs-uuid --set=root 5832ede3-f357-427e-ac67-b2157b5ba6e1
    fi
    linux /boot/vmlinuz-3.11.0-15-generic root=UUID=5832ede3-f357-427e-ac67-b2157b5ba6e1 ro acpi_backlight=vendor dell_laptop.backlight=0 quiet splash $vt_handoff
    initrd /boot/initrd.img-3.11.0-15-generic
}

/\/\/\/\/\/\/ THERE WAS ANOTHER SUBMENU THING FOR UBUNTU ADVANCED OPTIONS HERE, ALSO OMITTED /\/\/\/\/\/\/\/\

### 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 ###
--------------------------------------------------------------------------------

=============================== sda7/etc/fstab: ================================

--------------------------------------------------------------------------------
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sda7 during installation
UUID=520dfeb8-758e-47c0-97de-a0a8cb8b4866 /               ext4    errors=remount-ro 0       1
# swap was on /dev/sda6 during installation
UUID=24a1b8d2-d3a0-4b3f-b48e-9a3f5bab16c2 none            swap    sw              0       0
--------------------------------------------------------------------------------

Nie jestem pewien, czy ta konfiguracja partycji jest dobra, czy nie, ponieważ nie byłem w stanie utworzyć dodatkowej partycji podstawowej (maksymalnie 4), ale pomyślałem, że ponieważ Ubuntu może uruchomić się z partycji rozszerzonej, Linux Mint powinien również móc , więc dodałem Linux Mint do partycji na tej samej partycji rozszerzonej co Ubuntu (która jest w /dev/sda5), ale na własnej partycji logicznej /dev/sda7.

W /boot/grub/grub.cfgpliku znajduje się kilka menuentryjednostek. Jeśli właściwym sposobem na uruchomienie Linux Mint z menu Grub2 jest po prostu dodanie bloku menu dla Linux Mint, to chciałbym wiedzieć, jak to zrobić. Jeśli istnieje lepszy sposób, aby każdy z tych systemów operacyjnych miał opcję uruchamiania przy starcie, daj mi również znać!

Widziałem tutaj nieco podobne pytanie , ale wydawało się to nieco inne, ponieważ ten użytkownik nie miał dwóch partycji systemu operacyjnego zawartych w tej samej partycji rozszerzonej i nie chciałem po prostu strzelać w ciemności i być może złamać coś ważnego przez przypadek.

Jeśli potrzebuję więcej informacji, których tutaj nie podałem, będę uważnie to obserwował, więc daj mi znać od razu, a ja dołożę wszelkich starań, aby zapewnić Ci wszelkie potrzebne informacje.

Dziękuję bardzo za wszelką pomoc!


Coś, co właśnie zauważyłem - Mint ma swój własny plik grub.cfg, a zarówno Mint, jak i Ubuntu są pokazane tutaj w danych wyjściowych bootinfoscript. Czy byłoby tak proste, jak odrobina starannego kopiowania i wklejania niektórych linii menu i innych funkcji, aby wszystko działało?
Matt Beardsley,

Odpowiedzi:


20

Możesz spróbować update-grubsprawdzić, czy to wykryje Linux Mint. To powinno sprawdzić, jakie systemy operacyjne są zainstalowane.

Alternatywnie możesz spróbować uruchomić się z Live USB (lub LiveCD) i uruchomić grub-install /dev/sdaz zamontowanym dyskiem twardym. Spowoduje to ponowną instalację GRUB-a i powinno ponownie sprawdzić inne systemy operacyjne.


To było o wiele łatwiejsze, niż się spodziewałem, a z ograniczonej liczby poleceń, których do tej pory użyłem, wchodząc do Linuksa, tego już użyłem ... Ale niezależnie od tego, aktualizacja-grub działała! Dzięki!!
Matt Beardsley,

Top! Polecenie sudo update-grupdziałało sprawnie. Dzięki. Tylko uwaga; alternatywna opcja Sil musi być wykonana na dysku rozruchowym, co nie jest automatycznie /dev/sda- w moim przypadku jest /dev/sdb;)
loved.by.Jesus
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.