부트로더 찾기

부트로더 찾기

궁금해서 특정 시스템을 시작하는 데 어떤 부트로더가 사용되었는지 알아낼 수 있습니까? 시스템이 부팅되었습니까?애벌레,릴로아니면 다른 부트 로더?

나는 같은 것에 대한 일부 /sys또는 변수가 존재해야 한다고 생각합니까 ?/proc

편집하다:

부팅 정보 요약: => Lilo는 /dev/sda의 MBR에 설치됩니다.

sda1: ___________________________________________________________________

File system:       
Boot sector type:  Unknown
Boot sector info:
Mounting failed: mount: unknown filesystem type ''

/dev/sda부팅해야 하는 유일한 장치입니다.

사용 가능한 유일한 단일 파티션에 알려진 파일 시스템이 없다면 어떻게 부팅할 수 있었는지 궁금합니다.

답변1

/sys나는 이 정보가 또는 아래에서 의미 있는 방식으로 추적된다고 생각하지 않습니다 /proc. 부팅 후 이에 액세스할 수 있다고 추측할 수 있는 유일한 방법은 GRUB 또는 Lilo 구성 파일이 있는지 확인하거나 다음과 같은 스크립트를 사용하여 시스템을 조사하는 것입니다.bootinfoscript.

예 - 부팅 장치 확인

시스템이 어떤 장치로 부팅되었는지 알고 있다면 dd부트로더의 내용을 덤프한 다음 grepGRUB 또는 LILO에 대한 내용을 덤프하는 데 사용할 수 있습니다.

                      SS #1

다음 명령을 사용하여 GRUB 또는 LILO를 사용하는지 확인할 수 있습니다.

$ sudo dd if=/dev/sda bs=512 count=1 2>&1 | grep GRUB
$ sudo dd if=/dev/sda bs=512 count=1 2>&1 | grep LILO

이 문자열을 반환하는 것은 사용 중인 부트 로더입니다.

Binary file (standard input) matches

예 - bootinfoscript 사용

$ sudo ./bootinfoscript --stdout
                  Boot Info Script 0.61      [1 April 2012]


============================= Boot Info Summary: ===============================

 => Grub2 (v1.99) is installed in the MBR of /dev/sda and looks at sector 1 of 
    the same hard drive for core.img, but core.img can not be found at this 
    location.

sda1: __________________________________________________________________________

    File system:       ext4
    Boot sector type:  -
    Boot sector info: 
    Operating System:  
    Boot files:        /grub2/grub.cfg
    ...

그러나 여러 부트 로더가 공존할 수 있기 때문에 이러한 접근 방식 중 어느 것도 "결정적"이지는 않습니다. 그러나 적어도 사용 중일 수 있는 부트 로더에 대한 대략적인 아이디어를 제공합니다.

참고자료

답변2

보다이것. 그러나 이 스크립트는 Bash로 작성되었으므로 임베디드 플랫폼에서 실행해야 하는 경우 수정해야 합니다. 이 스크립트를 테스트한 결과 Ubuntu에서는 GRUB가, Slackware에서는 LILO가 올바르게 인식되었습니다.

답변3

부트로더 ID를 얻으려면bootloader_type

echo $((`cat /proc/sys/kernel/bootloader_type`>>4)) 

당신의부트로더 ID

관련 정보