Hogyan telepítsük Kali-t egy tiszta EFI rendszerindítóval ellátott USB-meghajtóra Mac-en (és dobjuk be a virtualizációt ...

Ez az oktatóanyag mindenkinek szól, aki egy teljes Kali telepítésű USB-meghajtót szeretne használni a Mac számítógépeivel. Ez nem célja a Live Kali telepítés kitartó végrehajtása.

Ha a Kali telepítését USB-meghajtóra hajtja végre, az a probléma, hogy Kali particionálja a lemezt a VFAT fájlrendszerrel. A Mac OS csak a HFS + partíciókat ismeri fel, a szükséges fájlokkal együtt.

Szüksége van tehát:

  • A Mac
  • USB-meghajtó Kali ISO telepítővel
  • Célzott USB-meghajtó, SD-kártya vagy külső SSD-meghajtó, ahová a Kalit telepíteni kívánja (16 GB és USB 3.0 ajánlott)

Ezt az oktatóanyagot erősen inspirálta ez az oktatóanyag, amely Kali számára megfelelő javításokkal rendelkezik. //medium.com/@mmiglier/ubuntu-installation-on-usb-stick-with-pure-efi-boot-mac-compatible-469ad33645c9

USB Live telepítés

Először telepítse a Kali-t egy USB-meghajtóra az oktatóanyag követésével. Nem fogom zavarni, hogyan folytassa ezt a lépést, de kezdje itt:

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

Ha készen áll, indítsa újra a Mac-et. Helyezze be mindkét USB-meghajtót, majd nyomja meg az ALT billentyűt, és válassza az EFI rendszerindítást a Live telepítő indításához.

A Kali telepítő különböző kérdéseket tesz fel az időzónáddal és a billentyűzetkiosztással kapcsolatban.

Addig folytassa, amíg meg nem kéri a lemezek particionálását, itt válassza a következőt: Kézi. Ezután válassza ki az USB célmeghajtót (ahová telepíteni kívánja a Kali-t). Különböző tényezők alapján ismerheti fel, például mérete alapján. Kattintson a Folytatás gombra : ezzel particionálja a meghajtót.

Most térjen vissza ugyanarra a képernyőre, és válassza ki az INGYENES TÉT az USB célmeghajtó alatt. Kattintson a Folytatás gombra, és válassza a Szabad terület automatikus particionálása lehetőséget. Kövesse az ajánlott opciót. Ezután kattintson a Particionálás befejezése gombra, és írja be a változtatást lemezre .

A telepítési folyamat az adatokat lemezre másolja. Várjon, amíg befejeződik (ez ~ 30 percet vesz igénybe).

Boot a GRUB Live-tól

Ha elkészült, a Mac újraindul, és újra meg kell nyomnia az ALT billentyűt . Válassza ki ismét az EFI indítást .

Amit most meg kell tennünk, az a telepített Kali rendszerünk betöltése a Live GRUB- on keresztül , mert a telepített rendszerünk nem rendelkezik a MacOS által felismerhető rendszerindítóval.

A GRUB betöltése után nyomja meg ac gombot a GRUB parancssori felület megszerzéséhez.

Most meg kell értenie, hogy melyik HD a Kali-telepítése. Ehhez, amikor a GRUB cli betöltődik, írja be az ls parancsot ; kiadja az USB stick és típusa ls újra.

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

Észre fogja venni, hogy eltűnt egy hd {X} : ez a meghajtó. Most meg kell találnia a gpt-jét. Valószínűleg ez a gpt2 , de csak azért, hogy biztos legyek benne, írja be:

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

Ha a parancs azt mondja, unicode..hogy ez a helyes gpt; próbáld meg másként a gpts-t . Most keresse meg a partíció UUID-jét, és jegyezze fel.

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

Most nem tudjuk GRUB-ra állítani a paramétereket az indításhoz (használja a tab billentyűt az automatikus kiegészítés használatához):

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

Ez indítsa el a Full Kali telepítést a Live GRUB segítségével. A bejelentkezési folyamat során felismerhető jelszóval megkülönböztetheti az élő környezettől.

Az EFI partíció javítása

Miután bejelentkezett a Kali telepítésébe, nyissa meg a terminált és írja be:

$ fdisk -l

és megtalálja a meghajtót.

Most nyisd meg a meghajtó particionálására a gdisk-et (alapértelmezés szerint a Kali telepítve van) (itt légy nagyon óvatos):

$ 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):

Nyomtassa ki a partíciós táblázatot, és ellenőrizze, hogy az első partíció típusa 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 [...]

Most nekünk kell:

  • törölje azt az EF00 partíciót
  • hozzon létre egy új HFS + -t egyszer a helyén
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.

Most van egy formázatlan HFS + partíciónk. A formázáshoz szükségünk van néhány eszközre; de ezeknek az eszközöknek a megszerzéséhez hozzá kell adnunk a Debian forráslistát az apt-hoz.

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

Formázhatjuk azt a partíciót:

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

Most szerkesztenünk kell az / etc / fstab fájlt:

$ gedit /etc/fstab

Ezzel elindul a Gedit. Ebben a fájlban lokalizálja ezeket a sorokat:

A # / boot / efi a / dev / sd {X} 1 fájlon volt a telepítés során

UUID = {XXXXXXX} / boot / efi vfat alapértelmezés szerint 0 1

és törölje őket.

Most távolítsa el a rendszerindító partíciót, lokalizálva:

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

Ezután futtassa ezt a szükséges bejegyzések hozzáadásához az fstab fájlba:

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

Now we have to reinstall GRUB so it can use the newly formatted HFS+ partition for its EFI data:

$ 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

We then need to “bless” the bootloader code, so that the Mac bootloader will boot it. To do that we need hfsbless binary that is not available via apt. No problem, just clone the repository and build:

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

Then bless:

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

The final step is to create the grub configuration:

$ 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

Perfecto! Now reboot and you should see your USB stick in the Mac bootloader by pressing ALT.

Virtualizing the USB via Virtualbox

If you ever need to boot this USB stick via Virtualbox (on Mac OSX), there is a simple trick to do that.

First of all, you’ve to create a VMDK disk that points to the sectors of your USB stick. So, let’s identify that disk:

$ 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

In our case, it is /dev/disk3. Let’s unmount before proceeding:

$ diskutil unmountDisk /dev/disk{X}

With VirtualBox installed, run:

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

Perfecto. Now, run Virtualbox UI and create a new machine with the following settings:

When VirtualBox asks you for a disk, let’s point to that VMDK created before:

Before starting up the machine, let’s go to Settings and adjust your process counts, video and memory.

The important things are to set Enable EFI under System > Motherboard.

This will allow you to boot via EFI. Now start the virtual machine and immediately press F12.

Select Boot Maintenance Manager:

Select Boot from file:

Then select {SATA_DRIVE} > EFI > Kali > System > Library > CoreServices > boot.efi

And, voilà:

Stay tuned :)