젠투 커널 업그레이드 명령 순서

젠투 커널 업그레이드 명령 순서

커널을 업데이트하는 간단한 bash 스크립트가 있습니다. 여기에는 커널 빌드, 외부 모듈 재구축, initramfs 빌드 genkernel및 grub 구성 업데이트가 포함됩니다. 다음은 스크립트입니다.

#!/bin/bash

set -x
set -e

cd linux

# mount boot if not mounded
mount | grep "/boot type vfat" > /dev/null || mount /boot

# build the kernel
make -j16

# install modules
make modules_install

# prepare modules (for @module-rebuild)
make modules_prepare

# rebuild external modules (nvidia, etc)
emerge --ask=n @module-rebuild

# install kernel
make install

# build initramfs
genkernel --lvm --luks --install initramfs

# make grub config
grub-mkconfig > /boot/grub/grub.cfg

# umount boot
umount /boot

이 스크립트는 한 가지 예외를 제외하고 잘 작동합니다. 항상 두 번 호출해야 하고 시작 시 오류가 발생하지 않으면(initramfs를 로드할 수 없음) 스크립트의 일부 단계가 잘못된 순서로 되어 있다고 생각하지만 그렇게 할 수는 없습니다. 정확한 단계가 무엇인지 알 수 없습니다. 공식 문서에는 재구축을 위해 initramfs를 사용하는 내용이 포함되어 있지 않습니다.https://wiki.gentoo.org/wiki/Kernel/Upgrade

내 스크립트에 무슨 문제가 있나요? 이 문제를 해결하려면 어떻게 업데이트해야 하나요?

답변1

makemodules_install과 makemodules_prepare를 전환해야 할 것 같습니다.

먼저 모듈을 준비한 후 설치하세요.

관련 정보