Hadoop經常使用命令總結

1、前述node

分享一篇hadoop的經常使用命令的總結,將經常使用的Hadoop命令總結以下。linux

2、具體centos

一、啓動hadoop全部進程
start-all.sh等價於start-dfs.sh + start-yarn.sh安全

可是通常不推薦使用start-all.sh(由於開源框架中內部命令啓動有不少問題)。負載均衡


二、單進程啓動。框架

sbin/start-dfs.shoop

---------------atom

    sbin/hadoop-daemons.sh --config .. --hostname .. start namenode ...
    sbin/hadoop-daemons.sh --config .. --hostname .. start datanode ...
    sbin/hadoop-daemons.sh --config .. --hostname .. start sescondarynamenode ...
    sbin/hadoop-daemons.sh --config .. --hostname .. start zkfc ...         //spa

 

sbin/start-yarn.sh
--------------  
    libexec/yarn-config.sh
    sbin/yarn-daemon.sh --config $YARN_CONF_DIR  start resourcemanager
    sbin/yarn-daemons.sh  --config $YARN_CONF_DIR  start nodemanagerxml

三、經常使用命令

    一、查看指定目錄下內容

   hdfs dfs –ls [文件目錄]

    hdfs dfs -ls -R   /                   //顯式目錄結構

    eg: hdfs dfs –ls /user/wangkai.pt

   二、打開某個已存在文件

    hdfs dfs –cat [file_path]

   eg:hdfs dfs -cat /user/wangkai.pt/data.txt

  三、將本地文件存儲至hadoop

     hdfs dfs –put [本地地址] [hadoop目錄]

     hdfs dfs –put /home/t/file.txt  /user/t  

  四、將本地文件夾存儲至hadoop

    hdfs dfs –put [本地目錄] [hadoop目錄] 
    hdfs dfs –put /home/t/dir_name /user/t

   (dir_name是文件夾名)

  五、將hadoop上某個文件down至本地已有目錄下

     hadoop dfs -get [文件目錄] [本地目錄]

     hadoop dfs –get /user/t/ok.txt /home/t

  六、刪除hadoop上指定文件

     hdfs  dfs –rm [文件地址]

     hdfs dfs –rm /user/t/ok.txt

  七、刪除hadoop上指定文件夾(包含子目錄等)

     hdfs dfs –rm [目錄地址]

     hdfs dfs –rmr /user/t

  八、在hadoop指定目錄內建立新目錄

      hdfs dfs –mkdir /user/t

      hdfs  dfs -mkdir - p /user/centos/hadoop 

  九、在hadoop指定目錄下新建一個空文件

    使用touchz命令:

    hdfs dfs  -touchz  /user/new.txt

  十、將hadoop上某個文件重命名

   使用mv命令:

   hdfs dfs –mv  /user/test.txt  /user/ok.txt   (將test.txt重命名爲ok.txt)

  十一、將hadoop指定目錄下全部內容保存爲一個文件,同時down至本地

   hdfs dfs –getmerge /user /home/t

  十二、將正在運行的hadoop做業kill掉

   hadoop job –kill  [job-id]

  13.查看幫助

  hdfs dfs -help        

四、安全模式

  (1)退出安全模式

      NameNode在啓動時會自動進入安全模式。安全模式是NameNode的一種狀態,在這個階段,文件系統不容許有任何修改。

      系統顯示Name node in safe mode,說明系統正處於安全模式,這時只須要等待十幾秒便可,也可經過下面的命令退出安全模式:/usr/local/hadoop$bin/hadoop dfsadmin -safemode leave

  (2) 進入安全模式
    在必要狀況下,能夠經過如下命令把HDFS置於安全模式:/usr/local/hadoop$bin/hadoop dfsadmin -safemode enter

 

五、節點添加

添加一個新的DataNode節點,先在新加節點上安裝好Hadoop,要和NameNode使用相同的配置(能夠直接從NameNode複製),修改HADOOPHOME/conf/masterNameNodeNameNodeHADOOPHOME/conf/master文件,加入NameNode主機名。而後在NameNode節點上修改HADOOP_HOME/conf/slaves文件,加入新節點名,再創建新加節點無密碼的SSH鏈接,運行啓動命令爲:/usr/local/hadoop$bin/start-all.sh

 

六、負載均衡

