2016-06-25 84 views
4

我使用Ubuntu 16.04 LTS并安装了hadoop 2.7.2。的start-all.sh,找不到start-dfs.sh命令

的Hadoop版本

输出为

的Hadoop 2.7.2 颠覆https://git-wip-us.apache.org/repos/asf/hadoop.git -r b165c4fe8a74265c792ce23f546c64604acf0e41 詹金斯在2016-01-26T00编译:08Z 编译时protoc 2.5.0 源自校验和d0fda26633fa762bff87ec759ebe689c 该命令使用/ usr/local/hadoop -2.7.2 /共享/ hadoop的/普通/ Hadoop的共2.7.2.jar

和当我运行

whereis的hadoop

它给作为

输出

Hadoop的:在/ usr /本地/ Hadoop的/usr/local/hadoop-2.7.2/bin/hadoop.cmd /usr/local/hadoop-2.7.2/bin/hadoop

但是当我运行命令

start-all.sh

它说找不到命令。 还当我运行

start-dfs.sh

它给输出作为命令未找到。

我能够运行这些命令时,我导航到hadoop目录,但我想运行这些命令,而无需导航到hadoop目录。

+0

你的意思是,当你在'在/ usr /本地/ hadoop'目录它的工作原理/不'/ usr/local/hadoop/start-all.sh'工作? –

+0

它的工作在/ usr/local/hadoop/sbin通过命令'./start-all.sh'而不是'start-all.sh' –

+0

你用'echo $ PATH'得到了什么? –

回答

6

你的问题是bash不知道在哪里寻找./start-all.sh

PATH=$PATH:/usr/local/hadoop/sbin 

这是告诉bash,它应该是在 '在/ usr /本地/ Hadoop的/ sbin目录' 为start-all.sh

您可以通过打开$HOME/.bashrc添加一条线,看起来像这样解决这个问题。

注:

更改$HOME/.bashrc不参与是目前打开的任何终端的影响。

如果您需要更改才能在当前打开一个终端影响,运行

source $HOME/.bashrc 
+0

在$ HOME/.bashrc文件中最后一行是export HADOOP_HOME =/usr/local/hadoop/ export JAVA_HOME =/usr/ export PATH = $ PATH:$ HADOOP_HOME/bin/ 我已经改变了路径的最后一行PATH = $ PATH:/ usr/local/hadoop/sbin,如你所说,但没有得到结果 –

+0

它仍然给'找不到命令'错误? –

+0

哦,谢谢。我在同一个终端上运行它。我刚刚重新打开我的终端,现在它运行良好。谢谢。 –