https://github.com/google/ghost-kernel
위 커널 리포지터리로 커널을 받고 컴파일하여 부팅하면 ghost-api 쪽에서 아래와 같은 오류가 발생함
python2 버그 : bazel 최신버젼으로 소스코드를 다운받으면 안됨. 같은 이유로 바젤리스크도 사용 불가
bazel 5.x 버젼으로 진행해야 코드를 받을 수 있음. 이유는 코드 중 python2로 되어있는 코드가 있는데 bazel 최신버젼에선 python2 설치를 제한함.
그러므로 bazel 5.2.0로 진행하였음
libbpf 라이브러리의 bpf 헤더파일의 enum 참조 버그 - 미해결
SELinux 보안 버그 - 비활성화로 해결
디스크 용량 버그 → 디스크 용량 늘리고 파티션 나눠서 해결 → 해결 못함 그냥 60GB 가상 머신 만들어서 진행함
user-api 컴파일 명령어가 bazel build -c opt … 인데, -c opt가 readme에서 제시하는 최적화 옵션 명령어임. 근데 이 명령어를 쓰면 최적화 과정에서 오류가 계속 발생함. 그래서 bazel build … 로 빌드 방법을 바꾸었음.
mount 에러 : 스케줄링 실행하면 mountFS에서 버그가나 errno =2 를 반환하여 실행이 안됨. 이 경우 CONFIG_SCHED_CLASS_GHOST=y를 .config에 추가해줘서 커널 컴파일을 해야함.
initramfs 싱크 버그 → 명령어로 initramfs 재 설정
sudo update-initramfs -u -k all