커널 패닉을 해결하기 위해 netconsole을 어떻게 사용할 수 있습니까?

커널 패닉을 해결하기 위해 netconsole을 어떻게 사용할 수 있습니까?

RAID를 루트로 사용하려고 하면 시스템 패닉이 발생합니다.

패닉 직전에 커널 출력을 읽고 싶지만 위로 스크롤할 수 없습니다. 인터넷 검색을 조금 한 후 netconsole을 사용해 보고 싶었습니다. 하지만 두 번째 컴퓨터에서는 전혀 출력이 나오지 않습니다.

현재 grub.conf의 관련 부분

title Gentoo Linux 3.0.6
root (hd0,0)
kernel /boot/linux-3.0.6-gentoo root=/dev/md3

title Gentoo Linux 3.0.6 (debug netconsole)                                                                                                    
root (hd0,0)                                                                                                                                   
kernel /boot/linux-3.0.6-gentoo-debug root=/dev/md3 netconsole=@/,[email protected]/00:18:f3:a8:09:61                                          
#kernel /boot/linux-3.0.6-gentoo-debug root=/dev/md3 [email protected]/eth0,[email protected]/00:18:f3:a8:09:61

title Gentoo Linux 3.0.6 (no root/auto root)
root (hd0,0)
kernel /boot/linux-3.0.6-gentoo
  • 커널 패닉으로 인해 첫 번째 실패
  • 두 번째는 내가 netconsole을 사용하려고하는 것입니다
  • 세 번째가 시작되지만 잘못된/이전 루트를 사용합니다.

다른 컴퓨터는 내가 시작한 Kubuntu LiveCD를 실행하고 있습니다 nc -u -l 6666. 그리고 세 번째 grub 옵션을 사용하여 (첫 번째) 컴퓨터를 시작하면 두 번째 컴퓨터와 통신하도록
실행할 수 있습니다 .nc -u 192.168.0.27 6666

/boot/linux-3.0.6-gentoo과 의 차이점은 다음 /boot/linux-3.0.6-gentoo-debug을 활성화했다는 것입니다.

  • 커널 해킹 -> 커널 디버깅
  • 커널 해킹 -> 각 부팅 printk 메시지를 N밀리초씩 지연
  • 장치 드라이버 -> 네트워크 장치 지원 -> 네트워크 콘솔 로깅 지원

질문

  1. 내 (2차) grub 구성이 올바르게 정의되어 있습니까?
  2. 활성화해야 하는 커널 구성 옵션이 더 있습니까?
  3. 세부 정보를 제공해야 하는 특정 기계 하드웨어에 대한 추가 정보가 있습니까?
  4. 패닉이 발생한 후 다시 위로 스크롤할 수 있는 방법이 있나요?

답변1

3.5.0 커널을 사용하는 젠투에서도 같은 문제가 발생했습니다. 어떤 온라인 예를 사용해도 다음 명령을 실행할 때까지 클라이언트에 출력이 전달되지 않았습니다.

dmesg -n 7

나는 원래 시도했다

dmesg -n 8

커널 문서에서 제안되었지만 반환된 내용은 다음과 같습니다.

localhost ~ # dmesg -n 8
dmesg: 알 수 없는 레벨 '8'

dmesg -n 7이 작동한 곳

localhost ~ # dmesg -n 7
localhost ~ # 에코 확인 > /sys/block/md0/md/sync_action

클라이언트에서 얻은 내용은 다음과 같습니다.

데이터 저장소1 ~ # nc -l -p 30000 -u
[ 9698.913098] md: RAID 어레이 md0의 데이터 확인
[ 9698.913112] md: 최소 _보장_ 속도: 1000KB/초/디스크.
[ 9698.913124] md: 데이터 확인을 위해 사용 가능한 최대 유휴 IO 대역폭(200000KB/초 이하)을 사용합니다.
[ 9698.913150] md: 128k 창을 사용하여 총 1048512k 이상.
[ 9718.197555] md: md0: 데이터 확인이 완료되었습니다.

그런데, 넷콘솔을 설정하는 방법은 다음과 같습니다.

modprobe netconsole netconsole="@/eth0,[이메일 보호됨]/"

관련 정보