The following tutorial showcases how to burn *.iso
image to an external USB drive.
1. Determine The External Disk
diskutil list
The following output prints the available disks on the OS. The one with /dev/disk4 (external, physical):
in the end of the output is the attached USB drive.
user@mbp ~ % diskutil list
/dev/disk0 (internal, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *1.0 TB disk0
1: Apple_APFS_ISC Container disk1 524.3 MB disk0s1
2: Apple_APFS Container disk3 994.7 GB disk0s2
3: Apple_APFS_Recovery Container disk2 5.4 GB disk0s3
/dev/disk3 (synthesized):
#: TYPE NAME SIZE IDENTIFIER
0: APFS Container Scheme - +994.7 GB disk3
Physical Store disk0s2
1: APFS Volume macOS - Data 547.9 GB disk3s1
2: APFS Volume macOS 11.2 GB disk3s3
3: APFS Snapshot com.apple.os.update-... 11.2 GB disk3s3s1
4: APFS Volume Preboot 7.2 GB disk3s4
5: APFS Volume Recovery 1.0 GB disk3s5
6: APFS Volume VM 3.2 GB disk3s6
/dev/disk4 (external, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *62.7 GB disk4
1: Microsoft Basic Data 62.7 GB disk4s1
user@mbp ~ %
Be sure not to erase system drive.
Run the code before attaching the USB drive and after the USB drive is attached. Compare the outputs and determine which one is your external USB thumb drive.
2. Unmount The Drive
(assuming, for this example, the USB drive is /dev/disk4 - do not simply copy this, verify the correct path on your own system!):
diskutil unmountDisk /dev/disk4
3. Burn Image to USB Disk
Replace “/dev/diskX” with “/dev/rdiskX” (extra r
) to improve the write speeds.
$ sudo dd if=kali-linux-2025.3-live-amd64.iso of=/dev/rdiskX bs=4M status=progress
Troubleshoot
There is a chance you may receive an error when running the above command:
dd: invalid number: '4M'
ordd: bs: illegal numeric value
.
If this is the case, please change the4M
to be4m
.
Additionally, increasing the blocksize (bs) will speed up the write progress, but will also increase the chances of creating a bad USB drive. Using the given value on macOS/OS X has produced reliable images consistently.Another potential error will be that
status=progress
does not work on your version of macOS. If this is the case, remove this section and instead useCTRL+T
to measure status.
Once dd has finished imaging the drive, it will output something that looks like this:
893+1 records in
893+1 records out
3748147200 bytes transferred in 915.043994 secs (4096139 bytes/sec)
After DD completes, macOS/OS X may try to remount the USB device again. If so, you will get the same pop-up as before. You can safely remove the burned USB external disk.