최근에 SanDisk Extreme 64GB 스틱 중 하나에 손을 대고 땜질을 시작했습니다. 이 이야기에서 이것은 removable
비트가 설정된 모델이라는 점을 명심하십시오. 0
즉, Windows는 기본적으로 모든 파티션을 볼 수 있습니다-각각은 탐색기에서 단일 디스크로 표시됩니다.
목표 :
- 하나의 스틱에 여러 가지 부팅 가능한 배포판을 설치하려면
- 그중에는 Windows 7 설치 프로그램 및 Windows 8 설치 프로그램이 있어야합니다.
- 하나의 파티션 만 Windows (및 다른 OS)에서 자동 마운트해야합니다 (첫 번째 파티션 (파일 저장)). 이것은 부팅 파티션이나 파일이 실수로 변경되는 것을 방지하기위한 것입니다. NTFS 유형이어야합니다.
- 선택적 으로이 스틱에서 직접 부팅 가능한 완전 영구 Linux (바람직하게 Ubuntu)를 원합니다.
- 이러한 모든 기능은 USB 스틱에서 기기를 부팅 할 때 표시되는 단일 메뉴에서 사용할 수 있어야합니다.
마구간 :
이제 SYSLINUX 와 GRUB 의 조합을 사용하여이 모든 작업을 쉽게 수행 할 수 있습니다 (아래 참조). 그러나 모든 Linux 기반 부팅 가능 항목 ( create ramdisk -> load kernel -> have fun
PartEd Magic, Ubuntu Installer 등의 구성표 를 사용하는 항목 )은 단일 부팅 가능 파티션의 자체 폴더에서 실행되는 데 아무런 문제가없는 것처럼 보입니다. 단순히 다른 폴더에 넣고 단일 SYSLINUX 메뉴 항목을 가리킬 때 잘 작동합니다 (그 후에 사용하는 것이 무엇이든 다른 SYSLINUX :).
문제는 (항상 : D) Windows 설치 프로그램에 있습니다. 그들은 (또는 말해야 bootmgr
할) 상대 경로를 인식하지 않습니다. 당신이 폴더에 하나의 Windows 설치 프로그램을 넣으면, 말, Win7
같은 것이 보이는 것을 /Win7/bootmgr
(가), 거시기 꿰매 에 대한 외모 \Boot\BCD
제어를 통과 할 때 (하지 \Win7\Boot\BCD
– 위치가이 사실에 저장됩니다). 당연히 단일 파티션 (단일 디렉토리 구조)에 둘 이상의 Windows 설치 프로그램을 둘 수는 없습니다. 이것은 목표 2를 위반 합니다.
현재 계획 :
이미지를 게시하려면 10 개의 평판이 필요합니다 :(. 여기에 체계가 시각화되어 있습니다.
기술:
- 정상적인 NTFS 파티션. 원하는대로하세요-민감한 부팅 링크에는 영향을 미치지 않습니다 🙂
- FAT32 부팅 파티션. MBR에서 제어가 전송되는 곳입니다. 이것은 MBR로부터 제어권을 이전 할 수 있도록 기본적이어야합니다. 여기에는 메인 SYSLINUX가 포함되어 있으며 메뉴를 표시합니다 ( GOAL 5 및 GOAL 1 ).
아래의 모든 파티션은 디스크 당 최대 4 개의 기본 파티션을 들어 올리도록 확장되었습니다. - Windows 7 설치 관리자 이 파티션에는 GRUB을 가리키는 부트 섹터가 포함되어 있습니다 (부팅
/bootmgr
로더가 왜 그렇게 많은지 묻지 마십시오-테스트 설정입니다). 아래의 문제를 제외하고는 잘 작동합니다 ( GOAL 2 ). - Windows 8 설치 관리자 이 파티션에는 GRUB을 가리키는 부트 섹터가 포함되어 있습니다
/bootmgr
. 아래의 문제를 제외하고는 잘 작동합니다 ( GOAL 2 ). - 일반적인 방법을 사용하여 동일한 USB 스틱에서 Ubuntu가 설치된 영구 Linux 파티션. GRUB을 사용하여 부팅 메뉴를 관리합니다. 물론 부팅 섹터가 있습니다 ( GOAL 4 ).
- 리눅스 스왑. 일반적으로 이전 파티션의 Linux에서 사용되지만 누가 그것을 사용할 수 있는지에 대한 제한은 없습니다.
이제는 모든 것이 옳아 보입니다 (그리고 작동합니다). GOAL 3 제외 .
문제 :
hidden
플래그를 사용하여 Windows 파티션에서 해당 파티션을 숨기려고 시도했지만 너무 잘 작동했습니다. 또한 Windows 설치 관리자의 시야에서 숨겼습니다. 숨겨진 파티션에서 Windows를 설치하려고 할 때 설치 관리자는 기본적으로 : O에서 부팅 한 위치를 찾지 못했습니다. 이것은 중대한 문제입니다.- Windows 설치 관리자를 수용하기 위해 2 개의 추가 파티션을 사용했습니다. 이것은 무언가를 바꾸고 싶을 때마다 이것에 맞지 않기 때문에 정말 좋은 계획은 아닙니다. 다시 파티션해야합니다. 이것은 중요하지 않은 문제입니다. 저는 그걸로 살 수 있습니다.
내 생각:
- ISOLINUX 및 GRUB4DOS 와 같은 것들이 있습니다 (이에 관해 검색 할 때 나타납니다). 내가 이해 한 바에 따르면 실제로 Windows 설치 프로그램의 부팅 가능한 .iso 마운트에 도움이 될 수 있습니다 . 그게 사실입니까? 일부 페이지에는 이와 같이 마운트 된 이미지에 대한 경고가 포함되어 있습니다. 이와 같이 마운트 된 이미지는 BIOS 부팅 단계에서만 액세스 할 수 있습니다. Windows 설치 프로그램이 시작되면 마운트 된 이미지를 볼 수 없습니다. 그게 사실입니까? 올바른 방향으로 나를 가리킬 수 있습니까?
- (기본적으로, 나는 싸움 때문에 어쩌면 내가 윈도우에 대한 일부 사용자 지정 설치 프로그램을 사용할 수 있습니다
bootmgr
또는 여기에 100 시간의 %)chroot
를bootmgr
어떻게 든 때문에 제정신되고 있다고? 이 작업을 수행 할 수 있습니까? 나는 이것이 여전히 파티션이 숨겨져 있고 설치 프로그램이 아마 그것을 볼 수 없다는 문제를 안고 있다고 생각합니다. - 어쩌면 나는
bootmgr
대담한 가정이지만 경로를 해킹 할 수 있습니다. 🙂
이에 대한 추가 조언이 있으면 여기에서 논의 할 수 있습니다. 나는 어떤 제안에도 열려 있습니다. 설명이 필요하거나 추가 정보를 제공해야하는 경우 언제든지 문의하십시오.
대단히 감사합니다!
답변
길고도 성공적인 여행을 마치고 나는 모든 것을 성취 할 수있었습니다.
이 작업을 수행하는 방법에 대한 자습서를 만들었습니다 . 확인 해봐.
요청에 따라 아래에 전체 내용을 게시하고 있습니다.
소프트웨어:
우선 : Windows 7/8 및 그에 대한 관리 액세스 권한이있는 PC가 필요합니다 (Vista가 작동 할 수 있음). 여기에서 튜토리얼이 수행됩니다.
이 소프트웨어 패키지 가 필요한 모든 작업을 수행하기 위해 GitHub 에도 미러링됩니다 ( Zip 다운로드 클릭 ). [0] (지금부터는 참조가 [] 로 표시됩니다 ). 다운로드하려면 등록해야 할 수도 있습니다 (이유가 확실하지 않음).
소프트웨어 패키지에는 다음이 포함됩니다.
- YUMI 에 의해 pendrivelinux.com . [1]
- altmbr.bin 에서 SYSLINUX의 번호로 파티션을 부팅 할 수 있습니다 패키지로 제공된다. [2]
- 여러 스크립트와 하나의 실행 파일 ( erwan.l의 vmount 프로그램-32 및 64 비트 버전 포함) 이 스레드 에서 32/64 비트를 슬립 하여이 모든 것이 함께 작동하도록합니다 [3] .
또한 다음을 다운로드해야합니다.
- WinSetupFromUSB (나중에 WSFUSB). 이것은이 계획이 작동하는 데 중요합니다. 7zip이 설치되어 있지 않으면 .exe 버전을 사용하십시오 . 이 학습서는 1.4 버전 이 최신 일 때 작성되었습니다 . [4]
선택적으로 (프로세스를 더 쉽고 유연하게 만들지 만 권장하지는 않는 권장 소프트웨어) :
-
.iso
파티션 파티셔닝 및 파티션 플래그 설정을 위해 Gparted 라이브 (아날로그에는 최근에 지불 하기로 결정한 Parted Magic 또는 더 작은 파티션 마법사 가 있지만 Gparted가 아니며 운영하기 위해서는 약간의 경험이 있어야 함을 명심하십시오). [5] - Notepad ++ 는 많은 플러그인이있는 Windows 용 고급 텍스트 편집기입니다. [6]
물론 몇 가지 Windows 설치 프로그램 .iso
과 부팅 가능한 Linux 배포판도 있습니다. YUMI 및 SYSLINUX가 지원하는 모든 것이 될 수 있습니다 (이 자습서의 뒷부분에서 확인할 수 있음).
이 모든 것을 다운로드하면 다음 단계를 수행 할 수 있습니다.
개념:
여기서는 작동 방식에 대해 간단히 설명합니다.
여기에서 논의 된 계획은 설정에 사용하는 것입니다. 동일한 목표를 달성하는 유일한 방법은 아닙니다. 필요에 따라 설정을 사용자 정의 할 수 있도록 최선을 다해 설명하고 설명하겠습니다.
이 과정은 그림에서 가장 잘 묘사 된 것 같습니다. (페인트에 대한 미안, 그래픽 디자인은 실제로 내 강점이 아닙니다) :
거의 다됐다. 나는 그것을 더 잘 설명하는 방법을 정말로 모른다. 나는이 스레드를 모니터링 할 것입니다, 답장에 질문을 주시기 바랍니다.
행위:
-
[소프트웨어 구성]
- 소프트웨어 패키지 [0] 을 (를) 일부 폴더로 추출하십시오 ( 필요한 모든 소프트웨어가 위에 나열되어 있습니다 (아직없는 경우 )).
- WinSetupFromUSB 를 같은 폴더에 추출하십시오 (따라서 그
YUMI.exe
밖의 모든 것). 두 번 클릭하고 동일한 폴더로 추출하십시오. - 이제 WinSetupFromUSB로 폴더를 가져 와서
drag_here.cmd
파일 로 끌어다 놓으십시오 . 이와 같이 (폴더 구조도 이와 유사해야 함) :
모든 작업을 올바르게 수행하면 프로세스가 완료되었다는 창이 표시됩니다.WinSetupFromUSB was set up successfully, you can delete that folder. Now it's time to run 'start_admin.cmd'. Press any key to continue...
- 표시된대로 아무 키나 눌러 창을 닫습니다. start_admin.cmd를 아직 실행하지 마십시오. 다음 단계로 넘어가 파티션 구조를 정의하십시오.
-
[파티셔닝]
- 파티션 구조를 결정하십시오 . 최소한 하나의 스토리지 파티션과 최소한 하나의 부트 파티션을 포함해야 합니다 . 부팅 파티션은 FAT32 유형이어야합니다 ( FAT32에는 최대 파일 크기 4GB, 최대 볼륨 32GB 32768MB의 제한이 있습니다. 더 큰 파일 또는 볼륨을 사용하려는 경우 NTFS를 사용할 수 없지만 exFAT를 다음과 같이 시도 할 수 있습니다. 실험-나는 그것을 시도하지 않았다) 스토리지는 아무것도 될 수 있지만 NTFS를 권장합니다. 내 모습은 다음과 같습니다.
저장소 파티션은 32GB NTFS 이고 부팅 파티션은 15GB FAT32입니다 . G와 같은 문자는 없습니다. 숨겨진 플래그가 이미 설정되어 있기 때문에 나중에 배울 수 있습니다.큰 디스크를 사용하는 경우 일부 BIOS가 특정 범위를 넘어서 읽는 데 문제가 있으므로 부팅 파티션을 먼저 두는 것이 좋습니다 . - 디스크 관리 방법은 여기에 설명되어 있지만 파티션 구조를 적용하려는 다른 소프트웨어를 사용할 수 있습니다 ( 이전에 언급 한 Gparted [5] 또는 WinSetupFromUSB 에서 시작할 수있는 Bootice 등 ). Windows에서 디스크 관리 를 엽니 다 . 시작 메뉴 ( 디스크 관리 입력 ) 또는 Windows 명령 프롬프트 ( diskmgmt ) 에서 검색을 통해 수행 할 수 있습니다 .
- 원하는 파티션 구조를 적용하십시오. 파티션을 마우스 오른쪽 단추로 클릭 하여 관리하십시오. 파티션 삭제 후 남은 할당되지 않은 공간을 마우스 오른쪽 버튼으로 클릭하여 새 파티션을 만듭니다. 항상 드라이브 문자를 할당하도록 선택 하면 동일한 마법사에서 자유롭게 형식 을 지정할 수 있습니다.
- 디스크 관리를 종료하기 전에 부트 파티션의 수주의 와 디스크의 번호를 시스템에 있습니다. 디스크 관리에서 다음과 같이 나타납니다.
여기서 디스크 번호는 2 이고 부팅 파티션 번호는 1 입니다. - 파티션 구성표 적용을 마쳤 으면이 드라이브를 실제로 부팅 가능 하게 만들어야합니다 .
- 파티션 구조를 결정하십시오 . 최소한 하나의 스토리지 파티션과 최소한 하나의 부트 파티션을 포함해야 합니다 . 부팅 파티션은 FAT32 유형이어야합니다 ( FAT32에는 최대 파일 크기 4GB, 최대 볼륨 32GB 32768MB의 제한이 있습니다. 더 큰 파일 또는 볼륨을 사용하려는 경우 NTFS를 사용할 수 없지만 exFAT를 다음과 같이 시도 할 수 있습니다. 실험-나는 그것을 시도하지 않았다) 스토리지는 아무것도 될 수 있지만 NTFS를 권장합니다. 내 모습은 다음과 같습니다.
-
[기본 부트 환경 추가 (YUMI)]
- 1 단계 에서 폴더로 이동하십시오 . 시작하십시오
YUMI.exe
. - Show All Drives 상자를 체크 하고 드롭 다운 목록에서 부팅 파티션을 선택하십시오. 선택적으로 형식을 선택할 수도 있습니다.
- 이제 Linux 기반 배포판을 추가 할 차례입니다. 예를 들어 파티션 마법사를 선택했습니다. 다른 배포를 선택하고 둘 이상을 추가 할 수 있습니다. 파티션 마법사에 대한 링크는 소프트웨어 섹션에 있습니다. 이 시점에서 모든 Linux 기반 배포판을 추가하는 것이 좋습니다 . 디스크가 완료된 후에 나중에 수행하기가 더 어렵 기 때문입니다 .
- 선택 찾아보기를 당신의 선택
.iso
이미지를. 화면은 다음과 같습니다.
- 만들기를 클릭 하고 화면의 지시를 따릅니다. 추가를 원하는지 물으면 예를 선택하고 다른 분포를 추가하기 위해 절차를 반복 할 수 있습니다 ( 절차를 반복 할 때 서식 옵션을 선택하지 마십시오 ).
- 이 시점에서 디스크는 부팅 가능합니다. 디스크를 분리했다가 다시 연결하십시오 (Windows는 파티션이 올바르게 활성화 된 것으로 감지해야 함).
- 1 단계 에서 폴더로 이동하여
start_admin.cmd
관리자로 실행하십시오 . 이는 작업에 중요합니다. 마우스 오른쪽 단추를 클릭하고 관리자로 실행을 선택 하십시오 .
- 디스크 번호 와 부팅 가능한 파티션 번호 를 묻습니다 (단계 2.4 ). 디스크 관리를 다시 열고 2.4 단계 에서 수행 한 번호를 찾으십시오 . 해당 번호를 지정하고 Enter를 누르 십시오 .
[ATTENTION]이 단계 또는 다른 위치에서 올바른 디스크 및 파티션 번호를 지정하지 않으면 디스크 (이 자습서에서는 언급되지 않은 디스크 포함)에 어떤 일이 발생하는지에 대해서는 책임지지 않습니다.
- 마지막으로 USB 드라이브에 넣기 전에 실행 파일을 압축할지 묻습니다. 현재 크기는 거의 문제가되지 않으므로
n
여기에 입력하는 것이 좋습니다 (예를 들어 , 예기치 않은 부작용은 나중에을 눌렀을y
때 발생할 수 있음).
- 1 단계 에서 폴더로 이동하십시오 . 시작하십시오
-
[Windows 기반 설치 프로그램 추가 (WinSetupFromUSB)]
- 동일한 폴더로 돌아가서 WSFUSB 폴더 ( WinSetupFromUSB 폴더 아님) 로 이동하여 시스템 아키텍처에 적합한 WinSetupFromUSB.exe를 실행 하십시오.
- 최상위 드롭 다운 메뉴에서 파티션을 선택하십시오. 신중하게 수행하십시오.
- Windows 7/8 설치 프로그램 옆의 상자를 선택하고 오른쪽의 단추를 클릭하여 Windows 설치 프로그램 .iso 를 선택하십시오 .
- 고급 옵션 상자를 선택하십시오 . 있는지 확인 음주를 확인하고 grub4dos MBR에 설치하지 및 설치하기 전에 실행 Q-DIR을 .
- 설정 을 다시 확인 하고이 예제 와 거의 100 % 일치 하는지 확인하십시오 (디스크 및
.iso
경로 제외 ).
- 선택적 으로 Vista / 7 / 8 / Server Source의 사용자 정의 메뉴 이름을 선택하여 부팅시 Windows 배포를 선택할 때 사용자 정의 이름을 볼 수 있습니다.
- 준비가되면 GO 버튼을 누릅니다. 4.7 단계에서 상자를 선택한 경우 이름을 묻습니다. 그런 다음 작업이 완료 될 때까지 기다리십시오 .
- 추가하려는 각 Windows 배포에 대해 단계를 반복 하십시오.
-
[마무리]
- 이 시점에서 2 개의 부팅 가능한 구조가 있습니다 : 하나는 Linux 용 ( MBR로 시작 )과 하나는 Windows 용 (부팅 파티션의 bootmgr에서 시작)입니다. 우리는 그것들을 연결해야합니다. Windows 탐색기에서 부팅 파티션을 엽니 다 .
- 파일을 엽니 다
<drive root>\multiboot\syslinux.cfg
. 드라이브에서 부팅 할 때 표시되는 메뉴에 대한 정보가 들어 있습니다. 이에 대한 자세한 정보는 menu.c32-syslinux.cfg 구문 , chain.c32 chainloader 명령 에서 찾을 수 있습니다 . 지금은 Windows 설치 프로그램을 부팅 할 수있는 메뉴 항목을 만들어야합니다. 하단에 (또는 다른 메뉴 항목 사이에) 다음 행을 추가하여 새 메뉴 항목을 작성하십시오.MENU LABEL Windows Installers/Recoveries >>> MENU INDENT 1 KERNEL chain.c32 APPEND fs ntldr=/bootmgr
이 코드 전후에 빈 줄 바꿈을 추가하는 것이 좋습니다. 원하는 경우 메뉴 입력 레이블을 조정하십시오 . 파일을 저장하고 닫습니다.
- [선택 여기에서] 열기 WinSetupFromUSB 다시. Windows 설치 프로그램 메뉴에서 오래된 기본 메뉴로 돌아 가기 (Grub4dos) 메뉴 항목을 삭제 합니다. Bootice 도구를 선택하십시오 .
- BCD 편집으로 이동 하십시오 . 다른 BCD 파일을 선택 하고
<drive root>\boot\bcd
부트 파티션에서 파일 을 찾으 십시오.
- Easy 모드를 눌러 BCD (부팅 구성 데이터) 파일을 편집하십시오.
참고 : 설치 프로그램이 하나 뿐인 경우 메뉴를syslinux.cfg
전혀 표시하지 않고 추가 한 메뉴 항목을 누르면 바로로드 됩니다 . 또한, 언론에 할 수 있습니다 기본값으로 설정 당신이 만드는하려는 메뉴 항목에 대한 기본 . 닫기를 클릭 하고 Bootice 도구를 종료 하십시오 . WinSetupFromUSB 도 종료 하십시오 .
-
[정리 (선택 사항)]
- 이제 오래된 파일을 삭제해야합니다. 이런 종류의 일에 신경 쓰지 않으면이 섹션을 건너 뛸 수 있습니다. Windows 탐색기에서 부팅 파티션 을 엽니 다 . 또한 드라이브 의 첫 번째 파티션 을여십시오 ( 하나는 동일 할 수 있습니다 ).
- 이 디스크가 작동하려면 다음 파일과 폴더가 필요합니다 ( 폴더가 나열되면 모든 내용을 보존해야합니다 ).
\boot \efi \multiboot \WINSETUP \bootmgr
- 다음 파일 및 폴더를 안전하게 삭제할 수 있습니다.
.disk \default \grldr \menu.lst \plpbt.bin \shifthd.bat \usbdrive.tag
마음대로 제거하십시오 . 또한 Windows는 바보 같은 시스템 볼륨 정보를 생성 할 수 있습니다. 운이 좋으면 정보 를 제거 할 수도 있습니다. 또한 이것은 부팅 파티션의 이름 을 MULTIBOOT 에서 다른 이름으로 바꿀 수있는 지점입니다 (단순히 Boot를 선호합니다 ). Windows 탐색기를 통해 모든 폴더와 마찬가지로 그렇게 할 수 있습니다.
-
[부팅 파티션 숨기기 (선택 사항)]
- 이제 부팅 파티션 을 숨겨서 파일이 실수로 변경되는 것을 방지 할 수 있습니다. 이는 디스크를 삽입 할 때 기본적으로 대부분의 시스템에서 볼 수 없지만 여전히 부팅 할 수 있음을 의미합니다. 열기 WinSetupFromUSB 다시.
- Bootice 도구를 열고 아직 선택 하지 않은 경우 Physical Disk (물리 디스크) 탭을 선택하십시오 . 드롭 다운 메뉴에서 디스크를 주의해서 선택하십시오 .
- 부품 관리 버튼을 클릭하십시오 . 파티션 목록이 표시됩니다.
- 목록에서 파티션을 찾고 숨기기 버튼을 누릅니다. 성공 을 확인하는 창이 나타납니다. 모든 것은 다음과 같이 표시됩니다
그게 전부입니다 . 대부분의 시스템에서 파티션이 더 이상 자동 마운트되지 않으며 (드라이브 문자가 없음) 드라이브를 부팅하는 데 필요한 파일이 실수로 변경되지 않습니다 .
또한, 나는 유지하는 것을 선호 vmount (프로그램 [3] 에서 소프트웨어 I가 필요한 경우 신속하게 Windows에서 숨겨진 파티션을 마운트 할 수 있도록 섹션).
잘못된 생각이나 오류가 발견되면 여기에 자유롭게 게시하십시오. 또한 질문과 의견을 환영합니다.
크레딧 :
Wonko , erwan.l , ilko , 이 스레드 에서 나를 크게 도와 준 reboot.pro 커뮤니티의 Steve 회원 . 여정이 끝난 곳 🙂
이 방 에서 처음으로 ImDisk 드라이버에 대해 암시 한 Bob .
BCD 파일에 대한 교육을받은 마리오 (Mario) 는 이 원래 질문 에서 파일을 편집 할 목적과 의미 를가 집니다. 여정이 시작된 곳입니다.
들여 쓰기 오류를 수정 한 Ricky .