Arch Linux 시스템을 수리하고 업그레이드하려고 합니다. 원래 설치보다 최신 버전인 Live USB에서 부팅했습니다. 그런 다음 sda를 마운트하고 해당 마운트 지점으로 루트를 지정했습니다. 실행하면 mkinitcpio -p linux
제목에서 오류가 발생합니다.
'/lib/modules/4.9.8-1-ARCH' is not a valid kernel module directory
lib/modules/
4.13.3-1-ARCH가 있습니다. mkinitcpio
이 디렉토리를 사용하려면 어떻게 해야 합니까 ?
답변1
/boot
문제는 전체 시스템(Linux 커널 포함)을 업그레이드할 때 부팅 파티션을 마운트하는 것을 잊어버렸다는 것입니다. pacman
PGP 키와 관련된 몇 가지 문제를 처리한 후 마침내 PGP 키를 실행 pacman -S filesystem linux
하고 하드 드라이브를 부팅할 수 있게 되었습니다. (이 문제를 해결해야 할지 잘 모르겠지만 filesystem
다른 출처에서 인용되었습니다.)
답변2
참고로 저도 비슷한 문제가 있어서 pacman -S linux
파일 시스템이 필요하지 않다고 생각합니다.
답변3
나는 같은 문제가 있었고 다시 설치해도 pacman -S linux
도움이되지 않았습니다. 실제로, linux-aarch64
먼저 업데이트할 때 오류가 나타납니다. 왜냐하면 이것이 트리거되기 때문입니다 mkinitcpio
!
내 문제는 /etc/mkinitcpio.d/linux-aarch64.preset
업데이트가 이를 대체하지 않고 .pacnew
파일을 설치했다는 것입니다. 따라서 사전 설정은 여전히 이전 모듈 디렉터리를 가리킵니다. 새 사전 설정을 제자리로 이동하면 문제가 해결되었습니다.
# mv /etc/mkinitcpio.d/linux-aarch64.preset{.pacnew,}
# pacman -S linux-aarch64