Symptoms
Users experiencing the com.apple.launchd.peruser crash loop may observe the following:
- Repeated system freezes or slow performance.
- Pop-up error messages indicating 'com.apple.launchd.peruser' has crashed repeatedly.
- Console logs filled with entries like 'com.apple.launchd.peruser: (pid) exited with code 1' or 'crash: com.apple.launchd.peruser (repeated crash)'.
- Kernel panics or unexpected restarts, especially during login.
- Certain user applications failing to launch or crashing immediately.
Root Causes
The peruser launchd process manages user-level daemons and agents. Common triggers include:
- Corrupt or misconfigured launch agent plist files: Third-party applications (e.g., Adobe, Microsoft Office, or antivirus) may install plists with syntax errors or invalid paths.
- Incompatible launch agents after macOS updates: System updates can break compatibility with older user agents.
- Damaged user preferences or caches: Corrupt ~/Library/Preferences or ~/Library/Caches can cause launchd to crash.
- Malware or adware: Malicious agents disguised as legitimate processes can trigger crashes.
- File permission issues: Incorrect permissions on user library folders can prevent launchd from reading plists.
Step-by-Step Fix
1. Boot into Safe Mode
- Restart your Mac and hold the Shift key immediately after the chime.
- Release when the login window appears (may take longer). Safe Mode disables all user launch agents.
- If the crash stops, the issue is likely a user launch agent.
2. Check Console Logs
- Open Console from Applications > Utilities.
- Search for 'launchd' or 'peruser' in the search bar.
- Identify the specific process crashing (e.g., 'com.adobe.AdobeCreativeCloud.plist').
3. Disable Suspicious Launch Agents
- Open Terminal.
- Navigate to user launch agents:
cd ~/Library/LaunchAgents - List all plists:
ls -la - Move suspected plist to desktop (temporarily):
mv com.suspect.plist ~/Desktop/ - Restart normally. If fixed, delete or reinstall the offending app.
4. Repair Permissions (macOS Mojave and earlier)
- Boot into Recovery Mode (Command+R at startup).
- Open Terminal from Utilities menu.
- Run:
diskutil resetUserPermissions / $(id -u)(replace with your user ID if needed). - Restart.
For macOS Catalina and later, permissions are managed automatically; use First Aid in Disk Utility instead.
5. Clear User Caches and Preferences
- In Finder, press Cmd+Shift+G and enter
~/Library/Caches. - Delete contents of folders related to crashing apps (or entire folder if unsure).
- Also delete
~/Library/Preferences/com.apple.launchd.plist(it will regenerate). - Restart.
6. Create a New User Account
- Go to System Settings > Users & Groups.
- Add a new administrator account.
- Log out and log into the new account. If no crash, the original user profile is corrupted.
- Migrate data using Migration Assistant or manually.
Alternative Fixes
- Reinstall macOS: Use Recovery Mode to reinstall without erasing data. This replaces system launchd files.
- Use EtreCheck: Free tool to scan for problematic launch agents and kernel extensions.
- Remove third-party antivirus: Some security software installs launch agents that conflict with launchd.
Prevention
- Regularly update macOS and third-party apps to ensure compatibility.
- Avoid installing unnecessary launch agents; review permissions during app installation.
- Periodically clean ~/Library/LaunchAgents of unused plists.
- Use Activity Monitor to monitor launchd resource usage.
- Back up with Time Machine before major updates.
By following these steps, you can resolve the com.apple.launchd.peruser crash loop and restore system stability. For persistent issues, consult Apple Support.