Linux 시스템을 부팅하는 데 문제가 있습니다. 부트로더는 커널과 initrd를 성공적으로 로드하지만 initrd 스크립트는 루트 장치를 찾을 수 없다고 불평합니다.
내가 어떻게 할힘initrd 스크립트쉘 프롬프트를 보여주세요그래서 실제로 할 수 있어요조사어떻게 되어가나요?
initrd의 압축을 풀고 /init
쉘 스크립트를 시작해 보았습니다 bash -i
. 하지만 이것은 전혀 작동하지 않습니다. Bash 프롬프트가 나타나는데 키보드가 작동하지 않습니다. (Bash는 "진행 그룹을 설정할 수 없습니다" 및 "장치에 부적절한 ioctl"에 대해 불평합니다.)
중요한 경우: 이전 mkinitrd
시스템을 사용하는 OpenSUSE 13.1. (분명히 최신 버전에서는 Dracut을 사용합니다.) 제가 알 수 있는 한 이것은 (번호가 매겨진 일련의 Bash 스크립트)에서 모든 작업을 /init
수행하는 작은 스크립트입니다 ./boot
커널 명령줄을 전달하면 쉘 프롬프트가 표시되지 않는다는
/boot/91-shell.sh
설명이 포함 된 스크립트가 있습니다 .shell=1
/boot-02-start.sh
통과하면linuxrc=trace
디버그 출력이 제공된다는 의견도 있습니다 . 그렇긴 하지만 별 효과가 없습니다. 제가 본 것은 스크립트 끝을 지나서 스크롤하면서 이전 출력을 모두 지우는 끝없는 장치 폴링 루프뿐입니다.
나 정말 꼭 받아야 해존재하다거기 그리고바라보다실제로 무슨 일이 일어나는지 보아야만 문제가 무엇인지 알 수 있습니다. (공평하게 말하면 나는예약간 이상한 방식으로 시스템을 부팅하려고 하므로 여기서 문제가 발생한 것은 예상치 못한 일이 아닙니다. )
답변1
이는 Apple 관련 문제입니다. MacBook Air에서 사용해야 하는 Linux 시스템을 부팅하면 키보드가 작동하지 않습니다. 이는 모든 PC 기반 시스템에서 완벽하게 작동합니다. 따라서 Linux가 올바른 init 바이너리를 실행하지 않는 것과는 아무런 관련이 없습니다. 이는 일종의 하드웨어 드라이버 문제입니다.