解决 macOS 上运行 App 提示「已损坏」的问题
Apr 29, 2024
假如你打开别人发过来的 Sublime Text,系统提示「已损坏」。那么说明这个 App 被修改过了,最好遵照系统的提示不要运行。 但是,你很确定它的来源没有问题,又想体验一下最新的功能,可以用以下命令移除这个风险提示: …
使用 pkgbuild 制作 RarLab RAR 安装文件
Oct 10, 2023
WinRar 的 macOS 版本只有命令行程序,而且把 x64 和 arm 版本分开提供,对于用户下载和安装都很不方便。 下载 arm64 下载 x64 然后把 rar 和 unrar 合并成 universal 的单文件: lipo -create rar-arm/rar rar-x64/rar -output rar lipo -create rar-arm/unrar rar-x64/unrar -output unrar 然后把文件按下面的目录结构存放: …
修改 TTL 的值
May 05, 2023
TTL 是 64 或者 128 会被认为是 PC 设备或者是通过热点上网,修改路由设备的 TTL 值可以让运营商认为流量来自于移动设备。 Linux sudo sysctl -w net.ipv4.ip_default_ttl=65 sudo sysctl -w net.ipv6.conf.default.hop_limit=65 OpenWRT 修改所有 WAN 流量的 TTL: iptables -t mangle -C POSTROUTING 1 -j TTL --ttl-set 65 [ ! "$?" = "0" ] && iptables -t mangle -I POSTROUTING 1 -j TTL --ttl-set 65 Nftables 版本: …
使用命令行把 p12 证书导入系统钥匙链
Feb 19, 2023
使用 OpenSSL 把 p12 格式转换为 cer 格式: openssl pkcs12 -in MitM_CA.p12 -clcerts -nokeys -out MitM_CA.cer 把 cer 格式的文件导入到系统根证书中,并设置为信任: sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain MitM_CA.cer -d 表示把证书添加到「系统」。默认是添加到当前的「登录」中。 -r trustRoot 表示添加为信任的根证书。
[教程]使用证书助理创建自签名证书
Dec 21, 2022
在 macOS 上可以使用图形界面创建自签名证书,不需要记住 openssl 冗长的命令。 Apple 在 iOS 13 和 macOS 10.15 中对自签名证书有一定的要求:https://support.apple.com/en-us/HT210176 …
在 M1 芯片的 macOS 上创建 10.15 以及之前版本的启动 U 盘
Dec 21, 2022
因为 10.15 以及之前的系统镜像都是 x86_64 架构的,在 M1 芯片的 macOS 系统上直接运行 createinstallmedia 创建启动 U 盘会报错: $ sudo /Applications/Install\ macOS\ Catalina.app/Contents/Resources/createinstallmedia --volume /Volumes/Lexar Killed: 9 解决方法是移除掉原有签名: $ codesign -s - -f --deep /Applications/Install\ macOS\ Catalina.app /Applications/Install macOS Catalina.app: replacing existing signature 在 M1 上转译运行 x86_64 的程序是不需要验证签名的,所以移除签名也没有问题。 …
dot_clean 命令清除 macOS 上的隐藏文件
Nov 09, 2022
.DS_Store, _MACOSX 是 macOS 上特有的文件和目录,如果把文件夹打包发到 Windows ,别人就看到这些文件/目录就很奇怪。 dot_clean 是用于清除 . 或者 _ 开头文件的工具,使用比较简单: dot_clean /path/to/you/dir 而且会递归处理子目录,特别方便。 …
macOS 命令行工具编辑 plist 文件
Oct 01, 2022
plutil 是 macOS 下的一个命令行工具,用于编辑和处理 *.plist 格式的文件。 转换文件格式 plutil -convert xml1 ToolchainInfo.plist 文件类型说明:xml1 XML 格式,binary1 二进制格式,json JSON 格式。 修改键值 ToolchainInfo.plist 文件的内容: …
pfctl 简介
Sep 27, 2022
在 macOS 10.10 开始,系统防火墙工具由 ipfw 替换为了 pfctl,关于 pf 防火墙的使用手册可以参考这里: https://murusfirewall.com/Documentation/OS%20X%20PF%20Manual.pdf 开启 IP 转发功能 开启 IPv4 转发功能: $ sudo sysctl net.inet.ip.forwarding=1 net.inet.ip.forwarding: 0 -> 1 开启 IPv6 转发功能: …
使用 spctl 检查 App 的来源
Aug 22, 2022
spctl --assess --verbose XX.app 输出结果: 来自于 Apple 的软件: /Applications/Xcode.app: accepted source=Apple System 从 Mac App Store 下载的软件: /Applications/WeChat.app: accepted source=Mac App Store 开发者自己打包的软件: 没在在 Apple 进行公证: /Applications/Impactor.app: accepted source=Developer ID 进行了 Apple 公证: /Applications/Visual Studio Code.app: accepted source=Notarized Developer ID 公证机制是 macOS Catalina 中要求使用的: https://developer.apple.com/cn/news/?id=09032019a …