{
	"id": "956ceff5-643a-4890-8f24-054ecbed0391",
	"created_at": "2026-04-06T03:36:51.187298Z",
	"updated_at": "2026-04-10T13:12:26.612334Z",
	"deleted_at": null,
	"sha1_hash": "148246ade756f12d7fb013ff4fae6a4b1f88644f",
	"title": "load or unload daemons with launchd in macOS",
	"llm_title": "",
	"authors": "",
	"file_creation_date": "0001-01-01T00:00:00Z",
	"file_modification_date": "0001-01-01T00:00:00Z",
	"file_size": 58117,
	"plain_text": "load or unload daemons with launchd in macOS\r\nArchived: 2026-04-06 02:10:34 UTC\r\nSS64\r\nmacOS\r\nHow-to\r\nlaunchctl\r\nInterfaces with launchd to load, unload daemons/agents and generally control launchd. launchctl supports taking\r\nsubcommands on the command line, interactively or even redirected from standard input.\r\nSyntax\r\n launchctl [subcommand [arguments ...]]\r\nSpecifiers (Target domain/service)\r\nSubCommands\r\nMore SubCommands\r\n.plist locations\r\nEvery launchd task has a corresponding .plist file.\r\nSystem tasks will run whenever the system is running, even if no user is logged in. They will be started\r\nwith \"root\" privileges.\r\n/Library/LaunchDaemons/\r\nSystem tasks may also be setup to run if ANY user is logged in:\r\n/Library/LaunchAgents/\r\nUser tasks will run only if the user is logged in, and will be executed with the privileges of that user:\r\n~/Library/LaunchAgents/\r\nFiles\r\n~/Library/LaunchAgents  Per-user agents provided by the user.\r\n/Library/LaunchAgents    Per-user agents provided by the administrator.\r\n/Library/LaunchDaemons  System wide daemons provided by the administrator.\r\nhttps://ss64.com/osx/launchctl.html\r\nPage 1 of 4\n\n/System/Library/LaunchAgents    macOS Per-user agents.\r\n/System/Library/LaunchDaemons  macOS System wide daemons.\r\nlaunchd no longer loads configuration files from the network\r\nExit Codes\r\nlaunchctl will exit with status 0 if the subcommand succeeded.\r\nOtherwise, it will exit with an error code that can be given to the error subcommand to be decoded into\r\nhuman-readable form.\r\nThe syntax for launchctl changed in macOS 10.10 (Yosemite) the examples below show both the old and new\r\nsyntax for starting and stopping launch scripts (services). The new syntax generally does not require sudo.\r\nExamples\r\nDisplay the launch scripts for all users that are currently loaded/running (legacy syntax):\r\n$ sudo launchctl list\r\nDisplay the launch scripts that are currently loaded for user ID 504 (new syntax):\r\n$ launchctl print gui/504\r\nDisplay the launch scripts that are currently loaded/running for root:\r\n$ launchctl print system\r\nDisable the Amazon Music App daemon, to re-enable this, replace unload with load in the command:\r\n$ launchctl unload ~/Library/LaunchAgents/com.amazon.music.plist\r\nTo make this permanent edit that .plist file and change KEEP ALIVE and LAUNCH AT LOAD to\r\nFALSE. Then lock the file. This will prevent the Amazon app from running at all.\r\nRestart the SMB service (legacy syntax):\r\n# stop\r\nsudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.smbd.plist\r\n# start\r\nsudo launchctl load -w /System/Library/LaunchDaemons/com.apple.smbd.plist\r\nLoad SMB preferences:\r\nsudo launchctl load -w /System/Library/LaunchDaemons/com.apple.smb.preferences.plist\r\nDisable Adobe CC services, to re-enable this, replace unload with load in the command:\r\n$ launchctl unload -w /Library/LaunchAgents/com.adobe.AdobeCreativeCloud.plist\r\nhttps://ss64.com/osx/launchctl.html\r\nPage 2 of 4\n\nEnable remote SSH login (legacy syntax):\r\n$ sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist\r\nEnable remote SSH login for login 504 (new syntax):\r\n$ launchctl bootstrap gui/504 /System/Library/LaunchDaemons/ssh.plist\r\nDisable remote SSH login (legacy syntax):\r\n$ sudo launchctl unload -w /System/Library/LaunchDaemons/ssh.plist\r\nDisable remote SSH login for login 504 (new syntax):\r\n$ launchctl bootout gui/504 /System/Library/LaunchDaemons/ssh.plist\r\nDisable the macOS Notification Centre (legacy syntax):\r\n$ launchctl unload -w /System/Library/LaunchAgents/com.apple.notificationcenterui.plist\r\n$ killall NotificationCenter\r\nDisable the macOS Notification Centre for login 504 (new syntax):\r\n$ launchctl bootout gui/504 /System/Library/LaunchAgents/com.apple.notificationcenterui.plist\r\n$ killall NotificationCenter\r\nAn alternative is to turn on the Notification “Do Not Disturb” from the Menu Bar of macOS which lasts\r\nfor 1 day.\r\nRe-enable the macOS Notification Centre (legacy syntax):\r\n$ launchctl load -w /System/Library/LaunchAgents/com.apple.notificationcenterui.plist\r\nThen double-click \"/System/Library/CoreServices/Notification Center” to launch it again.\r\nRe-enable the macOS Notification Centre for login 504 (new syntax):\r\n$ launchctl bootstrap gui/504 /System/Library/LaunchAgents/com.apple.notificationcenterui.plist\r\nThen double-click \"/System/Library/CoreServices/Notification Center” to launch it again.\r\n“A good rule for rocket experimenters to follow is this: always assume that it will explode” ~ 'Astronautics' issue\r\n38, October 1937\r\nRelated macOS commands\r\nLocal man page: launchctl - Command line help page on your local machine.\r\ncsrutil - Configure System Integrity Protection (SIP).\r\nsysctl - Get or set kernel state.\r\nnvram - Manipulate firmware variables.\r\nhttps://ss64.com/osx/launchctl.html\r\nPage 3 of 4\n\nThe macOS equivalent of Windows services is Launchd.\r\nThe macOS equivalent of services.msc on Windows is launchctl.\r\nLaunchd.info - Description of launchd, agents and daemons.\r\nLaunched - An online launchd plist generator.\r\nLaunchControl - A GUI .plist editor with features to create, manage and debug Mac services.\r\nThe daemons managed by launchd can be on demand or can be triggered periodically (this is configurable in\r\nlaunchd.plist).\r\nlaunchd.plist(5), launchd.conf(5), launchd(8).\r\nCopyright © 1999-2026 SS64.com\r\nSome rights reserved\r\nSource: https://ss64.com/osx/launchctl.html\r\nhttps://ss64.com/osx/launchctl.html\r\nPage 4 of 4",
	"extraction_quality": 1,
	"language": "EN",
	"sources": [
		"MITRE"
	],
	"origins": [
		"web"
	],
	"references": [
		"https://ss64.com/osx/launchctl.html"
	],
	"report_names": [
		"launchctl.html"
	],
	"threat_actors": [],
	"ts_created_at": 1775446611,
	"ts_updated_at": 1775826746,
	"ts_creation_date": 0,
	"ts_modification_date": 0,
	"files": {
		"pdf": "https://archive.orkl.eu/148246ade756f12d7fb013ff4fae6a4b1f88644f.pdf",
		"text": "https://archive.orkl.eu/148246ade756f12d7fb013ff4fae6a4b1f88644f.txt",
		"img": "https://archive.orkl.eu/148246ade756f12d7fb013ff4fae6a4b1f88644f.jpg"
	}
}