2

Всякий раз, когда Yum обновляет ядро, в /boot появляется новый набор файлов (vmlinuz * initramfs *), и конфигурация Grub обновляется, чтобы напрямую указывать на эти новые файлы.

Где настройка, которая заставит Yum всегда создавать / обновлять символические ссылки на новые файлы после такого обновления?

vmlinuz-3.12.6-300.fc20.x86_64 # ЕСТЬ
vmlinuz -> /boot/vmlinuz-3.12.6-300.fc20.x86_64 # ХОЧУ
initramfs-3.12.6-300.fc20.x86_64.img # HAVE
initramfs -> /boot/initramfs-3.12.6-300.fc20.x86_64.img # ХОЧУ

Обоснование:

  • На компьютере с двумя установленными операционными системами может быть один главный Grub с одной записью для каждой системы. Запись Fedora будет указывать на символические ссылки, потому что я не изменяю файл конфигурации вручную, когда Fedora устанавливает новое ядро.
  • В двух случаях установщику Fedora 20 не удалось установить Grub (и произошел сбой). Поэтому, когда это происходит, я устанавливаю выделенный Grub (не смонтированный в установке Fedora) и имею ту же проблему.

1 ответ1

1

Вы можете поместить скрипт в /etc/kernel/postinst.d/ как показано ниже:

#!/bin/bash

KERNEL_VERSION="$1"
KERNEL_IMAGE="$2"

ln -sf $KERNEL_IMAGE /boot/vmlinuz
ln -sf /boot/initramfs-$KERNEL_VERSION.img /boot/initramfs.img

Вы можете также захотеть поместить скрипт в /etc/kernel/prerm.d/ который обрабатывает удаление ядра, что будет более сложным. Сценарий должен определить, является ли удаляемое ядро символической ссылкой, и определить, какое ядро обновить символическую ссылку.

Сценарии в этих каталогах вызываются командой new-kernel-pkg , которая вызывается программой kernel-install в сценарии пост-транзакции RPM ядра.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .