Mac系统自启动管理:轻松掌控系统启动

博主:itopmitopm 2024-06-25 18:40:01 125

你有没有在Mac系统安装了一个软件后,发现每次重启电脑的时候,他都自动打开来,这种情况就是有些软件打包的时候就设置了开机自动启动,个人觉得有点流氓。

那么我们怎么能取消掉开机启动呢?

首先,我们打开系统偏好设置,找到

 Mac系统自启动管理:轻松掌控系统启动

打开后,点击登录项,可以看到列出的一系列自启动程序。比如我下面的是:

 Mac系统自启动管理:轻松掌控系统启动

但是你会发现,有些软件在这里并没有显示出来,那么我们就要换一种方法通过终端来取消。

比如这次我安装了两个软件,一个是迅雷,一个是 Freedownloadmanager,就是如下图两个。

 Mac系统自启动管理:轻松掌控系统启动

但是在我的登陆项里面并没有这两个。

但是有时候我们发现有些自启动的软件在这里面是找不到的,这个时候我们可以通过终端程序查找。

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/>

 Mac系统自启动管理:轻松掌控系统启动

可以参考 https://www.launchd.info/

所以结合比如我要删掉我的fdm的自启动时,因fdm是我安装的软件,所以只需要查找下 ~/Library/LaunchAgents 就可以。

 Mac系统自启动管理:轻松掌控系统启动

之后通过vi编辑器打开该文件,将下面的RunAtLoad的值改为false即可。是不是很简单呢。

 Mac系统自启动管理:轻松掌控系统启动

不会敲命令的可以找帮手哦。

The End

本站部分内容来源于互联网,仅供学习交流之用。如有侵犯您的版权,请及时联系我们,我们将尽快处理。