计算机唤醒后就找不到另一个硬盘,解决唤醒后磁盘没有正确推出问题

本帖最后由 syscl 于 2016-3-18 19:39 编辑

问题表现: 插有外部设备(例如U盘, 移动光驱,……)在睡眠唤醒后, 会提示”磁盘没有正确弹出”的问题, 严重的可能让磁盘损坏.

这个问题不仅在黑苹果上面有, 在白苹果上面也有. 这个bug有很长的历史遗留时间, 从10.9的时代一直延续至今, 感兴趣的朋友可以看看Apple Discussion.

目前比较有效的解决方案有安装sleepwatcher并自己写脚本在系统还没有进入S3的阶段卸载磁盘,

并在唤醒的时候挂载; 另一种方式是从Mac App Store安装付费的Jettision程序. 他们两者实现的方式都是类似的, 即先在睡眠之前卸载磁盘, 再在唤醒的瞬间重新挂载.

本来想偷懒借用别人的脚本, 无奈没有一个看的懂的, 并且用的思路很奇怪(要用AppleScript云云), 并且还要设置睡眠等待时间, 插入启动时执行的脚本等等…; 而Jettision是付费程序, 会在状态栏上面插入图标, 让我觉得解决方法很不干净, 很不放心, 当然最主要是因为穷(不想花钱). 因此, 花了一下午捣鼓了一个全自动化的脚本, 只要按照我的步骤进行操作即可, 如果觉得不放心的朋友, 可以自己修改我的脚本: https://github.com/syscl/Fix-usb-sleep

这个开源脚本最大的优势在于, 没有多余的启动脚本, 没有多余的命令, 卸载用的是Apple官方的命令, 至于挂载, 在系统唤醒的瞬间便会交给系统自己接管, 自动挂载, 再无多余脚本干预. 整个过程干净快速稳定, 不会有延迟感.

欢迎你们的任何意见和建议, 这个脚本的不重启版本即将更新发布, 因为要陪家人吃饭, 所以请大家耐心等待, 估计今晚就有哈~

最后, 感谢Bernhard Baehr ([email protected]), 没有他的sleepwatcher dameon, 这个项目也不会实现.

关于如何使用

在终端中下载修复脚本:

git clone https://github.com/syscl/Fix-usb-sleep复制代码

脚本下载完毕后, 为其增加执行权限:

chmod +x ~/Fix-usb-sleep/fixUSB.sh复制代码

执行脚本, 并按照提示输入密码(输入密码的过程不会显示输入多少位, 请各位注意):

cd ~/Fix-usb-sleep

./fixusb.sh复制代码

成功运行后应该出现这样的界面:

祝你们成功!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值