그래서 저는 자체 Linux 배포판을 구축하고 sudo를 포함하여 많은 것을 설정했습니다. shroot 환경에서 작업하면 sudo가 잘 작동합니다. 문제는 실제로 배포판으로 부팅할 때입니다. 처음에 /usr/bin/sudo 실행 파일에는 setuid 권한만 필요하다는 것을 알았을 때 "글쎄, 고치기 쉽다"고 생각하고 계속 진행했습니다 chmod s+u /usr/bin/sudo
.
실행 파일의 권한을 확인하면 ls -l
setuid 권한이 있음이 쉽게 표시됩니다. 처음 chroot를 종료하고 확인했을 때 실행 파일에 steuid 권한이 없어서 다시 설정했습니다. 이제 chroot 내부와 외부 모두에 setuid 권한이 표시됩니다. 운영 체제를 부팅하려고 할 때 문제가 발생합니다. OS는 정상적으로 부팅되지만 불행하게도 어떤 이유로 sudo 실행 파일에 setuid 권한이 없습니다. ISO를 생성하는 데 사용한 grub-mkrescue와 관련이 있다고 생각합니다. ISO를 빌드하기 전에 파일을 임시 디렉터리에 복사하는 과정에서 grub-mkrescue가 권한을 잃었을 수 있다고 생각하기 때문입니다. 나는 grub 모듈에 별로 관심이 없습니다. 필요한 경우 수동으로 복사할 수 있는 쉬운 방법이 있습니다. 따라서 작동하는 솔루션이 모듈에 대한 액세스를 잃는 것을 의미하더라도 상관 없습니다. ISO 이미지 먼저 파일을 임시 디렉터리에 복사하지 않고, 아, 솔루션을 사용하려면 ISO를 Grub으로 패키징해야 합니다. 다른 부트로더가 있다는 것을 알고 있으므로 제가 사용할 수 있는 다른 부트로더에 대한 제안을 환영합니다.