1

我正在使用直线连接到 HIVE 服务器。登录用户无权访问其默认 HOME 目录。

因此,登录后我手动将 ENV VAR HOME 更改为我可以访问的位置。

但是直线不尊重我设置的 HOME ENV 变量。

有没有一种方法可以将 HISTORY FILE 位置设置为除此之外的其他位置/home/{user}/.beeline

4

1 回答 1

1

这是定义beeline历史文件位置的代码:

  /**
   * The save directory if HOME/.beeline/ on UNIX, and
   * HOME/beeline/ on Windows.
   */
  public File saveDir() {
    String dir = System.getProperty("beeline.rcfile");
    if (dir != null && dir.length() > 0) {
      return new File(dir);
    }

    File f = new File(System.getProperty("user.home"),
        (System.getProperty("os.name").toLowerCase()
            .indexOf("windows") != -1 ? "" : ".") + "beeline")
        .getAbsoluteFile();
    try {
      f.mkdirs();
    } catch (Exception e) {
    }
    return f;
  }

您只能通过beeline JVM使用-Duser.home=/new/home/dir选项运行来更改 Hive-beeline 历史文件位置。

于 2017-11-21T22:38:10.497 回答