Sep 30, 2016 Even though the el capitan installer says it is 6.08 GB which would make you think it should fit onto a dual layer dvd just like it can be done for yosemite, there is other invisible stuff copied over making it bootable which would make it much bigger than 6.08 GB.
- How To Edit Mac Install Dmg To Install Basesystem.dmg Mac
- How To Edit Mac Install Dmg To Install Basesystem.dmg Windows 7
If you’ve done any deployment work with OS X Lion, InstallESD.dmg is probably not a new concept for you. But just in case you haven’t, or just in case you need a quick refresher, with the release of OS X Lion, Apple completely changed its distribution method for Mac OS X. OS X Lion is only available via an Internet download through the Mac App Store. And although downloaded as an application from the Mac App Store, Install Mac OS X Lion.app, contained within it is the disk image that makes the OS X Lion installer magic happen: InstallESD.dmg.
InstallESD.dmg does more than just handle the initial Lion installation. Initially contained within it is also the disk image that forms the basis of Recovery HD. Because InstallESD.dmg is available via the web, users are able to reinstall Lion through Recovery HD or Lion Internet Recovery in worst-case scenarios without needing physical restore media.
Let’s take a deeper look at InstallESD.dmg, Recovery HD, and Lion Internet Recovery to see what they are, what they mean for you as a Mac Admin, and how they’re all related.
InstallESD.dmg
After downloading Lion from the Mac App Store, Install Mac OS X Lion.app is placed in the /Applications directory. InstallESD.dmg is located within the application’s Contents/SharedSupport directories.
InstallESD.dmg is the new-age Mac OS X retail DVD. As a Mac admin, you can use it to create an external bootable Lion install disk, build a NetInstall or NetRestore set, have it act as the Install DVD for an InstaDMG workflow, and more. A consumer installing Lion would have several pre-installation steps handled by the Install Mac OS X Lion application. After those completed, the installer would prepare InstallESD.dmg to be mounted as the boot volume. The computer would then restart and proceed with and finish the installation.
Looking inside of InstallESD.dmg, take note of two important files: Install Mac OS X Lion.app and BaseSystem.dmg. Yes, that is another Install Mac OS X Lion.app. That installer runs when booted from InstallESD.dmg. It is what actually installs Lion to the hard drive. BaseSystem.dmg is copied to the Recovery HD partition after it’s created during the Lion installation process. Let’s take a look at Recovery HD.
Recovery HD
As a Mac admin, you can rejoice in the fact that the days of keeping stacks of hardware-specific restore discs to reinstall Mac OS X are gone. Recovery HD is created during the Lion installation process as a very small hidden partition on the primary boot drive.
As mentioned earlier, BaseSystem.dmg can be found on Recovery HD, as shown below. Newer Mac models that support diskless Apple Hardware Test may also have a disk image for it contained within a hidden .diagnostics folder inside of the com.apple.recovery.boot folder.
When booted into Recovery HD, BaseSystem.dmg is mounted as the boot volume with the volume name “Mac OS X Base System”. This is shown in the com.apple.Boot.plist file (“rp” stands for root path).
The contents of BaseSystem.dmg are shown below.
In case you’re wondering, yes that is yet another Install Mac OS X Lion.app. That one runs when choosing to reinstall Lion when booted into Recovery HD. If you’re super clever, you might wish to customize the “Mac OS X Utilities” screen that is displayed when booted into Recovery HD (like the folks at Google have done). I’ll leave that to the true tinkerers, but taking a peek at the following application should get you started:
Because of Recovery HD’s small size, there is not enough room to store a copy of InstallESD.dmg within it. But thanks to its Internet availability, that’s not a problem. After authenticating with Apple and the iTunes store, the installer downloads a fresh copy of InstallESD.dmg disguised as a package. After download, the installer prepares InstallESD.dmg to be mounted as the boot volume, restarts the computer, and then continues with and finishes the installation.
It’s important to note that DHCP must be available for either a Recovery HD reinstallation of Lion, or a Lion Internet Recovery boot to function. Using Wireshark, I observed the process of reinstalling Lion through Recovery HD. There are far too many steps involved to list them all, but below are the ones I found to be most important. Note that I’m sure it’s possible that the random package names shown below can change, but they did remain consistent throughout my tests. It’s also safe to assume that the mirror names will vary by location, as they are Akamai mirrors. None of the following is officially documented by Apple; the implementation and details are subject to change at any time.
– After getting a DHCP address, osrecovery.apple.com is where it all begins. HTTP GET and POST requests are made to give the Mac a valid session cookie for the process. Some information about the Mac is sent back to Apple, including a model identifier and what appears to be a modified or encrypted version of the serial number.
– An HTTP GET request is made to a1166.phobos.apple.com for mzm.hgbvjzlz.pfpkg. This compressed package is what is responsible for performing the pre-installation checks to make sure the Mac meets the minimum system requirements for Lion. One of the more interesting pieces inside this package, and what allows Lion to be installed in a virtual machine, is this:
– An HTTP GET request is made to swscan.apple.com for Apple’s software update catalog.
– Various types of requests are made to iTunes (usually to ax.init.itunes.apple.com) to authenticate the user and ensure that Lion has been previously purchased. If it has not been previously purchased, the user won’t be eligible to reinstall through Recovery HD or Lion Internet Recovery.
– An HTTP GET request is made to a774.phobos.apple.com for MacOS_10_7_IncompatibleAppList.pkg. This package checks the system for any applications that are incompatible with Lion and moves them to an Incompatible Software folder during the installation. See http://support.apple.com/kb/HT3258 for more information.
– Finally, an HTTP GET request is made to a1166.phobos.apple.com for mzm.ajzbytae.pkg. I was unable to open this package after it downloaded, but can safely assume it is InstallESD.dmg. It is a 4.18 GB “package” and downloads during the installation step where the installer downloads “additional components” just before restarting.
I encourage you to packet capture the process yourself, whether it be through using a VM at home and sniffing your LAN traffic, or by using port mirroring on a switch. It’s interesting to observe just how many steps are involved behind the scenes. But what is even more interesting, is how Apple has created what appears to be globally available NetBoot over the Internet with Lion Internet Recovery.
Lion Internet Recovery
If for any reason Recovery HD isn’t available or otherwise becomes corrupted, Apple created Lion Internet Recovery as a last resort for users. It’s an EFI firmware function available on most Macs shipped in 2010 or later. It enables users to boot over the Internet to Apple’s servers which will eventually present Recovery HD through a downloaded copy of a BaseSystem.dmg equivalent.
Here’s a riddle: What looks like NetBoot, smells like NetBoot, even tastes a bit like NetBoot, but isn’t actually NetBoot? Lion Internet Recovery. Or rather, it’s not traditional NetBoot with BSDP, TFTP, etc. Almost all Lion Internet Recovery traffic is HTTP traffic.
Just like with Recovery HD, there are many steps involved in booting to Lion Internet Recovery, but below are the most important. None of the following is officially documented by Apple; the implementation and details are subject to change at any time.
– After getting a DHCP address, the process again begins with osrecovery.apple.com. An HTTP GET request with an HTTP User-Agent header of “InternetRecovery” is made to osrecovery.apple.com
– osrecovery.apple.com responds with an HTTP OK giving the Mac a valid session cookie
– An HTTP POST request is made to osrecovery.apple.com/InstallationPayload/RecoveryImage. Some information about the Mac is sent back to Apple, including a model identifier and what appears to be a modified or encrypted version of the serial number, just like with a Recovery HD boot.
– osrecovery.apple.com/InstallationPayload/RecoveryImage replies with an HTTP OK passing additional information back to the Mac, such as where to actually download the Recovery Image from which it will boot.
– An HTTP GET request is made to oscdn.apple.com for RecoveryImage.chunklist. From what I can tell, this file is a checksum of sorts for the recovery image. The actual request for the image, detailed in the next step, uses HTTP range headers. I assume that comparing what has already been downloaded to the contents of the chunklist allows the Mac to only download the parts of the image it requires. This was most likely implemented to handle any network disruptions that might occur during a Lion Internet Recovery boot.
– Finally, an HTTP GET request is made to oscdn.apple.com for the RecoveryImage itself, appropriately named RecoveryImage.dmg. With Lion Internet Recovery, RecoveryImage.dmg is synonymous with BaseSystem.dmg.
Once booted to Lion Internet Recovery, the steps the installer performs to reinstall Lion are identical to those mentioned earlier that occur during a standard Recovery HD initiated reinstallation.
Lion Internet Recovery is an impressive feat of engineering. Again, I would strongly encourage you to packet capture the process to see how it works for yourself. If you’d like to see the full packet capture output from my Lion Internet Recovery boot, it is available here.
Putting It All Together
InstallESD.dmg, contained within the Mac App Store downloadable installer, is at the heart of Recovery HD and Lion Internet Recovery. Recovery HD is there when your users need it, and Lion Internet Recovery is there as a last resort just in case Recovery HD is not. Both rely on BaseSystem.dmg (or RecoveryImage.dmg in the case of Lion Internet Recovery) to provide them with a minimal interface with a few utilities and the ability to reinstall Lion. When choosing to reinstall Lion, either from Recovery HD or Lion Internet Recovery, the installer downloads the latest copy of InstallESD.dmg from the Internet in order to proceed with and finish the reinstallation.
Hopefully after reading this article, the Lion installation and recovery processes have become clearer. Understanding the relationships between them and InstallESD.dmg is critical for deploying Lion and understanding the recovery options available to your users. Hopefully they won’t need to use Recovery HD nor Lion Internet Recovery nearly as many times as I needed to in order to write this article. Fortunately for me, my ISP doesn’t have a bandwidth cap.
DMG is a file of Apple Disk Image. The Apple Disk Images are disk image files commonly used by the Mac OS X operating system. When opened, an Apple disk image is 'mounted' as a volume within the Finder. Several Apple proprietary disk image formats can be used to create these images, including the Universal Disk Image Format (UDIF) and the New Disk Image Format (NDIF). Apple disk images usually have the .dmg file extension.
Apple disk images allow secure password protection as well as file compression and hence serves both security and file distribution functions; they are most commonly used to distribute software over the Internet.
Universal Disk Image Format (UDIF) is the native disk image format for Mac OS X. Disk images in this format typically have a .dmg extension. New Disk Image Format (NDIF) was the previous default disk image format in Mac OS 9, and disk images with this format generally have a .img (not to be confused with raw .img disk image files) or .smi file extension. Files with the .smi extension are actually applications that mount an embedded disk image, thus a 'Self Mounting Image', and are intended only for Mac OS 9 and earlier. A previous version of the format, intended only for floppy disk images, is usually referred to as 'Disk Copy 4.2' format, after the version of the Disk Copy utility that was used to handle these images. A similar format that supported compression of floppy disk images is called DART. Apple disk image files are published with a MIME type of application/x-apple-diskimage.
Different file systems can be contained inside these disk images, and there is also support for creating hybrid optical media images that contain multiple file systems. Some of the file systems supported include Hierarchical File System (HFS), HFS Plus, File Allocation Table (FAT), ISO9660 and Universal Disk Format (UDF).
Open/Extract DMG File on Windows
Easy 7-Zip opens/extracts DMG file easily on Windows. The Easy 7-Zip was developed based on 7-Zip. 7-Zip is a famous open source file archiver. The Easy 7-Zip is an easy-to-use version of 7-Zip. The open source freeware keeps all features of 7-Zip and adds a few useful features that makes the software more user-friendly.
Easy 7-Zip works on Windows 10/8.1/8/7/Vista/2008/2003/XP/2000 (both 32-bit and 64-bit compatible).
- Free Download Easy 7-Zip
- Install Easy 7-Zip by step-by-step instructions
- The installation will associate DMG with Easy 7-Zip automatically
- Double-click on DMG file to open DMG file with Easy 7-Zip
- Alternatively, Right-click on DMG file on Windows Explorer
- Done
You will see files or folders within the DMG file then, click button Extract to extract the DMG file.
And then, choose Extract files..., Extract Here, or Extract to 'folder' to extract the DMG file.
Easy 7-Zip Download Links:
You can install and use other alternative freeware that opens/extracts DMG file without burning the DMG file to disc. For example:
- Free DMG Extractor
- HFSExplorer
- PeaZip
Open/Extract DMG File on Mac
B1 Free Archiver opens/extracts DMG file on Mac. B1 Free Archiver is a free software for creating archive folder and extracting archive file. B1 Archiver works on all platforms - Windows, Linux, Mac and Android. The freeware supports most popular formats including DMG.
B1 Free Archiver is compatible with:
- Mac OS X 10.9 Mavericks
- Mac OS X 10.8 Mountain Lion
- Mac OS X 10.7 Lion
- Mac OS X 10.6 Snow Leopard
Alternative freeware that opens/extracts DMG file on Mac.
- Apple Disk Utility
- Keka
- GUI Tar
Open/Extract DMG File on Linux
You can use command mount to mount DMG file as a virtual drive.
First, you must login as a root user, and then create a directory for DMG image
# mkdir -p /mnt/macimage |
Use mount command as follows to mount DMG file called image.dmg:
# mount -o loop -t hfsplus image.dmg /mnt/macimage |
If the DMG is HFS file system, use:
# mount -o loop -t hfs image.dmg /mnt/macimage |
Change directory to list files stored inside an DMG image:
# cd /mnt/macimage # ls -l |
Unmount the DMG image, type:
# umount /mnt/macimage |
Alternatively, you can use p7zip to extract the DMG file. p7zip is the Unix command-line port of 7-Zip, a file archiver that archives with high compression ratios.
Install p7zip-full on CentOS and Fedora
# yum install p7zip-full |
Install p7zip-full on Debian and Ubuntu
How To Edit Mac Install Dmg To Install Basesystem.dmg Mac
$ sudo apt-get install p7zip-full |
List directories and files in DMG file
$ 7z l image.dmg |
Extract DMG file on Linux
$ 7z x image.dmg |