Mac系统自启动管理:轻松掌控系统启动
你有没有在Mac系统安装了一个软件后,发现每次重启电脑的时候,他都自动打开来,这种情况就是有些软件打包的时候就设置了开机自动启动,个人觉得有点流氓。
那么我们怎么能取消掉开机启动呢?
首先,我们打开系统偏好设置,找到
打开后,点击登录项,可以看到列出的一系列自启动程序。比如我下面的是:
但是你会发现,有些软件在这里并没有显示出来,那么我们就要换一种方法通过终端来取消。
比如这次我安装了两个软件,一个是迅雷,一个是 Freedownloadmanager,就是如下图两个。
但是在我的登陆项里面并没有这两个。
但是有时候我们发现有些自启动的软件在这里面是找不到的,这个时候我们可以通过终端程序查找。
macOS系统的启动项即每个程序启动的配置会以 .plist 的文件保存在下面的目录中:
系统内核启动后系统初始化阶段就启动的进程,也叫守护进程
/System/Library/LaunchDaemons
/Library/LaunchDaemons全局(所有用户)
下面是用户代理进程,就是登陆后才启动的
/System/Library/LaunchAgents:系统自带的启动项
/Library/LaunchAgents:用户启动项
~/Library/LaunchAgents:用户自己定义的启动项
每个 .plist 文件中,有 3 个属性可以控制着是否会自动启动,不一定有三个属性,可以省略。
KeepAlive:程序是否需要一直运行,如果是 false 则需要时才启动。默认 false
RunAtLoad:开机时是否运行,默认 false。
SuccessfulExit:为 true ,程序正常退出时重启;为 false,程序非正常退出时重启。这个表示只要有这个属性,加载到本文件时肯定会自启动。
所以针对这三项:
如果 KeepAlive = false:
当 RunAtLoad = false 时:点击的时候才运行。
当 RunAtLoad = true 时:程序在系统加载到属性文件时会运行一次,然后等待在有需要的时候运行。
当有 SuccessfulExit这个键 时:不论 RunAtLoad
值是什么,都会在启动时运行一次。其后根据 SuccessfulExit 值来决定是否重启,如果为true,则正常退出时会重启,如果为false,则异常退出时会重启。
如果 KeepAlive = true :不论 RunAtLoad/SuccessfulExit
值是什么,都会启动时运行且一直保持运行状态。
所以如果我们不希望开机自动运行,则需要:
找上面的目录中找到对应程序的 .plist 文件,一般通过程序的名字就能看出来
删除 SuccessfulExit 属性。
将 RunAtLoad / KeepAlive 均设为 <false/>
可以参考 https://www.launchd.info/
所以结合比如我要删掉我的fdm的自启动时,因fdm是我安装的软件,所以只需要查找下 ~/Library/LaunchAgents 就可以。
之后通过vi编辑器打开该文件,将下面的RunAtLoad的值改为false即可。是不是很简单呢。
不会敲命令的可以找帮手哦。
本站部分内容来源于互联网,仅供学习交流之用。如有侵犯您的版权,请及时联系我们,我们将尽快处理。