Created
February 20, 2012 07:17
-
-
Save robbiet480/1868240 to your computer and use it in GitHub Desktop.
Enable TRIM for Mac
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
TRIM can be enabled by using the following Terminal commands. Copy these commands and run them in Terminal: | |
Backup the file that you’re about to patch: | |
sudo cp /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext/Contents/MacOS/IOAHCIBlockStorage /IOAHCIBlockStorage.original | |
Patch the file to enable TRIM support: | |
sudo perl -pi -e 's|(\x52\x6F\x74\x61\x74\x69\x6F\x6E\x61\x6C\x00).{9}(\x00\x51)|$1\x00\x00\x00\x00\x00\x00\x00\x00\x00$2|sg' /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext/Contents/MacOS/IOAHCIBlockStorage | |
Clear the kext caches: | |
sudo kextcache -system-prelinked-kernel | |
sudo kextcache -system-caches | |
Important: reboot your Mac! | |
To disable TRIM support in the future: | |
sudo perl -pi -e ‘s|(\x52\x6F\x74\x61\x74\x69\x6F\x6E\x61\x6C\x00).{9}(\x00\x51)|$1\x41\x50\x50\x4C\x45\x20\x53\x53\x44$2|sg’ /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext/Contents/MacOS/IOAHCIBlockStorage | |
Finally, if this does not work as expected, or if something goes wrong, simply restore the backup: | |
sudo cp /IOAHCIBlockStorage.original /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext/Contents/MacOS/IOAHCIBlockStorage | |
This patch simply edits a file called IOAHCIBlockStoage, removing a string that makes TRIM work for only Apple SSDs. | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment