/etc/grub.d/09_lowlatency и /etc/grub.d/10_linux двойной список ядра

/etc/grub.d/09_lowlatency и /etc/grub.d/10_linux двойной список ядра

В свежей версии ubuntu-studio 14.04 устанавливаем sudo apt-get install linux-generic.

Затем grub-mkconfig выдаст вам такое меню

Ubuntu (низкая задержка)
Убунту
Расширенные возможности Ubuntu

Быстрый взгляд с помощью клавиши «e» покажет, что и Ubuntu (lowlatency), и Ubuntu указывают на

линукс /boot/vmlinuz-3.13.0-24-lowlatency

Обойти эту проблему можно, выбрав нужное ядро ​​в меню «Дополнительные параметры для Ubuntu».

Как можно исправить /etc/grub.d/09_lowlatency и /etc/grub.d/10_linux, чтобы они не выбирали одно и то же ядро ​​по умолчанию?

Соответствующий пункт меню в /boot/grub/grub.cfgот/etc/grub.d/09_lowlatency

menuentry 'Ubuntu (lowlatency)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-0f6e1051-cf9f-4299-b691-76d0d8c532d1' {
recordfail
        load_video
        gfxmode $linux_gfx_mode
        insmod gzio
        insmod part_msdos
        insmod ext2
        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  0f6e1051-cf9f-4299-b691-76d0d8c532d1
        else
          search --no-floppy --fs-uuid --set=root 0f6e1051-cf9f-4299-b691-76d0d8c532d1
        fi
        linux   /boot/vmlinuz-3.13.0-24-lowlatency root=UUID=0f6e1051-cf9f-4299-b691-76d0d8c532d1 ro   quiet splash $vt_handoff
        initrd  /boot/initrd.img-3.13.0-24-lowlatency
}

И запись в меню /boot/grub/grub.cfgиз/etc/grub.d/10_linux

menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-0f6e1051-cf9f-4299-b691-76d0d8c532d1' {
        recordfail
        load_video
        gfxmode $linux_gfx_mode
        insmod gzio
        insmod part_msdos
        insmod ext2
        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  0f6e1051-cf9f-4299-b691-76d0d8c532d1
        else
          search --no-floppy --fs-uuid --set=root 0f6e1051-cf9f-4299-b691-76d0d8c532d1
        fi
        linux   /boot/vmlinuz-3.13.0-24-lowlatency root=UUID=0f6e1051-cf9f-4299-b691-76d0d8c532d1 ro  quiet splash $vt_handoff
        initrd  /boot/initrd.img-3.13.0-24-lowlatency
}

Да, уверяю вас, у меня установлено нормальное ядро:

$ ls -l /vmlinuz*
lrwxrwxrwx 1 root root 30 May  5 20:37 /vmlinuz -> boot/vmlinuz-3.13.0-24-generic
lrwxrwxrwx 1 root root 33 May  2 20:25 /vmlinuz.old -> boot/vmlinuz-3.13.0-24-lowlatency

решение1

  1. Открыто /etc/grub.d/10_linuxдля редактирования

  2. Найдите цикл списка ядер:

    machine=`uname -m`
    case "x$machine" in
        xi?86 | xx86_64)
            list=`for i in /boot/vmlinuz-* /vmlinuz-* /boot/kernel-* ; do
                      if grub_file_is_not_garbage "$i" ; then echo -n "$i " ; fi
                  done` ;;
        *)
            list=`for i in /boot/vmlinuz-* /boot/vmlinux-* /vmlinuz-* /vmlinux-* /boot/kernel-* ; do
                      if grub_file_is_not_garbage "$i" ; then echo -n "$i " ; fi
                 done` ;;
    esac
    
  3. Добавить ifпункт для пропуска lowlatencyядер

    machine=`uname -m`
    case "x$machine" in
        xi?86 | xx86_64)
            list=`for i in /boot/vmlinuz-* /vmlinuz-* /boot/kernel-* ; do
                      if [ -z "${i##*lowlatency}" ] ; then continue ; fi
                      if grub_file_is_not_garbage "$i" ; then echo -n "$i " ; fi
                  done` ;;
        *)
            list=`for i in /boot/vmlinuz-* /boot/vmlinux-* /vmlinuz-* /vmlinux-* /boot/kernel-* ; do
                      if [ -z "${i##*lowlatency}" ] ; then continue ; fi
                      if grub_file_is_not_garbage "$i" ; then echo -n "$i " ; fi
                 done` ;;
    esac
    
  4. Обновить список Grub

    sudo update-grub2
    

решение2

В записи из "/etc/grub.d/10_linux" есть следующие строки.

 linux   /boot/vmlinuz-3.13.0-24-lowlatency root=UUID=0f6e1051-cf9f-4299-b691-76d0d8c532d1 ro  quiet splash $vt_handoff
    initrd  /boot/initrd.img-3.13.0-24-lowlatency

Я считаю, что если вы измените оба случая "lowlatency", как они читаются в этих строках, на "generic", вы можете решить проблему. Если сможете, сообщите о результатах. Я не видел такого случая раньше.

Связанный контент