MacOS – How to repair permissions after removing the “wheel” group from the hard drive

command linemacossingle-usersnow leopard

Is there a command in Single User Mode to recover/reinstall the start-up wheel (with root its user access).

I removed wheel as a group from any file/folder it had permissions for or access to. I didn't just change the permission, I actually clicked the (-).

enter image description here

I thought it was a hipster nickname for an actual user from the previous owner. Stupid, I know.

The problem is that without the start-up wheel, literally every reboot, restart, recover attempt gets hung up at the screen with the Apple and the spinning wheel. The only mode or screens I can access are Single User or Verbose (which can't reboot) because they are the only two that don't run through the traditional start-up path (spinning wheel).

I've tried every key +power button combo listed anywhere. No safe mode, no recovery, no boot from another drive…nothing.

System specs:

MacBook Pro, Mac OS X 10.6.8

Best Answer

This not-really-an-answer answer probably doesn't solve your problem, though the result is so astounding/interesting not to dump it in the comment section:

I set up a virtual machine with Snow Leopard Server (10.6.8). After deleting (not just disabling rwx!) all wheel group permissions of /bin, /sbin, /private, /System and all subsequent files and folders as well as those of all relevant folders in /Library with either an admin or the root account and afterwards totally removing the group wheel with the workgroup manager, the system still boots properly. Some apps don't work properly (e.g. Terminal in the admin account; it still works in the root account).

Consequently I can't reproduce your problem.

You may try the following in Single User Mode:

At the prompt enter:

/sbin/fsck -fy
/sbin/mount -uw /
launchctl load /System/Library/LaunchDaemons/com.apple.notifyd.plist
launchctl load /System/Library/LaunchDaemons/com.apple.diskmanagementd.plist
launchctl load /System/Library/LaunchDaemons/com.apple.securityd.plist
launchctl load /System/Library/LaunchDaemons/com.apple.configd.plist
launchctl load /System/Library/LaunchDaemons/com.apple.diskarbitrationd.plist
diskutil repairPermissions /

If the loading of com.apple.configd.plist doesn't find an end you may just enter launchctl load /System/Library/LaunchDaemons/com.apple.diskarbitrationd.plist or after entering ctrlC continue with launchctl load /System/Library/LaunchDaemons/com.apple.diskarbitrationd.plist

If you don't get a new prompt :/ root# after waiting some time, you may just enter the next command. You may also modify the sequence of the five load commands. I needed three attempts to get that working.

You should now see a wall of notifications. It should take about 20-30 minutes to repair everything.