完全关闭 Lion 的”重新登录时重新打开窗口”功能

2011 年 08 月 26 日 编辑:Eyon

用上 Lion 操作系统的童鞋想必都知道这个功能,点击关机或者按下关机按钮之后,就会在弹出的对话框中出现这个选项,而且这个选项是默认选中的,如果不想要用这个功能的话每次都要手动取消(按一下空格比较方便)。

其实很多人都极其讨厌这个功能,如果在关机的时候没有取消这个复选框的话,那么下次开机之后就会恢复所有你关机前打开的那些窗口,一是隐私得不到保障(比如你晚上在家欣赏伦理片,然后直接关了电脑,第二天到单位一开电脑就跳出来了);最重要的是,刚一开机就又被启动了大量的应用程序,占着内存和CPU资源。笔者每次关机的时候都会吧这个复选框取消,而且并不是我一个人讨厌这个功能。

最不可思议的是,这个功能是强制的,至少到目前为止都还没有发现不通过第三方程序/脚本实现”默认取消选择”或者彻底关闭该功能的办法,如果你也很讨厌这个功能的话,不妨暂时用我们下面介绍的这个第三方脚本来暂时解决,方法很简单,在终端(应用程序——实用工具)中运行下面这行命令就可以了(可能会要求你输入登录密码):

curl http://goo.gl/Z4EFC -L -s -o ~/fixlogin.sh && chmod +x ~/fixlogin.sh && sudo ~/fixlogin.sh ; rm ~/fixlogin.sh

但是,即便是运行了这个命令之后,每次关机的时候还是会弹出本文题图的那个对话框,只是不管你是勾选还是取消那个复选框,都不会在重启之后恢复关机前打开的窗口了。也就是说,上面这个命令的作用就是让”重新登录时重新打开窗口”功能彻底无效,至于那个选框也就没有作用了。

其实上面命令的作用就是下载地址为 http://goo.gl/Z4EFC 的这个脚本,然后把他放到一个适当的位置,并给其赋予可执行的权限,最后删除临时文件,类似于一个批处理程序。对于普通用户来说不用研究这么多,只要把上面的内容复制到终端中执行一下就可以了。下面是这个脚本中的内容,高手们可以研究(反正我也看不懂):

#!/bin/bash
echo “#!/bin/bash” > /tmp/loginfix.sh
echo “rm /Users/*/Library/Preferences/ByHost/com.apple.loginwindow.*” >> /tmp/loginfix.sh
mv /tmp/loginfix.sh /usr/bin/loginfix.sh
chmod +x /usr/bin/loginfix.sh
defaults write com.apple.loginwindow LoginHook /usr/bin/loginfix.sh

如果想要恢复这个功能的话,可以在终端中执行下面的命令:

sudo defaults delete com.apple.loginwindow LoginHook

如果有发现解决这个问题更好的方法,我们会在第一时间告诉大家。如果你有关于解决这个问题的更好方法,也请告诉我们。

via OSXDaily