Editing Install
Warning: You are not logged in.
Your IP address will be recorded in this page's edit history.The edit can be undone.
Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 8: | Line 8: | ||
$ md5 OpenZFS_on_OS_X_*.dmg | $ md5 OpenZFS_on_OS_X_*.dmg | ||
− | $ | + | $ sha1sum OpenZFS_on_OS_X_*.dmg |
− | $ | + | $ openssl dgst -sha256 OpenZFS_on_OS_X_*.dmg |
Open the .dmg file. | Open the .dmg file. | ||
Line 18: | Line 18: | ||
Follow the prompts. | Follow the prompts. | ||
− | |||
− | |||
If you ever want to uninstall, follow the instructions for [[Uninstall#Uninstalling_a_release_version|uninstalling a release version]]. | If you ever want to uninstall, follow the instructions for [[Uninstall#Uninstalling_a_release_version|uninstalling a release version]]. | ||
Line 25: | Line 23: | ||
== Installing from source == | == Installing from source == | ||
===Initial installation from source=== | ===Initial installation from source=== | ||
− | + | (Adapted from an [http://zerobsd.tumblr.com/post/62586498252/os-x-with-zfs article by ZeroBSD].) | |
− | + | ||
− | + | ||
− | + | ||
Before doing anything else, please set your boot-args. | Before doing anything else, please set your boot-args. | ||
− | On | + | On OS X El Capitan (10.11), OS X Mavericks (10.9), and OS X Mountain Lion (10.8) : |
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
sudo nvram boot-args="-v keepsyms=1" | sudo nvram boot-args="-v keepsyms=1" | ||
Line 43: | Line 38: | ||
− | This will take effect the next time you reboot. The argument <code>-v</code> will make your boot screen verbose instead of just showing the Apple logo, the argument <code>keepsyms=1</code> will make your panic reports more useful for us, and the argument <code>kext-dev-mode=1</code> (OS X Yosemite ONLY) will allow you to load your custom-built, unsigned kexts kernel extensions. Note that as of OS X El Capitan, kext-dev-mode is obsolete and does nothing. If you are on | + | This will take effect the next time you reboot. The argument <code>-v</code> will make your boot screen verbose instead of just showing the Apple logo, the argument <code>keepsyms=1</code> will make your panic reports more useful for us, and the argument <code>kext-dev-mode=1</code> (OS X Yosemite ONLY) will allow you to load your custom-built, unsigned kexts kernel extensions. Note that as of OS X El Capitan, kext-dev-mode is obsolete and and does nothing. If you are on OS X El Capitan, you should remove kext-dev-mode from your boot-args to avoid confusion. |
If you are a developer, you may want <code>debug=0x144</code> in your boot-args as well, as explained here: [[Development]] | If you are a developer, you may want <code>debug=0x144</code> in your boot-args as well, as explained here: [[Development]] | ||
− | + | For OS X El Capitan (10.11), you also need to boot into the Recovery OS (either the Recovery partition or bootable OS X install media for 10.11) and run | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | For | + | |
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
csrutil disable | csrutil disable | ||
Line 65: | Line 53: | ||
The latter will allow you to load your custom-built, unsigned kernel extensions, while keeping the rest of System Integrity Protection (SIP) in place. | The latter will allow you to load your custom-built, unsigned kernel extensions, while keeping the rest of System Integrity Protection (SIP) in place. | ||
(Depending on your needs, other options you may want are <code>--without fs</code>, <code>--without debug</code>, <code>--without dtrace</code>, or <code>--without nvram</code>. If you specify all of them, that is equivalent to <code>csrutil disable</code>. The <code>--without</code> option takes a comma-delimited list or can be specified multiple times: <code>--without kext,debug,dtrace</code> is equivalent to <code>--without kext --without debug --without dtrace</code>). | (Depending on your needs, other options you may want are <code>--without fs</code>, <code>--without debug</code>, <code>--without dtrace</code>, or <code>--without nvram</code>. If you specify all of them, that is equivalent to <code>csrutil disable</code>. The <code>--without</code> option takes a comma-delimited list or can be specified multiple times: <code>--without kext,debug,dtrace</code> is equivalent to <code>--without kext --without debug --without dtrace</code>). | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
If you have any other implementation of ZFS installed, you must uninstall it and reboot before proceeding further. Similarly, if you have installed the O3X installer version, please follow the [https://openzfsonosx.org/wiki/Uninstall uninstallation directions] before proceeding. | If you have any other implementation of ZFS installed, you must uninstall it and reboot before proceeding further. Similarly, if you have installed the O3X installer version, please follow the [https://openzfsonosx.org/wiki/Uninstall uninstallation directions] before proceeding. | ||
Line 79: | Line 60: | ||
* [https://developer.apple.com/xcode/ Xcode] (from [http://itunes.apple.com/us/app/xcode/id497799835?ls=1&mt=12 Mac App Store] or https://developer.apple.com/downloads/index.action) | * [https://developer.apple.com/xcode/ Xcode] (from [http://itunes.apple.com/us/app/xcode/id497799835?ls=1&mt=12 Mac App Store] or https://developer.apple.com/downloads/index.action) | ||
* Xcode Command Line Tools (https://developer.apple.com/downloads/index.action) | * Xcode Command Line Tools (https://developer.apple.com/downloads/index.action) | ||
− | * [http://brew.sh/ Homebrew] (or [http://www.macports.org/ MacPorts]) | + | * [http://brew.sh/ Homebrew] (or [http://www.macports.org/ MacPorts]) |
− | Note: Xcode 6.3 or later is now required to build due to Broadwell CPU support requirements. | + | Note: Xcode 6.3 or later is now required to build due to Broadwell CPU support requirements. |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
To install Homebrew: | To install Homebrew: | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | + | ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" | |
</syntaxhighlight> | </syntaxhighlight> | ||
Line 317: | Line 294: | ||
# if they they still have not loaded automatically | # if they they still have not loaded automatically | ||
− | cd | + | cd /Library/Extensions |
sudo kextload spl.kext | sudo kextload spl.kext | ||
sudo kextload -d spl.kext zfs.kext | sudo kextload -d spl.kext zfs.kext | ||
Line 346: | Line 323: | ||
cd ~/Developer | cd ~/Developer | ||
− | sudo cp - | + | sudo cp -r zfs/module/zfs/zfs.kext /tmp/o3x/ |
− | sudo cp - | + | sudo cp -r spl/module/spl/spl.kext /tmp/o3x/ |
cd /tmp/o3x | cd /tmp/o3x |