Cisco Anyconnect太不友好了,每次重启mac都跑出来,烦人,择日不如撞日,今天就让你不开机启动,但是我还得留下你。
废话少说,直接上步骤
第一步,删除账号里的自启动配置
打开系统偏好设置
注意:要点击左下角的锁,进行编辑,然后点击“-”进行删除。
一般友好程序,这一步就ok了,可是这货很顽固,说明还有别的地方。
第二步,查找Launch相关配置
打开终端,查看以下目录:
我习惯是备份,当然也可以直接删除
/Library/StartupItems/ # 含cisco名字的目录都删除
/System/Library/StartupItems/ # 含cisco名字的目录都删除
~/Library/StartupItems/ # 这目录我是没,防止万一你们还是看看
注意:以下目录的文件一定要是mv,不能rm,否则cisco用不了别怪我
cd # 去到用户根目录
mkdir cisco.settings # 创建cisco配置目录
cd cisco.settings # 进入配置项目录
sudo mv ~/Library/LaunchAgents/com.cisco.anyconnect* . # 别漏了最后的. mv到当前目录
sudo mv /Library/LaunchAgents/com.cisco.anyconnect* .
sudo mv /System/Library/LaunchAgents/com.cisco.anyconnect* .
sudo mv ~/Library/LaunchDaemons/com.cisco.anyconnect* .
sudo mv /Library/LaunchDaemons/com.cisco.anyconnect* .
sudo mv /System/Library/LaunchDaemons/com.cisco.anyconnect* .
如果遇到没有权限的执行,请在前面输入sudo。
第三步,重启电脑
重启电脑,重启前,注意一定要让cisco退出。
最好是先关机,再启动。
这时候你会发现烦人的cisco不会再出来了。
但是这时候cisco已经不能用了,因为后台服务没启动。原因肯定是因为我们前面移除了那些文件。
如果你细心,你会发现在重启前,会发现以下进程:
就是这些进程没启动,导致cisco不能用。
第四步,按需启动cisco
在cisco.settings目录里写一个脚本,命名为load_cisco.sh
#!/bin/bash
sudo launchctl load /Users/xxx/cisco.settings/com.cisco.anyconnect.* # 记得更换目录,我的目录和你不一定一致
然后下次要用vpn,需要启动cisco,就到这个目录执行以下load_cisco.sh即可
其实手动执行load_cisco.sh是不打开cisco的,所以可以考虑放到加载完成后执行,不过这个可能要输入密码,也挺烦的。所以,还是有需要的时候,再启动。
比较好的解决办法,我觉得是,写到~/.bash_profile里面:
alias vpn="sh /Users/xxx/cisco.settings/load_cisco.sh && open /Applications/Cisco/Cisco\ AnyConnect\ Secure\ Mobility\ Client.app/" # 注意替换load_cisco.sh脚本的目录
这样,每次要使用vpn的时候,就去命令行输入vpn即可。
要当场生效,那就请source ~/.bash_profile