我已经安装了Apache Hive作为hduser,并且能够从我的hduser
完美地运行它。
我希望将其作为命令hive -f someScript.sql
运行,但我希望从其他用户那里做到这一点,比如root。我正在尝试像
sudo -u hduser '/usr/local/hive/bin/hive -f test.sql'
我得到的输出是
sudo: /usr/local/hive/bin/hive -f test.sql: command not found
我的用户hduser
也在sudoers列表中,如果有帮助的话。我不明白为什么会发生这种情况,因为hive已正确添加到路径中,当我通过su hduser
然后运行它时,这一切都正常。
答案 0 :(得分:2)
您的命令语法不正确。见:
Parents[2]
确保sudo -u hduser /usr/local/hive/bin/hive -f test.sql
具有读取对test.sql文件的访问权限。
答案 1 :(得分:1)
我认为您的语法不正确(您将整个查询放在引号中)。试试这个:
sudo -u hduser /usr/local/hive/bin/hive -f 'test.sql'