내가 원하는 것은:파티션 테이블을 건드리지 않고 Windows 10과 Kali Linux를 멀티부팅하고 싶어서 기존 Windows 파티션에 .img 파일로 Kali Linux를 설치해 보았습니다. 그런 다음 grub에게 루프백을 생성하고 해당 이미지에서 부팅하도록 지시합니다.
내가 뭘 한거지:그래서 해당 .img 파일에 Kali Linux를 설치하기 위해 먼저 .img 를 사용하여 IMG를 생성했습니다 dd
. 그런 다음 설치 디스크를 부팅하고 계속해서 모듈을 로드 fuse
했습니다 ntfs
.
그런 다음 새 터미널( )을 열고 Ctrl+Alt+F2
IMG가 있는 파티션을 설치했습니다.
질문:
losetup
터미널에서 실행할 수 없습니다- 어떻게든 IMG에 설치하고 grub에서 루프백 장치를 만든 다음 로드했다고 가정 하면 부팅 인수가
vmlinuz
필요하기 때문에 나머지 시스템 파일을 로드할 수 없을 것 같습니다 .root=/dev/sdX
글쎄요, 어떻게든vmlinuz
또는 를 수정하여initrd.img
파티션을 마운트하고 실행한losetup
다음 읽어서root=/dev/loopX
나머지 시스템을 로드할 수 있습니다.
답변1
이것이 내가 구현한 방법입니다.
- 설치 프로세스 시작
- 계속해서 "디스크 파티션" 단계를 진행하고 "뒤로"를 클릭하세요.
- 다른 터미널(
Alt+Ctrl+F2
)을 시작하고 이미지가 저장된 파일 시스템(예:/mnt
. ln -s /mnt/path/to/image /dev/sdb
설치 시스템을 속이기 위해 실행하십시오 .- 이전 터미널로 전환합니다. (
Alt+Ctrl+F5
나의 경우에는) - "디스크 감지" 단계부터 설치를 계속하세요.
/mnt/path/to/image
거기에 있어야합니다. 선택하십시오. - 이를 일부 파일 시스템(
ext4
내 경우에는)으로 사용하고 마운트 지점을 로 설정합니다./
아직 스왑을 선택하지 않고 마침을 누르십시오. - 평소대로 설치를 완료합니다.
- 이제 "Kali Live"로 재부팅하고 터미널을 엽니다.
- 이미지가 저장된 파일 시스템을 마운트합니다(예:
/mnt
). 동시에 이미지를 설치합니다. 예:mount -o loop /mnt/path/to/image /myimg
- 이미지에 Chroot를 추가합니다.
chroot /myimg
- 파일을 수정
/etc/initramfs-tools/modules
하고loop
. - 수정
/usr/share/initramfs-tools/scripts/local
: - 현재 내용을 지우고mountroot()
채우기:
mkdir /root2 mount -t <type of fs inwhich image is stored> /dev/sdXY /root2 mount -t ext4 -o loop,rw /root2/path/to/image ${rootmnt}
- 달리기
update-initramfs
- 그럽 항목을 추가합니다:
loopback loop (hdX,Y)/path/to/image linux (loop)/vmlinuz initrd (loop)/initrd.img
- 완벽한! !