mac升级后正版SecureCRT崩了?别碰pyenv,3步救活
2025-11-23 08:02 AlfredZhao 阅读(0) 评论(0) 收藏 举报周末翻出曾陪伴笔者早年间N年运维生涯的老电脑,本着“用物”的理念想着把它也利用起来,可是开机发现微信版本太低都不允许登录了,可是直接点升级却提示必须要升级操作系统才能升级微信。
好吧,那就升级吧,结果macOS一升级,微信是正常了,但是遭遇了其他问题——SecureCRT双击打不开。这软件我一直没敢升级,因为手里的老版本是正版授权,升级后正版资格就没了,对运维来说,顺手的正版工具比啥都重要。
查日志一眼定位问题:Library not loaded: '/System/Library/Frameworks/Python.framework/Versions/2.7/Python'。系统把自带的Python 2.7删了,而我这老版CRT偏偏依赖它。
避坑:别像我一样死磕pyenv
一开始搜方案/问AI,全推pyenv。我跟着折腾了快2小时:
-
折腾配置homebrew国内源、装pyenv、好不容易装上Python 2.7;
-
改依赖路径提示“框架缺失”,得加参数重新编译;
-
编译缺Xcode组件,下载几个G的工具;
-
编译完签名又报错,清理后重签,结果CRT还是打不开。
这时才醒悟:我就需要一个能让CRT认到的Python 2.7,犯不着用版本管理工具绕远路。
极简方案:3步救活正版CRT(全程5分钟)
放弃pyenv后,直接装官方Python 2.7框架,秒通。步骤零门槛:
步骤1:下载官方Python 2.7安装包(直接拿现成的)
Python 2.7虽停更,但官方保留了最后一个稳定版安装包,直接下macOS适配版:
👉 下载地址:https://www.python.org/ftp/python/2.7.18/python-2.7.18-macosx10.9.pkg
几十MB大小,不用注册,点链接直接下。
步骤2:双击安装,一路“继续”就行
打开.pkg文件,一路点“继续”。系统会自动把Python 2.7框架装到/Library/Frameworks/Python.framework/Versions/2.7/——这是macOS原生路径,CRT能直接识别。
步骤3:终端3条命令,修复依赖
打开终端,复制粘贴以下命令(输密码时终端不显示,输完回车即可):
# 0. 改之前先备份一下,建议做,搞错了方便回退
sudo cp /Applications/SecureCRT.app/Contents/MacOS/SecureCRT /Applications/SecureCRT.app/Contents/MacOS/SecureCRT.bak
# 1. 让CRT指向新安装的Python 2.7框架
sudo install_name_tool -change /System/Library/Frameworks/Python.framework/Versions/2.7/Python /Library/Frameworks/Python.framework/Versions/2.7/Python /Applications/SecureCRT.app/Contents/MacOS/SecureCRT
# 2. 清理文件元数据,解决签名报错
sudo xattr -cr /Applications/SecureCRT.app
# 3. 重新签名,绕过系统验证
sudo codesign --force --deep --sign - /Applications/SecureCRT.app
没有报错就成功了。双击SecureCRT,熟悉的界面立刻弹出——我的正版老工具,活了!
关键总结:为啥pyenv没用?
核心是用错了工具:
-
pyenv是开发用的版本管理工具,适合切换多Python版本;
-
CRT需要的是macOS标准
.framework格式库,官方安装包直接自带,不用编译; -
pyenv默认装的是普通可执行文件,得额外配置才符合要求——这就是折腾的根源。
给运维同行的话
手里有正版老工具不敢升级?mac升级后崩了别慌:
-
先抓核心报错,大概率是依赖缺失;
-
优先用官方安装包解决,比第三方工具靠谱;
-
别迷信复杂方案,简单直接的往往最有效。
希望帮到和我一样守护正版老工具的朋友——运维的核心,就是用最简单的方法解决问题。
转载请注明原文链接:https://www.cnblogs.com/jyzhao/p/19258949
👋 感谢阅读,欢迎关注我的公众号 「赵靖宇」
浙公网安备 33010602011771号