Mac OSX Mavericks升级清除/ usr / local / bin

时间:2014-03-20 23:29:59

标签: macos path osx-mavericks homebrew symlink

我一直没有升级到小牛队,因为他担心会打破思维,似乎我的恐惧成真了。我有一个Homebrew安装库存,其中包含许多链接到/ usr / local / bin的编译工具以及一些指向其他二进制文件的自定义链接,例如Sublime Text的快捷方式。升级到Mavericks后,文件夹几乎清除了所有内容,因此没有任何命令可以正常工作。 brew脚本仍然存在,还有一些乳胶工具,但似乎就是这样。

这是升级后的预期行为吗?是否有快速解决方法?我可以从备份中复制文件夹内容吗?是取消联系的唯一方法吗?在Homebrew中手动重新链接所有内容(这不能解决我丢失的未通过Homebrew编译的内容)?

我只是注意到/ usr / local / lib似乎遭遇了类似的命运,如果这对任何答案都很重要。我担心还有什么可能受到影响。

1 个答案:

答案 0 :(得分:8)

我已经从Apple Stackexchange question逐字复制并粘贴了我的答案,因为相关问题的链接已隐藏在评论中。

首先,重新链接所有已安装的公式:

brew list -1 | while read line; do brew unlink $line; brew link --force $line; done

然后运行brew doctor,它应该抱怨并给你两个列表:

  • 具有多个版本的未链接公式
  • 仅通过原始重新链接过程错误链接的仅限桶组的公式。

对于具有多个版本的每个公式,运行以下命令,将“python”替换为公式名称:

brew info python  

除其他信息外,这将向您显示所有已安装的版本。选择要链接的版本(对我来说是2.7.6),并使用brew switch

brew switch python 2.7.6

您还需要在已链接的仅限keg的公式列表(如果有)上运行brew unlink