HDFS的數據在各個DataNode中的分佈可能很不均勻,尤爲是在DataNode節點出現故障或新增DataNode節點時。新增數據塊時NameNode對DataNode節點的選擇策略也有可能致使數據塊分佈不均勻。用戶可使用命令從新平衡DataNode上的數據塊的分佈:/usr/local/hadoop$bin/start-balancer.sh

七、補充

1.對hdfs操做的命令格式是hdfs dfs  1.1 -ls 表示對hdfs下一級目錄的查看1.2 -lsr 表示對hdfs目錄的遞歸查看1.3 -mkdir 建立目錄1.4 -put 從Linux上傳文件到hdfs1.5 -get 從hdfs下載文件到linux1.6 -text 查看文件內容1.7 -rm 表示刪除文件1.7 -rmr 表示遞歸刪除文件2.hdfs在對數據存儲進行block劃分時,若是文件大小超過block,那麼按照block大小進行劃分;不如block size的,劃分爲一個塊,是實際數據大小。*****PermissionDenyException  權限不足**********  hadoop經常使用命令:  hdfs dfs  查看Hadoop HDFS支持的全部命令   hdfs dfs –ls  列出目錄及文件信息   hdfs dfs –lsr  循環列出目錄、子目錄及文件信息   hdfs dfs –put test.txt /user/sunlightcs  將本地文件系統的test.txt複製到HDFS文件系統的/user/sunlightcs目錄下   hdfs dfs –get /user/sunlightcs/test.txt .  將HDFS中的test.txt複製到本地文件系統中,與-put命令相反   hdfs dfs –cat /user/sunlightcs/test.txt  查看HDFS文件系統裏test.txt的內容   hdfs dfs –tail /user/sunlightcs/test.txt  查看最後1KB的內容   hdfs dfs –rm /user/sunlightcs/test.txt  從HDFS文件系統刪除test.txt文件,rm命令也能夠刪除空目錄   hdfs dfs –rmr /user/sunlightcs  刪除/user/sunlightcs目錄以及全部子目錄   hdfs dfs –copyFromLocal test.txt /user/sunlightcs/test.txt  從本地文件系統複製文件到HDFS文件系統,等同於put命令   hdfs dfs –copyToLocal /user/sunlightcs/test.txt test.txt  從HDFS文件系統複製文件到本地文件系統,等同於get命令   hdfs dfs –chgrp [-R] /user/sunlightcs  修改HDFS系統中/user/sunlightcs目錄所屬羣組,選項-R遞歸執行,跟linux命令同樣   hdfs dfs –chown [-R] /user/sunlightcs  修改HDFS系統中/user/sunlightcs目錄擁有者,選項-R遞歸執行   hdfs dfs –chmod [-R] MODE /user/sunlightcs  修改HDFS系統中/user/sunlightcs目錄權限,MODE能夠爲相應權限的3位數或+/-{rwx},選項-R遞歸執行hdfs dfs –count [-q] PATH  查看PATH目錄下,子目錄數、文件數、文件大小、文件名/目錄名   hdfs dfs –cp SRC [SRC …] DST       將文件從SRC複製到DST,若是指定了多個SRC,則DST必須爲一個目錄   hdfs dfs –du PATH  顯示該目錄中每一個文件或目錄的大小   hdfs dfs –dus PATH  相似於du,PATH爲目錄時,會顯示該目錄的總大小   hdfs dfs –expunge  清空回收站,文件被刪除時,它首先會移到臨時目錄.Trash/中,當超過延遲時間以後,文件纔會被永久刪除   hdfs dfs –getmerge SRC [SRC …] LOCALDST [addnl]      獲取由SRC指定的全部文件,將它們合併爲單個文件,並寫入本地文件系統中的LOCALDST,選項addnl將在每一個文件的末尾處加上一個換行符   hdfs dfs –touchz PATH   建立長度爲0的空文件   hdfs dfs –test –[ezd] PATH     對PATH進行以下類型的檢查:  -e PATH是否存在,若是PATH存在,返回0,不然返回1  -z 文件是否爲空,若是長度爲0,返回0,不然返回1  -d 是否爲目錄,若是PATH爲目錄,返回0,不然返回1   hdfs dfs –text PATH  顯示文件的內容,當文件爲文本文件時,等同於cat,文件爲壓縮格式(gzip以及hadoop的二進制序列文件格式)時,會先解壓縮    hdfs dfs –help ls  查看某個[ls]命令的幫助文檔

相關文章
相關標籤/搜索