And which one is suitable for mac os x 10.10? Mac users who have installed OS X Yosemite (10.10) have complained about compatibility issues with Adobe’s popular photo editing program Photoshop CS5. That leads to discussions among creatives including whether they should install Mac OS X considering much of their workload depends on. KU can automatically add/remove boot args: '-v' for verbose boot, 'kext-dev-mode=1' for load unsigned kexts in MAC OS X 'Yosemite' and 'rootless=0' for perform any repair permissions operation for system files in MAC OS X 'El Capitan' in com.apple.Boot.plist and Unbelievable!
Download the kext you want to install and place it on your Desktop. Download KextBeast from tonymacx86 website here. You will need to login with a free account on the site to be able to download the file. Run the KextBeast installer and click Continue twice.
'Single User' is a boot mode, you actually tells the unix shell that the OS should load only prompt (no GUI), and the local console login is the only login available (can't be logged on from the network),- Restart your computer
- Continuously press F8 until you see the Darwin boot prompt
- write '-s' without the quotation marks and press enter (for real mac do this instead)
- you will soon reach a prompt
- note the lines written to the console about fsck and mount
- write: /sbin/fsck -fy
- press enter and then the system should write:
** The volume XXX appears to be OK
or
***** FILE SYSTEM WAS MODIFIED *****
if it is the second option, then repeat the fsck command (6) until you get the first line saying the volume is OK - write: /sbin/mount - uw / this will mount your file system
- thats it you are in 'Single User'
Wednesday lunch time, I opened up my laptop and in the middle of writing an email my machine froze and after a few seconds rebooted. Uh oh, the system sat at the grey screen for a few seconds and then the dreaded folder with a question mark began flashing which means there was no bootable disk found.
Turned the machine off, turned it back on again, ah, a message that the machine had crashed and restarting once more it booted as usual, making it back into macOS before it did the same freeze and reset again. I ended up spending the rest of the day trying various things to get my data off the disk before the SSD stopped responding all together Wednesday night.
I thought to rule out file system issues first.
Booting single user mode and running fsck_apfs(8)
didn’t get very far when I first tried. SIGINFO
reported that bash was waiting meaning that it never got to executing fsck_apfs
.
Restarting and trying to boot in recovery mode to run the file system check using Disk Utility didn’t work out too well. Upon reaching the GUI, recovery mode began to spin, if things worked ok I would have been greeted with a file vault encrypted disk to unlock but it didn’t and the spinning spiral would go around endlessly, so it was back to single user mode.
Hackintosh Single User Mode Install Kexts Pc
In single user mode all data is accessible but the file systems are mounted read only with the exception of /private/var/vm which is writable. At the end of booting into single user mode, the system reports:To mount the root device as read-write:
$ /sbin/mount -X /
But the mount command on Catalina 10.15.7 has no such option, the old advised method of using -uw
instead of -X
still worked however.
While I was experimenting I noticed that I had spent a considerable amount of time in single user mode and the system never hard reset like when I booted normally.
I intended to copy the data to another machine, however ifconfig reported no interfaces.
I mistakenly thought that I could load the relevant kernel extensions and could slowly bring things up bit by bit that way. Except can’t do any of that because SIP prevents you. localhost:/ root# kextload /System/Library/Extensions/some.kext
/System/Library/Extensions/some.kext has invalid signature: Trust code is disabled.
Untrusted kexts are not allowed
Kext rejected due to invalid signature: <OSKext 0xSOMEHEX [0xSOMEHEX]> { URL = 'file:///System/Library/Extensions/some.kext', ID = 'com.apple.foo.bar' }
/System/Library/Extensions/some.kext failed security checks; failing.
Hackintosh Wifi Kext
I tried several times again to get back into recovery mode environment in order to disable SIP
using csrutil disable
from the terminal there, out of sheer luck the disk behaved long enough one time that I managed to get the disk unlocked and make it in. I disabled SIP and while I was there I checked the disk with Disk Utility. Things started off ok and while it was spending some time checking the Data volume it hard reset. This definitely wasn’t a file system issue and an indicator that the hardware is misbehaving, which meant it probably wouldn’t be long before I lost access to the data on there.
Back in single user mode I confirmed SIP was disabledlocalhost:/ root# csrutil status
System Integrity Protection status: disabled.
After working my way through loading what I thought were relevant extensions I gave up and started looking up how to bring up the system, I was trying to get either an Apple USB Ethernet adapter, Thunderbolt Gigabit adapter or the builtin Airport card to work.
To get the baseline system going you need to start kextd(8)
, notifyd(8)
, configd(8)
. Once diskarbitrationd(8)
is loaded, it pulls the relevant dependencies to get networking running.
launchctl load /System/Library/LaunchDaemons/com.apple.kextd.plist
launchctl load /System/Library/LaunchDaemons/com.apple.notifyd.plist
launchctl load /System/Library/LaunchDaemons/com.apple.configd.plist
launchctl load /System/Library/LaunchDaemons/com.apple.diskarbitrationd.plist
Intel I211 Hackintosh Kext
To configure your wireless card use airport(8)
which can be found at /System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport
I opted for the Thunderbolt Gigabit adapter as that was my fastest option, the interface would autoconf with DHCP/RS, and could be configured with just ifconfig(8)
but I couldn’t get an NFS share mounted which I now suspect was because I did not specify the use of a reserved port when mounting the share on the Mac.localhost:/ root# mount_nfs -o resvport my-nfs-server:/share /net
As I was racing against time I ended up cobbling together a USB disk which was HFS+ formatted and used rsync to clone my home directory. Since the system was in single user mode, new disks would not be auto mounted (that’s what diskarbitrationd
does normally) and issuing diskutil list
would not work. Without diskarbitrationd
loaded it complainsUnable to run because unable to use the DiskManagement framework.
Common reasons include, but are not limited to, the DiskArbitration framework being unavailable due to being booted in single-user mode.
and with diskarbitrationd
loaded it complainsCould not start up a DiskManagement session
You can instead use fstyp(8)
by pointing it at device nodes to find out the file system type on the other side of the device node.
Before connecting a disk, run ls /dev/disk*
to see what’s there already, attach the disk, repeat ls /dev/disk*
to see which new nodes have been created. Point fstyp
at those device nodes to find the correct one with the filesystem, in this case it was HFS.localhost:/ root# fstyp /dev/disk2s2
hfslocalhost:/ root# mount_hfs /dev/disk2s2 /net
I then began to rsync
my data to the external disk with rsync -av /Users/sme /net/
and after a while the disk I/O stopped and the kernel reportedIOAHCIBlockStorageDrive: could not recover SATA HDD after 5 attempts. terminating
completionRead: 1598: Failed read request b88146000, 4096: e00002c0
disk1s1: no such device.
Well, there’s the hardware misbehaving.
apfs_vnop_read: 7261: ### obj-id longnumber/anotherlongnumber retval 6 filesize 16388 offset 0 resid 16388 ###
)
rsync error: received SIGINT, SIGTERM, or SIGHUP (code 20) at /AppleInternal/BuildRoot/Library/Caches/com.apple.xbs/Sources/rsync/rsync54.120.1/rsync/rsync/rsync.c(244) [sender=2.6.9]
rsync: writefd_unbuffered failed to write 185 bytes [generator]: Broken pipe (32)
disk1s5: media not present.
nx_buf_bread:592: buf_biowait() failed, error = 6, b_error = 6, buf_flags_after_io = 0x101, crypto = [encrypted composite]
_vnode_dev_read:811: *** got err 6 reading blknum 54480 (num read errs: 1)
localhost:/ root# apfs_vfsop_sync:3357: /dev/disk1: failed to finish all transactions to sync() - Device not configured(6
At this point there was nothing else possible to do but power cycle.
Over several iterations I managed to get most of my home directory copied across to the external disk with rsync
before the SSD stopped responding all together.