지역화 된 NTFS 부팅 섹터를 작성하는 방법은 무엇입니까?


8

알려지지 않은 사실 : NTFS 부트 섹터는 다른 언어로 제공됩니다. " BOOTMGR is missing"와 " Press Ctrl+Alt+Del to restart"는 말할 수 있지만 다른 언어로도 같은 것을 말할 수 있습니다. 이는 파티션을 작성하고 포맷 할 때 사용중인 Windows 시스템의 로케일에 따라 다릅니다.

맬웨어가 엉망이되어서 루트킷을 숨기는 시스템 드라이브의 NTFS 부트 섹터를 다시 작성해야했습니다. 필자는 bootsect.exe원래 Windows를 설치하는 데 사용한 것과 동일한 이탈리아어 설치 DVD 인 설치 DVD 의 도구를 사용하여이 작업을 수행했습니다 . it-IT 폴더에 nice bootsect.exe.mui 파일도있었습니다. 그러나이 도구는 영어를 사용하고 있었고 NTFS 부팅 섹터도 영어를 사용하고 있습니다 (물론 이전에는 없었습니다).

나는 이것이 순수한 외관이라는 것을 알고 있지만, 지역화 된 NTFS 부트 섹터를 만드는 방법 (물론 현지화 된 시스템에서 파티션을 다시 포맷하지 않고)을 알고 싶습니다.


3
설치의 복구 콘솔에서 fixmbr이 현지화되어 있다고 생각합니다. 아마 그럴 것입니다.
드워프

(+1) 아주 좋은 질문 btw, Massimo. :) 내 즐겨 찾기 목록에 추가되었습니다.
드워프

1
Windows 7에는 "fixmbr"이 없습니다 ... 가장 가까운 것은 bootsect.exe 및 bootrec.exe입니다. 나는 (설치 DVD에서 그들을 사용하여 시도 되는 지역화), 그러나 영어 부트 섹터와 함께 끝났다. 복구 콘솔에서 다시 시도하겠습니다.
Massimo

현지화 된 Windows 복구 환경에서 실행하여 두 가지를 모두 테스트했습니다. bootsect.exe와 bootrec.exe는 모두 영어 부팅 섹터를 만듭니다.
마시모

bootect를 사용하는 방법은 두 가지가 있습니다. 드라이브 문자 만 사용하면 부트 로더가 파티션에 기록되거나 / mbr 옵션을 사용하여 MBR에 기록 할 수 있습니다. 둘 다 시도 했습니까? 솔직히 말해서 언어가 정말로 중요합니까? 작은 부트 로더 코드에는 문자열이 거의 없으며 대부분의 시간조차 보지 못합니다. OS 선택 메뉴가 올바르게 표시되는 것으로 가정합니까?
billc.cn

답변:


1

다른 메시지는 다른 장소에서 나옵니다. 그러나 bootmgr, BCD (정확히 동일한 부팅 구성을 가진 시스템의), bootsect.dat, boot.sdi 또는 파일 조합과 같은 부팅 파일을 바꾸면 다음 메시지가 나타납니다. 선택한 언어.


부트 로더는 올바른 언어를 사용; 그것은의 부트 섹터 하지 않습니다.
Massimo

엄밀히 말하면, VBR의 코드는 또한 부트 로더.
JdeBP

부트 로더는 부트 섹터에 상주합니다. 부트 섹터는 코드가 아니며 위치입니다.
jiggunjer

1

Vista에서는 부트 시스템이 영어로되어 있지만 폴란드어 시스템이 있습니다. 원래 Microsoft 디스크에서 설치했습니다. 아마도 부트 섹터는 OEM이 해킹 한 것일 수 있습니다.


MSDN에서 다운로드 한 공식 Microsoft ISO 이미지.
Massimo

광산도 공식입니다.
kinokijuf

0

부트 섹터는 매우 작기 때문에 (512 바이트에 불과) NDISASM에서 IDA에 이르기까지 무엇이든 분해하고 메시지를 수정 한 다음 다시 어셈블 할 수 있습니다 (NASM에서 수행).

여기에는 약간의 프로그래밍 기술이 필요하며 일부 x86 어셈블러 교과서를 읽을 수도 있지만 충분히 노력하면 분명히해야 할 일입니다.


2
512가 아니라 446 바이트 다른 바이트는 파티션 테이블 용으로 예약되어 있습니다.
Eir Nym

이 의견의 본질은 사실이지만 그 진술은 사실이 아닙니다. 부트 섹터는 MBR이 아닙니다. MBR은 512 바이트 (파티션 테이블이없는 446) 인 반면, 부트 섹터는 리버스 엔지니어링 및 이해하기에는 적어도 두 배 이상 크고 상당히 더 복잡합니다. 내가 아는 한, 최신 버전의 Windows에서는 NTFS 부트 섹터에 대한 완전한 리버스 엔지니어링 연구가 제공되지 않습니다. (그럼에도 불구하고, 나는이 대답을 upvoted.)
마흐무드 알 - Qudsi

@ MahmoudAl-Qudsi bootsect.exe는 MBR과 VBR의 코드를 부트 로더로 취급합니다. OP가 참조하는 언어 문제는 실제로 더 큰 VBR 부분에 있습니다.
jiggunjer

0

1) NTFS 파티션이 포함 된 드라이브를 Linux를 실행하는 시스템에 꽂고 디스크 / 16 진 편집기 또는 dd 명령을 사용하십시오. 또는 2) CD / DVD의 일부 리눅스로 부팅 한 다음, ditto; 또는 3) Windows 시스템에서 동일한 작업을 수행하지만 편집 할 NTFS 볼륨은 Windows Vista 이상에서 마운트 해제해야합니다. 바이트 1F8h부터 1FBh까지의 시작 오프셋 (볼륨 부트 레코드에서 오프셋 100h와 관련됨)이있는 4 개의 메시지 문자열 (아스키 인코딩)이 있습니다. 이 메시지에는 오프셋 1F7h에서 오프셋 180h까지의 영역을 사용할 수있는 것 같습니다. 파티션의 맨 끝에 볼륨 부트 레코드의 사본이 있습니다.


0

이것을 시도 할 수 있습니다 (Windows 설치가 C : 파티션에있는 경우)

bcdboot c:\Windows /l it-it

또는 bcdedit로

bcdedit /set {bootmgr} locale it-IT
bcdedit /set locale it-IT

또는 구성에 따라 bcdedit 사용 (bcdedit를 입력하여 구성을 확인)

bcdedit /set {default} it-IT
bcdedit /set {current} it-IT 

'bcdboot'명령에 대한 설명서는 여기에서 찾을 수 있습니다.

http://technet.microsoft.com/en-us/library/cc731245%28WS.10%29.aspx

그리고 여기 'bcdedit':

http://technet.microsoft.com/fr-fr/library/cc709667%28WS.10%29.aspx

그렇다면 어느 것이 당신에게 도움이되는지 알려주십시오 ..!


이 두 명령 모두 부팅 섹터가 아닌 부팅 관리자에 영향을줍니다.
Massimo
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.