Mac OS X 下非官方软件自启动处理

正文之前

说是处理,想必也没几个人喜欢自启动的软件,我是一个控制欲比较强的人,开机自启搜狗输入法这个我能接受,但是像印象笔记啊,向日葵圆孔Client客户端这些,我就真的是烦不胜烦了!所以,今天,还是直接干死他们算了吧!不然老是这么烦我,每次都是直接去活动监视器直接删到一点进程都没了也不是办法啊。还是一劳永逸吧!

正文

1、网络上的常规办法:

苹果电脑开机启动项怎么设置 MacBook开机启动项_百度经验

先在 Mac 电脑中打开“偏好设置”应用


在设置列表中点击打开“用户与群组”选项,如图所示


接着左侧选择自己当前的登录用户名,在右边即可看到随系统启动的应用软件列表


如果你要添加开机启动的,那么会自动锁定到Application文件夹下,你自己慢慢添加


在右侧选择不想让随系统启动的应用程序,再点击“减号”按钮即可


2、 在网上扒拉大神博客的时候发现的办法

你会发现,握草?为毛我的开机自启明明没有这个软件,但是每次开机的时候都会自己给我跳出来?逗我呢???大概是因为你不是在AppStore下载的吧,互联网程序么,总归有那么些后门的,理解就好!嗯,理解归理解,我该怎么艹翻它呢??嗯。没错,接下来进入正题!


StartupItems,顾名思义,就是在系统启动过程中运行的程序,它们可以是运行完就立即终止的程序(比如,开机清空废纸篓),也可以是一直持续在系统运行周期的后台进程。
StartupItems一般存放在以下两个路径下:

1)/System/Library/StartupItems
2)/Library/StartupItems

大部分与系统相关的StartupItems都放在/System/Library/StartupItems这个路径下,它们会先于/Library/StartupItems路径下的执行,因为前者路径下的StartupItems提供了系统级的基础服务,比如crash reporting,core graphics services,system accounting等,而后者路径在默认情况下是不存在的,需要自己手动创建。

那么我们该怎么办呢?当然是直接杀上老家开肝了!!

首先,打开一个finder:


然后快捷键 command + shift + G



根据把这个地址复制到地址,其实这个就是windows下的那个地址栏啦,只不过windows固化了,Mac OS X比较坑爹而已!然后就到了这儿


#!/bin/sh

##
# load the tun kext
##

 . /etc/rc.common

 StartService ()
 {
    ConsoleMessage "Initializing tun devices"

    if [ -d /Library/Extensions/tun.kext ]; then
        kextload /Library/Extensions/tun.kext
    fi
 }

 StopService ()
 {
    if [ -d /Library/Extensions/tun.kext ]; then
        kextunload /Library/Extensions/tun.kext
    fi
 }

 RestartService ()
 {
    if [ -d /Library/Extensions/tun.kext ]; then
        kextunload /Library/Extensions/tun.kext
        kextload /Library/Extensions/tun.kext
    fi
 }

 RunService "$1"

一般的可执行文件包含这样几个方面的内容:
1)./etc/rc.common
Apple提供的一个脚本库,该脚本库里包含了为可执行文件引进参数的接口。在这里load这个库主要是调用RunService。
2)StartService(), StopService(), RestartService()
当可执行文件接收到的参数为start,stop或者restart时,执行相对应的函数。
参数含义:
start:开机过程中开启服务;
stop:关机过程中停止服务;
restart:在特定条件下重启服务。
3)RunService “$1”
执行传递给该脚本的第一个参数指定的服务。
“$1” 表示传给该脚本的第一个参数。例如,传入的参数为start,则执行StartService()。
我的办法很简单粗暴啊



既然你不听话,我也懒得一个个改了。直接全灭了。然后我按照第一种方法再去选乖乖听我话得吧!

3、 类似的方法,好像是设置自启动名单的

launchd是Mac OS下用于初始化系统环境的关键进程,它是内核装载成功之后在OS环境下启动的第一个进程。采用这种方式来配置自启动项很简单,只需要一个plist文件,通常(同时也是系统推荐)是将plist放在~/Library/LaunchAgents路径下

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>com.google.keystone.user.agent</string>
    <key>LimitLoadToSessionType</key>
    <string>Aqua</string>
    <key>ProgramArguments</key>
    <array>
      <string>/Users/zhangzhaobo/Library/Google/GoogleSoftwareUpdate/GoogleSoftwareUpdate.bundle/Contents/Resources/GoogleSoftwareUpdateAgent.app/Contents/MacOS/GoogleSoftwareUpdateAgent</string>
      <string>-runMode</string>
      <string>ifneeded</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
    <key>StartInterval</key>
    <integer>3623</integer>
    <key>StandardErrorPath</key>
    <string>/dev/null</string>
    <key>StandardOutPath</key>
    <string>/dev/null</string>
</dict>
</plist>

1)Label【required必须要有】
该项服务的名称。

2)OnDemand【optional可选,我貌似就没有?被一个LimitedeLoadToSessionType取代了】
10.4提供的一个key值,功能与KeepAlive的基本功能相似,在10.5及之后的系统中被KeepAlive替代。KeepAlive扩展了更多的功能,除了使用单一的boolean作为key值之外,还能使用字典结合多个key值。

3)Program【ProgramArgument是必须的,在没有ProgramArgument的情况下,必须要包含Program这个key】
指定可执行文件的路径。

4)RunAtLoad【optional】
标识launchd在加载完该项服务之后立即启动路径指定的可执行文件。默认值为false。

5)WorkingDirectory【optional】
该key在开启可执行文件之前,指定当前工作目录的路径。

6)KeepAlive【optional】
这个key值是用来控制可执行文件是持续运行呢,还是满足具体条件之后再启动。默认值为false,也就是说满足具体条件之后才启动。当设置值为ture时,表明无条件的开启可执行文件,并使之保持在整个系统运行周期内。

原作者写出来的一个plist

<?xml version="1.0" encoding="UTF-8"?>  
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN"   
    "http://www.apple.com/DTDs/PropertyList-1.0.dtd">  
<plist version="1.0">  
<dict>  
    <key>Label</key>  
    <string>com.yourcompany.HSPA_USB_MODEM</string>  
    <key>OnDemand</key>  
    <false/>  
    <key>Program</key>  
    <string>/Application/HSPA USB MODEM.app/Running</string>  
    <key>RunAtLoad</key>  
    <true/>  
    <key>WorkingDirectory</key>  
    <string>/Application/HSPA USB MODEM.app</string>  
</dict>  
</plist> 

原作见:三种方式配置Mac OS X的启动项

正文之后

溜了溜了,看《C++ Primer》以及我的王道单科数据结构咯~~~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 201,681评论 5 474
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,710评论 2 377
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 148,623评论 0 334
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,202评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,232评论 5 363
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,368评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,795评论 3 393
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,461评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,647评论 1 295
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,476评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,525评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,226评论 3 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,785评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,857评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,090评论 1 258
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,647评论 2 348
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,215评论 2 341

推荐阅读更多精彩内容