Computer >> 컴퓨터 >  >> 시스템 >> Mac

Mac에서 EFI 부팅을 사용하여 USB에 Kali Linux 설치:가상화 팁이 포함된 단계별 가이드

Mac에서 EFI 부팅을 사용하여 USB에 Kali Linux 설치:가상화 팁이 포함된 단계별 가이드

플라비오 데 스테파노 저

이 튜토리얼은 Kali 전체 설치가 포함된 USB 스틱을 원하는 모든 사람을 위한 것입니다. Mac과 함께 사용하세요. 이는 지속성을 갖춘 Live Kali 설치를 수행하기 위한 것이 아닙니다.

USB 스틱에 Kali 설치를 수행할 때 문제는 Kali가 디스크를 VFAT 파일 시스템으로 파티션한다는 것입니다. Mac OS는 HFS+ 파티션과 이에 필요한 일부 파일만 인식합니다.

따라서 다음이 필요합니다:

  • Kali ISO 설치 프로그램이 포함된 USB 스틱
  • Kali를 설치할 대상 USB 스틱, SD 카드 또는 SSD 외장 드라이브(16GB 및 USB 3.0 권장)

이 튜토리얼은 Kali에 대한 적절한 수정 사항을 포함하여 이 튜토리얼에서 많은 영감을 받았습니다. https://medium.com/@mmiglier/ubuntu-installation-on-usb-stick-with-pure-efi-boot-mac- Compatible-469ad33645c9

USB 라이브 설치

먼저 이 튜토리얼에 따라 USB 스틱에 Kali를 설치하세요. 이 단계를 진행하는 방법에 대해 귀찮게 하지 않겠습니다. 여기서부터 시작하세요:

$ sudo dd if={KALI_ISO.iso} of=/dev/{USB} bs=1m

준비가 되면 Mac을 재부팅하십시오. USB 스틱을 모두 삽입한 다음 ALT를 누르고 EFI 부팅을 선택합니다. 라이브 설치 프로그램을 시작합니다.

Mac에서 EFI 부팅을 사용하여 USB에 Kali Linux 설치:가상화 팁이 포함된 단계별 가이드

Kali 설치 프로그램은 시간대 및 키보드 레이아웃에 대해 다양한 질문을 할 것입니다.

디스크 파티션을 묻는 메시지가 나타날 때까지 계속 진행하세요. 여기서 수동을 선택하세요. 그런 다음 USB 대상을 선택하세요. 드라이브(Kali를 설치하려는 위치). 예를 들어 크기 등 다양한 요소로 인식할 수 있습니다. 계속:을 클릭하세요. 이렇게 하면 드라이브가 분할됩니다.

이제 다시 같은 화면으로 돌아가서 FREE SPACE를 선택하세요. USB 대상 드라이브 아래에 있습니다. 계속을 클릭하세요. 여유 공간 자동으로 파티션 나누기를 선택하세요. 권장 옵션을 따르십시오. 그런 다음 파티션 완료 및 변경 사항을 디스크에 쓰기를 클릭하세요. .

이제 설치 프로세스가 데이터를 디스크에 복사합니다. 완료될 때까지 기다리세요(최대 30분 소요).

GRUB Live에서 부팅

완료되면 Mac이 재부팅되며 ALT를 눌러야 합니다. 다시. EFI 부팅을 선택합니다. 또.

지금 해야 할 일은 Live GRUB를 통해 설치된 Kali 시스템을 로드하는 것입니다. , 설치된 시스템에는 MacOS에서 인식할 수 있는 부트로더가 없기 때문입니다.

GRUB가 로드되면 c를 누르세요. GRUB 명령줄 인터페이스를 얻으려면.

이제 Kali 설치가 어떤 HD인지 이해해야 합니다. 이렇게 하려면 GRUB cli가 로드될 때 ls를 입력하세요.; USB 스틱을 꺼내고 ls를 입력하세요. 또.

grub> ls
(memdisk) (hd0) (hd1) (hd1,gpt3) (hd1, gpt2) (hd1,gpt1) ...

hd{X} 사라졌습니다:그것이 당신의 드라이브입니다. 이제 gpt.를 찾아야 합니다. 아마 gpt2일 것입니다. , 하지만 확실히 하기 위해 다음을 입력하세요:

grub> ls (hdX,gpt2)/boot/grub
unicode.pf2 ...

명령어가 unicode..인 경우 올바른 gpt입니다. 다른 gpts를 사용해 보세요 그렇지 않으면. 이제 파티션의 UUID를 찾아 주석을 달아보세요.

