Managing and removing startup processes on OSX Lion

My Startup Items for my username (i am admin) shows only dropbox - yet a look at my processes (in activity monitor) shows other helper processes from Adobe, Lexmark, etc, etc.

Where can I see and manage these processes that are being launched on startup?

update

I found a couple in LaunchAgents - Steam and VirtualBox. I've just looked at my activity again and "Seagate Drive Gauge" is showing - I have checked the programs, is there any way to find where this process is being launched from!? LaunchDaemons doesn't exist and startupitems is empty.

update 2

Great stuff, found the PID and looked it up on ps, and it is:

/Library/Application Support/Seagate/Seagate Storage Gauge.app/Contents/MacOS/Seagate Storage Gauge -doautolnch /

BUT - how do I find where that is being called from?


Solution 1:

Take a look at the following folders:

  • /Library/StartupItems
  • ~/Library/StartupItems (if you have one)
  • /Library/LaunchDaemons
  • /Library/LaunchAgents
  • ~/Library/LaunchAgents (if you have one)

You should be able to figure out what the StartupItems do by name, but Google them if you're curious.

You can figure out exactly what the Launch Daemons and Launch Agents do by peeking inside their plist files. They'll usually contain a path to something, like a software updater.

As for removing the ones you don't want:
If you see something for a program you've deleted or uninstalled, by all means get rid of it.

If you see something for a program you do still have installed, be careful. These startup items can be as unimportant as an autoupdater or compatibility check, but it's entirely possible that the parent app needs the Item, Daemon, or Agent to run.

So, here's my advice: If you see something from an app(s) (or drivers, etc.) you do have installed, check that app's preferences to see if it lets you disable the function that requires the startup item. If it does, go ahead. If it doesn't, it's there for a reason; don't delete it.

If you really want to play with removing apps' startup stuff, do so carefully and at your own risk. Move the folder or plist to your desktop, restart, and test the app thoroughly. Even if you find it works without its startup item/agent/daemon, keep a copy so you can restore it if something goes wrong.

Solution 2:

Some sandboxed (or App Store) applications also add "login item bookmarks" to /var/db/launchd.db/com.apple.launchd.peruser.$UID/overrides.plist:

$ /usr/libexec/PlistBuddy -c 'Print _com.apple.SMLoginItemBookmarks:com.dayoneapp.dayone-agent' /var/db/launchd.db/com.apple.launchd.peruser.501/overrides.plist
book 0(UserslaurTorrents
                        Day One.apContentsLibrary
LoginItemsDay One Reminders.app $4HXh?kld ????$A????H???A?1M?$5DF7A03E-A7FB-3E80-B61D-F10CD8BF7B5D?/?0c75ae904b0f99cb3a794e7360629c822a0f4a14;00000000;0000000000000020;com.apple.app-sandbox.read-write;00000001;01000002;0000000000641712;/users/lauri/torrents/day one.app/contents/library/loginitems/day one reminders.app??????D|@l 0 ? ? ? ?  0 <???????D

You can disable the login item bookmarks with commands like sudo defaults write /var/db/launchd.db/com.apple.launchd.peruser.$UID/overrides.plist com.dayoneapp.dayone-agent '<dict><key>Disabled</key><true/></dict>'.