hdfs常用命令:一
- 檔案操作
(1) 列出HDFS下的檔案
hdfs dfs -ls /
(2) 列出HDFS檔案下名為users的文件中的檔案
hdfs dfs -ls /users
(3) 上傳檔案
將hadoop目錄下的test01檔案上傳到HDFS上並重命名為test02:
hdfs dfs -put test01 /test02
(4) 檔案被複制到本地系統中
將HDFS中的test01 檔案複製到本地系統並命名為test02 :
hdfs dfs -get /test01 test02
(5) 刪除文件
刪除HDFS下名為 test01的文件:
hdfs dfs -rmr /test01
(6) 檢視檔案
檢視HDFS下 test021檔案中的內容:
hdfs dfs -cat /test02
(7) 建立目錄
hdfs dfs -mkdir /user/test_examples(目錄/目錄名)
只能一級一級的建目錄。
(8) 複製檔案
hdfs dfs -copyFromLocal 源路徑 路徑
(9)通過Hadoop命令把兩個檔案的內容合併起來
hdfs dfs -getmerge 位於hdfs中的原檔案(裡面有多個檔案) 合併後的檔名
例如:
hdfs dfs -getmerge /SogouResult.txt CombinedResult
注:合併後的檔案位於當前目錄,不在hdfs中,是本地檔案
2. 管理與更新
(1) 執行基本資訊
檢視HDFS的基本統計資訊:
hdfs dfsadmin -report
(2) 退出安全模式
NameNode在啟動時會自動進入安全模式。安全模式是NameNode的一種狀態,在這個階段,檔案系統不允許有任何修改。
系統顯示Name node in safe mode,說明系統正處於安全模式,這時只需要等待十幾秒即可,也可通過下面的命令退出安全模式:
hdfs dfsadmin -safemode leave
(3) 進入安全模式
在必要情況下,可以通過以下命令把HDFS置於安全模式:
hdfs dfsadmin -safemode enter
(4)節點新增
新增一個新的DataNode節點,先在新加節點上安裝好Hadoop,要和NameNode使用相同的配置(可以直接從NameNode複製),修改HADOOP_HOME/conf/slaves檔案,加入新節點名,再建立新加節點無密碼的SSH連線,執行啟動命令為:
start-all.sh
(5)負載均衡
HDFS的資料在各個DataNode中的分佈可能很不均勻,尤其是在DataNode節點出現故障或新增DataNode節點時。新增資料塊時NameNode對DataNode節點的選擇策略也有可能導致資料塊分佈不均勻。使用者可以使用命令重新平衡DataNode上的資料塊的分佈:
start-balancer.sh