- 1. Format
- 2. Examples
- 1. Newer IPSW
- 2. Older IPSW
- 1. Newer IPSW
IPSW files are the core of the iDevice update/restore system, next to OTA updates. An abbreviation of "iPod Software," IPSW files are, despite their name, for more than just iPods. Also, despite existing since the second generation iPod Classic, the internal structure of IPSW files for iDevices is very different from those for "legacy" iPods.
Format
IPSW files, at least for iDevices, are nothing more than renamed ZIP files. As such, they can be opened using any ZIP program, but some may require the extension to be changed to .zip first.
The files follow a very structured format; The root filesystem, ramdisks, kernelcache, and manifests are in the root directory, while everything else is underneath the Firmware folder.
Examples
Following are two IPSW files, the former being from iOS 12.0 (build 16A366 for the iPhone XR, and the latter being from iPhone OS 2.0 (build 5A347) for the original iPhone.
Newer IPSW
This is the internal structure of the IPSW for the 12.0 (build 16A366) build for the iPhone XR (iPhone11,8).
048-10776-223.dmg(root filesystem)048-43107-180.dmg(update ramdisk)048-42497-181.dmg(restore ramdisk)BuildManifest.plistkernelcache.release.iphone11bRestore.plistFirmware048-10776-223.dmg.trustcache048-15811-206.dmg.trustcache048-16246-204.dmg.trustcacheICE18-1.00.07.Release.bbfwICE18-1.00.07.Release.bbfw.plistN841_CallanFirmware.im4pN841_Multitouch.im4pSmartIOFirmwareT8020.im4pvinyl_05.vnlfwvinyl_05.plistagxall_flashapplelogo@1792~iphone.im4pbatterycharging0@1792~iphone.im4pbatterycharging1@1792~iphone.im4pbatteryfull@2x~iphone.im4pbatterylow0@2x~iphone.im4pbatterylow1@2x~iphone.im4pDeviceTree.n841ap.im4pDeviceTree.n841ap.im4p.plistglyphplugin@1792~iphone-lightning.im4piBoot.n841.RELEASE.im4piBoot.n841.RELEASE.im4p.plistLLB.n841.RELEASE.im4pLLB.n841.RELEASE.im4p.plistlowpowermode@1792~iphone-lightning.im4precoverymode@1792~iphone-lightning.im4psep-firmware.n841.RELEASE.im4psep-firmware.n841.RELEASE.im4p.plist
aneAOPavedfuiBEC.n841.RELEASE.im4piBEC.n841.RELEASE.im4p.plistiBSS.n841.RELEASE.im4piBSS.n841.RELEASE.im4p.plist
ispMaggieSavageSavage.B0-Dev.fwSavage.B0-Dev.fw.plistSavage.B0-Dev.vt.fwSavage.B0-Dev.vt.fw.plistSavage.B0-Prod.fwSavage.B0-Prod.fw.plistSavage.B0-Prod.vt.fwSavage.B0-Prod.vt.fw.plistSavage.B2-Dev.fwSavage.B2-Dev.fw.plistSavage.B2-Dev.vt.fwSavage.B2-Dev.vt.fw.plistSavage.B2-Prod.fwSavage.B2-Prod.fw.plistSavage.B2-Prod.vt.fwSavage.B2-Prod.vt.fw.plistSavage.BA-Dev.fwSavage.BA-Dev.fw.plistSavage.BA-Prod.fwSavage.BA-Prod.fw.plist
StockholmStockholm5.RELEASE.sefwStockholm5.RELEASE.sefw.plist
usrlocal(empty folder)
WirelessPowerYonkersYonkers.1A01_2A01_2201_3201_Dev.fwYonkers.1A01_2A01_2201_3201_Dev.fw.plistYonkers.1A01_2A01_2201_3201_Prod.fwYonkers.1A01_2A01_2201_3201_Prod.fw.plistYonkers.EA01_F201_Dev.fwYonkers.EA01_F201_Dev.fw.plistYonkers.EA01_F201_Prod.fwYonkers.EA01_F201_Prod.fw.plist
Older IPSW
Here is the internal structure of the IPSW for the 2.0 (build 5A347) build for the original iPhone (iPhone1,1). Note how fewer files there are compared to the newer one.
018-3785-2.dmg(root filesystem)018-3786-2.dmg(restore ramdisk)kernelcache.release.s5l8900xRestore.plistFirmwareall_flashdfuiBEC.m68ap.RELEASE.dfuiBSS.m68ap.RELEASE.dfuWTF.m68ap.RELEASE.dfuWTF.s5l8900xall.RELEASE.dfu