저는 씽크패드 T430을 사용하고 있습니다. Linux(최신 CentOS)를 설치할 때마다 잠시 후 컴퓨터가 부팅을 거부하고 BIOS 또는 부팅/진단 메뉴로 이동합니다. Windows를 실행했는데 CentOS로 전환하거나 이중 부팅하기로 결정하기 전까지는 그런 일이 발생하지 않습니다.
지금까지 마더보드 3개에서 이런 일이 발생했는데, 마더보드를 교체해야 했습니다. 이제 나는 네 번째를 하고 있으며, 나는 하드웨어 결함이 계속 발생하는 불운한 사람인지, 아니면 Linux가 마더보드의 펌웨어를 손상시키는 것인지에 대해 토론하고 있습니다.
여러분은 어떻게 생각하시나요?
이것이 기술적인 관점에서 의미가 있나요? 어쩌면 T430이 Linux와 호환되지 않을까요? 자유롭게 추측해 보세요.
답변1
비교적 최신 장치이기 때문에 레거시 BIOS가 없고 UEFI 펌웨어가 있습니다. 불행하게도 UEFI는 매우 복잡하고 이상한 오류가 발생하기 쉽습니다.
예를 들어, 몇 년 전 삼성은 NVRAM 변수에 너무 많은 데이터를 쓰면 벽돌이 될 수 있는 일부 노트북을 출시했습니다.여기를 보아라그리고여기:
[...] UEFI 시스템에서 이를 더 쉽게 만들 수 있는 코드가 커널에 있습니다. 심각한 오류가 발생할 때마다 커널은 최근 메시지를 UEFI 가변 저장 공간에 복사합니다. 그런 다음 재부팅 후 사용자 공간에서 사용할 수 있으므로 충돌 원인을 보다 정확하게 진단할 수 있습니다.
해당 크래시 덤프에는 약 10K의 UEFI 저장 공간이 필요합니다. Microsoft는 Windows 8 시스템에 최소 64K의 사용 가능한 저장 공간을 요구합니다. 우리는 하나의 크래시 덤프만 보관합니다. 시스템이 다시 충돌하면 다른 것을 생성하는 대신 기존 시스템을 덮어쓰게 됩니다. 이는 모두 UEFI 사양과 완벽하게 호환되며 Apple은 실제로 하드웨어에서 매우 유사한 작업을 수행합니다. 불행하게도 일부 삼성 노트북은 가변 저장 공간을 너무 많이 사용하면 부팅에 실패하는 것으로 나타났습니다. 우리는 아직 "너무 많은 것"이 무엇인지 모르지만 Windows에서 많은 변수를 작성하는 것만으로도 이를 트리거할 수 있습니다. 여기에 몇 가지 샘플 코드를 넣었습니다. 각각 1KB의 무작위 데이터를 포함하는 36개의 변수를 작성합니다. Windows에서 관리자 권한으로 실행한 다음 시스템을 재부팅했습니다. 다시는 돌아오지 않았습니다.
Lenovo가 비슷한 실수를 저지르는 것은 확실히 불가능하지 않습니다.
물론 최신 펌웨어 업데이트가 설치되어 있는지 확인해야 합니다.
답변2
BIOS를 플래시하기 위해 특정 소프트웨어를 사용한 경우에는 가능하지만 사용하지 않으면 발생하지 않습니다.
조금만 검색해보면 다른 분들은 이런 문제가 있는 것 같지 않습니다. 열쇠를 부러뜨렸는지 확인하세요. EFI를 사용하는 경우 Windows의 고급 옵션을 사용하여 펌웨어 옵션으로 이동해야 합니다.