일단 발단은 이렇습니다:
https://www.clien.net/service/board/cm_linux/18729057CLIEN
해당 글에 굇수님이 달아주신 댓글을 보고, 저도 LTS 커널을 설치했습니다. 이걸 fallback 커널로 설정하려고 챗GPT한테 어떻게 하는지 물어 보면서 했습니다.
일단 제 컴은 아치 계열 EndeavourOS이고, 부트로더가 systemd-boot인 것같습니다.
챗GPT놈이 알려주는 대로 설정은 했는데요. 그 과정에서,
sudo bootctl --path=/efi install
했더니,
Copied "/usr/lib/systemd/boot/efi/systemd-bootx64.efi" to "/efi/EFI/systemd/systemd-bootx64.efi".
Copied "/usr/lib/systemd/boot/efi/systemd-bootx64.efi" to "/efi/EFI/BOOT/BOOTX64.EFI".
⚠️ Mount point '/efi' which backs the random seed file is world accessible, which is a security hole! ⚠️
⚠️ Random seed file '/efi/loader/random-seed' is world accessible, which is a security hole! ⚠️
Random seed file /efi/loader/random-seed successfully refreshed (32 bytes).
Created EFI boot entry "Linux Boot Manager".
이런 경고 메시지가 뜨는 겁니다. 그래서 이거 괜찮냐고, 보안 문제 해결하려면 어떻게 하냐고 물었더니,
sudo chmod 755 /efi
sudo chmod 600 /efi/loader/random-seed
이렇게 하라더군요. 그런데 /efi는 원래부터 755이고, random-seed는 600으로 바꿔도 설정이 안 먹고 계속 755 상태입니다. 이후로 챗GPT는 바보가 돼서 아무 쓸모 없는 처방만 내려주고 있는데요.
이를테면:
lsattr /efi/loader/random-seed
lsattr: Operation not supported While reading flags on /efi/loader/random-seed
sudo umount /efi
umount: /efi: target is busy.
이러고 있습니다.
이거 어쩌면 좋나요?
https://forum.endeavouros.com/t/bootctl-install-outputs-some-warnings-about-efi-mount-point-and-random-seed-file-in-the-terminal/43991
이거대로 한 번 해보세요.
제 fstab 파일도 보면
UUID=D9CB-E39E /efi vfat fmask=0137,dmask=0027 0 2
이렇게 되어 있네요.
drwxr-x--- 3 root root 4096 5월 22일 15:38 .
drwxr-x--- 5 root root 4096 1970년 1월 1일 ..
drwxr-x--- 2 root root 4096 5월 22일 13:52 entries
-rw-r----- 1 root root 6 2023년 2월 20일 entries.srel
-rw-r----- 1 root root 98 5월 22일 14:12 loader.conf
-rw-r----- 1 root root 32 5월 22일 15:38 random-seed
저는 "sudo pacman -S linux-lts" 명령으로 커널을 설치하고 재부팅 했더니 lts커널이 추가되고 기본값으로 설정되어 있었습니다. (따로 뭘 해주는거 없이 자동으로 설치가 되었습니다)
- 말씀하신 것처럼 패키지 설정으로 거의 끝나는 작업이며 챗GPT가 알려준 것과 달리 bootctl 명령을 쓸 이유가 없음
- LTS 커널 설치하면 그게 부팅 기본값으로 되는데, 이건 내가 원하는 게 아니므로 loader.conf를 수정하기는 해야 함
- EndeavourOS 종특으로 random-seed 등의 파일 속성이 755로 되어 있으므로 결국 /etc/fstab 수정을 해줘야 보안 구멍을 메울 수 있음
그리고 부팅할때 선택한 커널을 default 로 유지하게끔 하는 옵션이(default @saved) 있는데, 설정해두면 편합니다.
제 loader.conf 파일 입니다.
#default 6326ebd722e44d4392c37679f68db11f*
default @saved
timeout 30
console-mode auto
reboot-for-bitlocker 1
감사합니다. loader.conf를 수정해야 하는데 제가 순간 착각했네요.
default @saved 옵션은 그러니까 한 번 LTS 커널로 부팅하면 다음부터는 그게 디폴트로 되고, 다시 최신 커널로 부팅하면 다음부터는 최신 커널이 디폴트가 되게끔 한다는 거죠?