나의 현재 문제
내 Debian 시스템의 루트 파일 시스템을 SSD에 복제한 후( cp -ax
)더 이상 rc 스크립트의 출력이 표시되지 않습니다.SSD에서 부팅하는 동안. 종료하는 동안이나 rc 스크립트를 수동으로 실행할 때 표시됩니다. 또한 런레벨 1로 부팅하고 루트로 로그인한 다음 로그아웃할 때도 이 메시지가 표시됩니다. 커널은 3.8.2로 직접 컴파일했습니다.
시스템이 부팅되면 커널 메시지( dmesg
표시된 것과 유사함)가 표시되고 마침내 로그인 프롬프트가 표시되거나 관리자 로그인이 표시될 때까지 한동안 더 이상 메시지가 표시되지 않습니다. 일부 커널 메시지는 rc 스크립트에서 발생하지만 커널 메시지만 볼 수 있고 [ ok ] starting foo
rc 스크립트의 출력은 볼 수 없습니다. 그 외에는 시스템이 정상적으로 실행됩니다.
다른 파티션(/dev/sda3)에 있는 기본 데비안 커널(3.2.0-4-486)을 부팅하고 전달해 보았습니다.내 거루트(/dev/sda1)이므로 rc 스크립트가 필요합니다. 이런 경우에 이런 메시지를 봤습니다.
인터넷에서 똑같은 문제에 대한 몇 가지 보고서를 찾았습니다. 그러나 게시된 솔루션이 없거나 솔루션이 "다시 설치"되는 것입니다.
아마도 관련 문제는 더 이상 단일 사용자 모드로 부팅할 수 없다는 것입니다(런레벨 1이 작동함). initdefault(=3)로 직접 부팅됩니다. 나의심하다콘솔이 손실되고 sulogin이 실패하며 마치 sulogin을 종료한 것처럼 부팅 프로세스가 계속됩니다. 또한 쉘( sash
)로 부팅할 수 없습니다. 새시에서 환영 메시지가 표시되지만 나에게 말을 걸지 않습니다(프롬프트 없음).
내 현재 이론은 방황한다
- cp -ax에서 누락된 항목이 있습니까(예: /dev)?
- 디스크 속도가 빨라지면 타이밍 문제가 발생합니까?
- 아니면 이것이 완전히 사소한 것이고 내가 그것을 보지 못하는 걸까요?
5월 4일에 수정됨
나는 결국 /dev/console이 처음부터 존재해야 한다는 것을 깨달았습니다. 그래서 하나를 만들어 사용했고 mknod
이제 rc 스크립트의 메시지를 다시 볼 수 있습니다. 그리고 /dev/console얻다이전에 생성되었으므로 udev
부팅 중에 문제가 해결되지 않는 것 같습니다. 이것은 내 원래 문제를 해결했습니다. 나는 아직도 알고 싶다
- 다른 커널을 부팅하면 이 문제가 해결되는 이유. udev가 실행되기 전에 /dev/console은 /dev/sda3(다른 커널의 위치)에 존재합니다. 이 관찰로 인해 먼저 /dev/console을 만들게 되었습니다. 하지만 커널이 왜 필요한지 이해가 안 돼요.이것/dev 다른 루트를 전달했지만.
- 부팅하는 동안 /dev의 출처는 어디입니까?
- udev가 만든 /dev/console이 충분하지 않은 이유
다른 어떤 /dev 노드가 필요합니까?
init=/bin/sash로 부팅해도 여전히 작동하지 않는 이유
답변1
내 FreeBSD livecd에도 비슷한 문제가 있습니다. 일부 PC에서는 rc 스크립트의 출력이 없습니다.
이 문제는 커널 구성에 있는 커널 옵션 "dcons_crom"과 관련이 있습니다. 이 옵션을 활성화하면 콘솔 출력이 FireWire 포트(있는 경우)로 리디렉션됩니다. 커널 구성에서 이 옵션을 제거하자 문제가 사라졌습니다.
어쩌면 문제의 근원이 같을 수도 있습니다.