2014-12-29 95 views
3

我正在關注Hadoop上的Udacity's course,它指示使用命令hadoop fs -ls列出文件。但是在運行Ubuntu的機器上,它將列出當前工作目錄中的文件。我究竟做錯了什麼?「hadoop fs -ls」列出當前工作目錄中的文件

which hadoop命令給出的輸出: /home/usrname/hadoop-2.5.1//hadoop

是在路徑中的雙斜槓這個問題的原因是什麼?

+0

您的文件將作爲HDFS完全一樣? – SMA

+0

@almasshaikh:我通過從不同目錄嘗試命令排除了這種可能性。 – Tanay

+1

粘貼以下命令的輸出:ls; hadoop fs -ls;別名hadoop; hadoop – SMA

回答

2

您的文件系統必須指向本地文件系統。只需修改配置以將其指向HDFS並重新啓動進程即可。

入住此配置:

<property> 
    <name>fs.default.name</name> 
    <value>hdfs://<IP>:<Port></value> 
</property> 
1

你必須爲你的當前用戶的Hadoop根文件夾設置路徑.bashrc文件東西作爲

export HADOOP_HOME=/home/seo/hadoop/hadoop-1.2.1 

然後將其添加到系統路徑變量作爲

export PATH=$PATH:$HADOOP_HOME/bin: 

而且那麼當你使用

hadoop fs -ls 

將列出您的hdfs文件系統文件,如果您的hadoop集羣已啓動並正在運行。

+0

我試過了你的解決方案,但問題仍然存在。 – Tanay

+0

你有什麼錯誤? –

+0

沒有收到任何錯誤。它只是列出當前工作目錄中的文件,而不是在HDFS中列出文件。 – Tanay

1

您的客戶端很可能沒有選擇正確的hadoop配置文件,這就是爲什麼它默認爲您的本地文件系統。

將HADOOP_CONF_DIR設置爲hadoop配置文件的目錄。同時驗證在core-site.xml中正確指定了fs.defaultFS。

0

能不能請你運行下面的命令?請檢查您的core-site.xml中提供的Ashish建議的配置後,請執行此操作。

Hadoop的DFS -ls HDFS:// IP:PORT/

感謝 Arani

相關問題