grub> ls -l (hdX},gpt{X})
 Partition hd2,gpt2: Filesystem type ext* 〈...snip...〉 UUID e86c20b9-83e1-447d-a3be-d1ddaad6c4c6 - Partition start at [...]

이제 부팅을 위해 매개변수를 GRUB로 설정할 수 없습니다( 사용). 자동완성을 사용하기 위한 키):

grub> set root=(hd{X},gpt{X})
grub> linux /boot/vmlinuz〈...tab here!...〉.efi.signed root=UUID=〈the UUID〉
grub> initrd /boot/initrd〈...tab here!...〉
grub> boot

그러면 전체 Kali 설치가 부팅됩니다. 라이브 GRUB를 사용합니다. 로그인 과정에서 인식하는 비밀번호로 라이브 환경과 구별하실 수 있습니다.

EFI 파티션 수정

Kali 설치에 로그인한 후 터미널을 열고 다음을 입력하세요:

$ fdisk -l

드라이브를 찾으세요.

이제 gdisk를 엽니다. (Kali에 기본적으로 설치됨) 드라이브를 분할하려면(여기서는 매우 주의하세요):

$ gdisk /dev/sd{X}
GPT fdisk (gdisk) version 1.0.1
Partition table scan:
 MBR: hybrid
 BSD: not present
 APM: not present
 GPT: present
Found valid GPT with hybrid MBR; using GPT.
Command (? for help):

파티션 테이블을 인쇄하고 첫 번째 파티션의 유형이 EF00인지 확인하세요.

Command (? for help): p
Disk /dev/sdd: ...
[...]
Number Start (sector) End (sector) Size Code Name
 1 2048 1050623 512.0 MiB EF00 EFI System Partition
[...]

이제 우리는:

  • 해당 EF00 파티션 삭제
  • 그 자리에 새로운 HFS+를 한 번 생성
Command (? for help): d
Partition number (1-3): 1
Command (? for help): n
Partition number (1-128, default 1): 1
Just leave defaults values in the sector phase
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300): AF00
Changed type of partition to 'Apple HFS/HFS+'
Command (? for help): w
Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!
Do you want to proceed? (Y/N): Y
OK; writing new GUID partition table (GPT) to /dev/sdd.
Warning: The kernel is still using the old partition table.
The new table will be used at the next reboot.
The operation has completed successfully.

이제 포맷되지 않은 HFS+ 파티션이 생겼습니다. 포맷하려면 몇 가지 도구가 필요합니다. 하지만 이러한 도구를 얻으려면 데비안 소스 목록을 apt에 추가해야 합니다.

$ echo "deb http://ftp.debian.org/debian unstable main contrib non-free" > /etc/apt/sources.list.d/debian.list
$ apt update
$ apt install hfsprogs

해당 파티션을 포맷할 수 있습니다:

$ mkfs.hfsplus /dev/sd{X}1 -v Kali
Initialized /dev/sd{X}1 as a 512 MB HFS Plus volume

이제 /etc/fstab을 편집해야 합니다. 파일:

$ gedit /etc/fstab

그러면 Gedit가 시작됩니다. 이 파일에서 다음 줄을 현지화하세요:

# /boot/efi는 설치 중에 /dev/sd{X}1에 있었습니다
UUID={XXXXXXX} /boot/efi vfat 기본값 0 1

삭제하세요.

이제 부팅 파티션을 마운트 해제하고 다음을 사용하여 지역화하세요.

$ mount | grep /boot/efi
/dev/sd{Y}1 on /boot/efi ...
$ umount /dev/sd{Y}1

그런 다음 이것을 실행하여 fstab 파일에 필요한 항목을 추가하십시오:

$ echo "UUID=$(blkid -o value -s UUID /dev/sd{X}1) /boot/efi auto defaults 0 0" >> /etc/fstab

이제 EFI 데이터에 새로 포맷된 HFS+ 파티션을 사용할 수 있도록 GRUB를 다시 설치해야 합니다.

$ mkdir -p /boot/efi/EFI/Kali
$ echo "This file is required for booting" > /boot/efi/EFI/Kali/mach_kernel
$ echo "This file is required for booting" > /boot/efi/mach_kernel
$ grub-install --target x86_64-efi --boot-directory=/boot --efi-directory=/boot/efi --bootloader-id=Kali

그런 다음 Mac 부트로더가 부팅할 수 있도록 부트로더 코드를 "축복"해야 합니다. 그러기 위해서는 hfsbless가 필요합니다. apt를 통해 사용할 수 없는 바이너리입니다. 문제 없습니다. 저장소를 복제하고 다음을 빌드하세요.

