Arch Linux에서 커널 업그레이드 지연

Arch Linux에서 커널 업그레이드 지연

Arch Linux에서는 pacman -Su커널 업그레이드(통과)를 적용할 때마다 문제가 발생합니다. 예를 들어 iptables다음은 더 이상 사용할 수 없습니다.

# iptables -L
iptables v1.4.21: can't initialize iptables table `filter': Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.

VMWare가 커널 헤더 파일을 찾을 수 없습니다:

여기에 이미지 설명을 입력하세요.

이제 커널 업그레이드를 적용하고 싶지만 시스템을 재부팅할 수 있을 때까지(또는 재부팅할 때까지 연기하고 싶습니다. Windows에 알림을 받으셨나요?) 그렇지 않고 VMWare나 다른 프로그램에 의해 작업이 차단되면 iptables재부팅하고 세션을 다시 빌드하는 수밖에 없습니다.

어떻게 해야 하나요? 이상적으로는 계속 사용하고 싶지만 pacman -Su특정 업그레이드는 연기하는 것이 좋습니다.

나는 믿는다커널 업그레이드 후 USB를 마운트하기 전에 재부팅해야 하는 것이 정상인가요?같은 문제로 인해 발생합니다.

답변1

pacman특정 패키지에 대한 등급 상향/하향을 방지하려면 여기에 한 줄을 추가하세요 /etc/pacman.conf.

# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
#IgnorePkg   =
#IgnoreGroup =

나는 당신이 다음과 같은 줄을 원한다고 생각합니다 pacman.conf:

IgnorePkg = linux linux-headers linux-api-headers 

지적했듯이 이는 pacman업그레이드를 방지합니다. 아마도 다음과 같은 코드를 작성할 수 있을 것입니다.

if pacman -Qu | egrep -q -s 'linux|linux-headers|linux-api-headers'
then
    pacman -S --noconfirm linux
    pacman -S --noconfirm linux-headers
    pacman -S --noconfirm linux-api-headers
fi

"라고 써야 할 것 같습니다.시스템 단위 파일" - 이 부분은 제가 어떻게 해야 하는지 자신있게 말씀드릴 수 있는 범위를 조금 벗어났습니다. 내 생각은 Before=shutdown.target종료 시 실행되는 유닛 파일에 한 줄을 두는 것이었습니다. 제가 작성한 유일한 유닛 파일은 가져오는데 몇 번 시도해야 했습니다. 그렇군요, 그러니까 내 조언은 별로 필요 없을 것 같아요.

답변2

커널 업그레이드를 건너뛰려면 다음을 실행하세요.

pacman -Syu --ignore linux,linux-headers,linux-api-headers

이를 통해 모든 것을 업그레이드할 수 있습니다.와는 별개로핵심

답변3

linux-api-headers동기 부여 때문에 이 패키지를 무시해서는 안 된다고 생각합니다 .

커널을 업그레이드하거나 커널 업그레이드를 무시하지 말고, 시스템을 손상시키는 패키지를 업그레이드하지 마십시오(별도로 업그레이드하고 커널이 업그레이드되지 않은 경우).

이것 좀 봐답변Arch 위키 포럼에서.

내가 뭘 한거지 IgnorePkg = linux linux-headers virtualbox-host-modules-arch

virtualbox-host-modules-archpkg는 VirtualBox가 설치된 경우에만 무시됩니다. pkg 도 마찬가지입니다 linux-headers. 이미 설치해 두었기 때문에 이렇게 했습니다.

관련 정보