【问题标题】:R in El Capitan public beta (new security model)El Capitan 公共测试版中的 R(新安全模型)
【发布时间】:2015-10-02 21:39:02
【问题描述】:

嗨,Apple 更改了 MacOSX 10.11 El Capitan 中的安全模型。尽管 10.11 仍是公开测试版,但最终版本中的安全模型不太可能有任何不同。

这意味着例如目录 /usr/bin 不再可访问(即使是 root 也不行),因此链接到该目录的任何软件路径都不再工作。例如 MacTex 或 R。

MacTex 注意到了这个问题,并在他们的网站上声明了一个:

MacTeX 安装链接 /usr/texbin,间接指向 TeX Live 的二进制文件。在 El Capitan 中,用户无法写入 位置 /usr,即使他们有管理员权限。 因此,MacTeX-2015 和 BasicTeX-2015 安装了两个符号链接 在 El Capitan 之前的所有系统上:/usr/texbin 和 /图书馆/TeX/texbin。未来只安装第二个链接 系统。

MacTeX 安装了四个 GUI 应用程序:BibDesk、LaTeXiT、TeX Live Utility 和 特克斯商店。许多用户还有其他 GUI 前端和实用程序。所有的 这些程序当前配置为在 /usr/texbin.在夏天,用户应该重新配置他们的 GUI 应用程序 使用 /Library/TeX/texbin。他们不会注意到任何变化。这 一旦 El Capitan 发布,重新配置将是强制性的。

现在我想知道如何在 OSX 10.11 上更改 R 的 $PATH 变量以再次在终端 (bash) 中工作。 ?我找不到任何关于如何做到这一点的帮助。此时通过在终端中键入 R 会产生以下错误消息,尽管 R 安装成功:R: command not found

【问题讨论】:

标签: r macos bash


【解决方案1】:

虽然 /usr 不受限制,但 /usr/local 和 /usr/local/libexec 可用,并且应该用于 3rd 方二进制应用程序。

Apple 已声明,对于 10.11 的最终 (GM) 版本,在安装 El Capitan 期间存在于系统文件夹(例如 /usr)中的任何第 3 方应用程序都会被安装程序移动。我怀疑它们会被移到 /usr/local。

由开发人员更新他们的软件以使用安全系统和路径。

如果没有找到 R 命令,则找到二进制文件和update your $PATH variable

【讨论】:

  • 嗯。我目前没有看到 /usr 下的任何内容都是“可用”的,所有内容在 root 之外都是只读的。太臭了。
  • @uchuugaka,它可能自第一个开发者版本以来发生了变化。我会检查并回复你。
  • @uchuugaka,在更新到 Developer Release 7 后,我仍然可以将我们的软件安装到 /usr/local/libexec,所以不知道你为什么不能。也许这是安装程序可以做的事情,但不是通过命令行的用户。
  • 任何需要管理员授权的安装程序都与sudo基本相同。所以我并不惊讶安装程序会工作,除非你告诉我安装程序不需要管理员密码
  • @uchuugaka 它确实需要管理员密码,尽管在 10.11 中使用新的“系统完整性保护”(又名无 root),root 通过 sudo 不再具有写入系统文件夹的权限。跨度>
【解决方案2】:

有两种选择:

  1. 更新 Tex,例如MacTex-2015 https://www.tug.org/mactex/ 应该(尚未尝试)为您修复路径

  2. 从终端窗口自己更新路径:

    • 首先您必须创建一个标准(和短位置):
      ln -s /Library/TeX/Distributions/TeXLive-2013.texdist/Contents/Programs/texbin/ /Library/TeX/texbin
      这将创建一个指向二进制文件夹的链接/Library/TeX/texbin

    • 那么你需要修复你的全局PATH变量:
      sudo sed -i -e "s/usr/Library\/TeX/" /etc/paths.d/TeX

    或者您可以在一行(可能不优雅)中完成:

    sudo sed -i -e "s/usr/Library\/TeX\/Distributions\/TeXLive-2013.texdist\/Contents\/Programs/" /etc/paths.d/TeX

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-09
    • 1970-01-01
    • 1970-01-01
    • 2017-06-16
    • 2015-09-29
    相关资源
    最近更新 更多