一下省了几千块: 『mac需要安装关键性软件更新 / critical software update is required』的解决办法

Mac突然无法进入系统,现象是正常模式进入系统输入完密码提示『mac需要安装关键性软件更新 / critical software update is required』

搜索引擎搜索中文”mac需要安装关键性软件更新”,基本都是说换T1芯片,还有说换CPU的,也有人说彻底重装系统能好

https://www.zhihu.com/question/68610976

搜索英文『critical software update is required』,基本都是说要换logic board或者touch bar的。

https://zh.ifixit.com/Answers/View/599096/Stuck+at+%E2%80%9Ccritical+software+update+is+required%E2%80%9D+screen+during+startup

总而言之言而总之,感觉没有几千块解决不了。看完这些答案心都凉了。

冷静下来理性分析,既然能开机、能进安全模式,也就是说CPU坏了完全是扯淡,touch bar损坏到比较符合出现的现象,因为不管是使用安全模式进系统,还是正常模式卡在进系统之前,touch bar都无任何显示。即便如此,还是想赌一把。

回忆一下在系统崩溃之前做过什么操作,想起来安装了公司内网连接工具easyconnect,安装完提示内核模块(kext)与当前系统不兼容,需要重启更新,然后重启完就进不了系统了。因为若干年前解决一个vmware的bug的时候,研究过内核模块(kext)的问题,所以对内核模块(kext)有一定了解,于是决定删除相关内核模块试一下,具体解决步骤如下:

 

1.进入恢复模式(command+R),关闭gatekeeper。

csrutil disable

2.进入安全模式,删除相关内核模块(慎重!!!):

sudo rm -rf /Library/StagedExtensions/Applications/*

3.正常进入系统,发现一切恢复正常,touch bar也正常工作了。

4.回到恢复模式,开启gatekeeper

csrutil enable

5.All done.

 

总结: 别人都是傻逼,别人的结论都是bullshit,关键时刻还得靠自己沉着冷静。

Vmware vt-x和Docker(WSL2/Hyper-V)切换方法

结论:目前win10上Docker后端要不然WSL2要不然Hyper-V,不管用哪种都会影响vt-x,目前能让vmware/安卓模拟器和Docker共存的方法只有放弃vt-x

以下是如果非要使用vt-x的切换方法

1.使用Docker(WSL2/Hyper-V)

bcdedit /set hypervisorlaunchtype auto

按照docker启动提示,设置后端到Hyper-V或者WSL2

2.使用vmware vt-x

windows功能里删除Hyper-V

bcdedit /set hypervisorlaunchtype off

CTF-v8

OOB = out of boundary

部分参照:

https://eternalsakura13.com/2018/05/06/v8/

1.准备代理,git仓库走本地流量,depot_tools走代理

source proxy
export no_proxy=10.10.10.xxx,127.0.0.1,gitlab.xxx.xxx

2.编译指定git仓库v8

git clone http://xxx.xxx.xxx.xxx/xxx/v8.git
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
export PATH=$PATH:"/path/to/depot_tools"
cd v8
gclient config http://xxx.xxx.xxx.xxx/xxx/v8.git
gclient sync
cd v8
tools/dev/v8gen.py x64.debug
ninja -C out.gn/x64.debug
./out/x64.debug/d8
./out/x64.debug/shell