在 Hadoop 环境中,决定何时在命令前添加
./bin
和如何处理路径
/home/hadoop
与
/usr/local/hadoop
的问题,主要取决于你的当前工作目录和环境变量的设置。以下是一些指导原则:
何时使用
./bin
:
- 当前目录是 Hadoop 安装目录:当你的工作目录是 Hadoop 安装目录时(例如
/usr/local/hadoop
),你可以使用./bin
来执行 Hadoop 的可执行文件,因为./bin
指的是当前目录下的bin
子目录。例如:./bin/hdfs dfs -ls /
- 简化命令:使用
./bin
可以确保你执行的是当前目录下的 Hadoop 命令,而不是系统路径中的命令。
何时不需要使用
./bin
:
- 环境变量
PATH
已设置:如果你已经将 Hadoop 的bin
目录添加到了你的PATH
环境变量中,你可以在任何工作目录下直接执行 Hadoop 命令,而不需要./bin
。例如:hdfs dfs -ls /
- 使用完整路径:如果你不想使用
./bin
,也可以通过指定 Hadoop 可执行文件的完整路径来执行命令。例如:/usr/local/hadoop/bin/hdfs dfs -ls /
/home/hadoop
与
/usr/local/hadoop
的区别:
- **
/home/hadoop
**:这通常是 Hadoop 用户的家目录。在这个目录下,用户可以存放个人文件和数据。 - **
/usr/local/hadoop
**:这是一个示例路径,表示 Hadoop 可能安装在/usr/local
目录下,名为hadoop
的子目录。这是 Hadoop 的安装目录,其中包含 Hadoop 的可执行文件、配置文件、库文件等。
示例:
whereis
命令将返回 Hadoop 二进制文件、源文件和手册页的位置。- 假设你在安装 Hadoop 时或在
.bashrc
、.bash_profile
或全局环境变量文件中设置了HADOOP_HOME环境变量,使用echo
命令查看其值。
假设 Hadoop 安装在
/usr/local/hadoop
:
- 在 Hadoop 安装目录下:- 你可以使用
./bin
:./bin/hdfs dfs -ls /
- 在其他目录下:- 如果你已经将
/usr/local/hadoop/bin
添加到了PATH
,你可以直接执行:hdfs dfs -ls /
- 或者使用完整路径:/usr/local/hadoop/bin/hdfs dfs -ls /
设置
PATH
环境变量:
1.打开
.bashrc
文件:
nano ~/.bashrc
2.在文件末尾添加以下行:
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
3.保存并退出:使用的是
nano
,可以按
CTRL + X
退出,y确定更改,enter下达命令。(如果使用的是
vim
,可以按
Esc
键,然后输入
:wq
保存并退出。)
4.重新加载配置文件(使更改立即生效):
source ~/.bashrc
- 注意:如果你没有使用
source
命令重新加载配置文件,那么在打开新的终端会话时,系统会自动读取.bashrc
或.bash_profile
文件,并应用其中的环境变量设置。
这样,你就可以在任何目录下直接使用 Hadoop 命令了。
5.你可以通过以下命令验证环境变量是否设置成功:
echo $HADOOP_HOME
echo $PATH
总结:
- 使用
./bin
当你在 Hadoop 安装目录下工作时。 - 不需要
./bin
当你已经在PATH
中设置了 Hadoop 的bin
目录,或者你使用完整路径执行命令。 /home/hadoop
通常是指用户的家目录,而/usr/local/hadoop
是 Hadoop 的安装目录。
版权归原作者 Kika写代码 所有, 如有侵权,请联系我们删除。