$ cd /root
$ git clone https://github.com/detly/mactel-boot
$ cd mactel-boot
$ make

그렇다면 축복해주세요:

./hfs-bless /boot/efi/EFI/Kali/System/Library/CoreServices/boot.efi

마지막 단계는 grub 구성을 생성하는 것입니다:

$ sed -i 's/GRUB_HIDDEN/#GRUB_HIDDEN/g' /etc/default/grub
$ sed -i 's/GRUB_TIMEOUT=10/GRUB_TIMEOUT=0.1/' /etc/default/grub
$ grub-mkconfig -o /boot/grub/grub.cfg

완벽해요! 이제 재부팅하면 ALT를 눌러 Mac 부트로더에 USB 스틱이 표시됩니다. .

Virtualbox를 통한 USB 가상화

Virtualbox(Mac OSX)를 통해 이 USB 스틱을 부팅해야 하는 경우 간단한 방법이 있습니다.

우선, USB 스틱의 섹터를 가리키는 VMDK 디스크를 생성해야 합니다. 이제 해당 디스크를 식별해 보겠습니다.

$ diskutil list
/dev/disk0 (internal):
 #: TYPE NAME SIZE IDENTIFIER
 0: GUID_partition_scheme 500.3 GB disk0
 1: EFI EFI 314.6 MB disk0s1
 2: Apple_APFS Container disk1 499.3 GB disk0s2
/dev/disk1 (synthesized):
 #: TYPE NAME SIZE IDENTIFIER
 0: APFS Container Scheme - +499.3 GB disk1
 Physical Store disk0s2
 1: APFS Volume Macintosh HD 222.0 GB disk1s1
 2: APFS Volume Preboot 22.4 MB disk1s2
 3: APFS Volume Recovery 519.9 MB disk1s3
 4: APFS Volume VM 3.2 GB disk1s4
/dev/disk3 (external, physical):
 #: TYPE NAME SIZE IDENTIFIER
 0: GUID_partition_scheme *32.0 GB disk3

우리의 경우에는 /dev/disk3.입니다. 계속하기 전에 마운트를 해제해 보겠습니다:

$ diskutil unmountDisk /dev/disk{X}

VirtualBox가 설치된 상태에서 다음을 실행하세요:

$ sudo VBoxManage internalcommands createrawvmdk -filename ~/Kali.vmdk -rawdisk /dev/disk{X}
$ chmod 777 ~/Kali.vmdk
$ chmod 777 /dev/disk{X}

완벽합니다. 이제 Virtualbox UI를 실행하고 다음 설정으로 새 머신을 생성하십시오:

Mac에서 EFI 부팅을 사용하여 USB에 Kali Linux 설치:가상화 팁이 포함된 단계별 가이드

VirtualBox가 디스크를 요청하면 이전에 생성된 VMDK를 가리켜 보겠습니다.

Mac에서 EFI 부팅을 사용하여 USB에 Kali Linux 설치:가상화 팁이 포함된 단계별 가이드

기기를 시작하기 전에 설정으로 이동하여 프로세스 수, 비디오, 메모리를 조정해 보세요.

중요한 것은 EFI 활성화를 설정하는 것입니다. 시스템> 마더보아에서 첫째.

Mac에서 EFI 부팅을 사용하여 USB에 Kali Linux 설치:가상화 팁이 포함된 단계별 가이드

이렇게 하면 EFI를 통해 부팅할 수 있습니다. 이제 가상 머신을 시작하고 즉시 F12를 누르세요. .

부팅 유지관리 관리자:를 선택하세요.

Mac에서 EFI 부팅을 사용하여 USB에 Kali Linux 설치:가상화 팁이 포함된 단계별 가이드

파일에서 부팅:을 선택합니다.

Mac에서 EFI 부팅을 사용하여 USB에 Kali Linux 설치:가상화 팁이 포함된 단계별 가이드

그런 다음 {SATA_DRIVE}> EFI> Kali> 시스템> 라이브러리> CoreServ를 선택합니다. 아이스> boot.efi

Mac에서 EFI 부팅을 사용하여 USB에 Kali Linux 설치:가상화 팁이 포함된 단계별 가이드

그리고 짜잔:

Mac에서 EFI 부팅을 사용하여 USB에 Kali Linux 설치:가상화 팁이 포함된 단계별 가이드

계속 지켜봐주세요 :)

무료로 코딩을 배우세요. freeCodeCamp의 오픈 소스 커리큘럼은 40,000명 이상의 사람들이 개발자로 취업하는 데 도움을 주었습니다. 시작하세요