hadoop常用命令总结
2019獨(dú)角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>
一、前述
分享一篇hadoop的常用命令的總結(jié),將常用的Hadoop命令總結(jié)如下。
二、具體
1、啟動(dòng)hadoop所有進(jìn)程
start-all.sh等價(jià)于start-dfs.sh + start-yarn.sh
但是一般不推薦使用start-all.sh(因?yàn)殚_(kāi)源框架中內(nèi)部命令啟動(dòng)有很多問(wèn)題)。
2、單進(jìn)程啟動(dòng)。
sbin/start-dfs.sh
---------------
??? 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 ...???????? //
?
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 nodemanager
3、常用命令
??? 1、查看指定目錄下內(nèi)容
?? hdfs dfs –ls [文件目錄](méi)
??? hdfs dfs -ls -R?? /?????????????????? //顯式目錄結(jié)構(gòu)
??? eg:?hdfs dfs –ls /user/wangkai.pt
?? 2、打開(kāi)某個(gè)已存在文件
??? hdfs dfs –cat [file_path]
?? eg:hdfs dfs -cat /user/wangkai.pt/data.txt
? 3、將本地文件存儲(chǔ)至hadoop
???? hdfs dfs –put [本地地址] [hadoop目錄](méi)
?????hdfs?dfs –put /home/t/file.txt? /user/t??
? 4、將本地文件夾存儲(chǔ)至hadoop
??? hdfs dfs –put [本地目錄](méi) [hadoop目錄](méi)?
????hdfs dfs?–put /home/t/dir_name /user/t
?? (dir_name是文件夾名)
? 5、將hadoop上某個(gè)文件down至本地已有目錄下
???? hadoop dfs -get [文件目錄](méi) [本地目錄](méi)
???? hadoop dfs –get /user/t/ok.txt /home/t
? 6、刪除hadoop上指定文件
???? hdfs? dfs –rm [文件地址]
???? hdfs dfs –rm /user/t/ok.txt
??7、刪除hadoop上指定文件夾(包含子目錄等)
???? hdfs?dfs –rm [目錄地址]
???? hdfs?dfs –rmr /user/t
? 8、在hadoop指定目錄內(nèi)創(chuàng)建新目錄
????? hdfs?dfs?–mkdir /user/t
??????hdfs? dfs -mkdir - p /user/centos/hadoop?
? 9、在hadoop指定目錄下新建一個(gè)空文件
? ? 使用touchz命令:
? ??hdfs?dfs? -touchz? /user/new.txt
? 10、將hadoop上某個(gè)文件重命名
?? 使用mv命令:
?? hdfs?dfs?–mv? /user/test.txt? /user/ok.txt?? (將test.txt重命名為ok.txt)
??11、將hadoop指定目錄下所有內(nèi)容保存為一個(gè)文件,同時(shí)down至本地
???hdfs?dfs?–getmerge /user /home/t
??12、將正在運(yùn)行的hadoop作業(yè)kill掉
???hadoop job –kill? [job-id]
??13.查看幫助
? hdfs dfs -help????????
4、安全模式
? (1)退出安全模式
????? NameNode在啟動(dòng)時(shí)會(huì)自動(dòng)進(jìn)入安全模式。安全模式是NameNode的一種狀態(tài),在這個(gè)階段,文件系統(tǒng)不允許有任何修改。
????? 系統(tǒng)顯示Name node in safe mode,說(shuō)明系統(tǒng)正處于安全模式,這時(shí)只需要等待十幾秒即可,也可通過(guò)下面的命令退出安全模式:/usr/local/hadoop$bin/hadoop dfsadmin -safemode leave
? (2) 進(jìn)入安全模式
??? 在必要情況下,可以通過(guò)以下命令把HDFS置于安全模式:/usr/local/hadoop$bin/hadoop dfsadmin -safemode enter
?
5、節(jié)點(diǎn)添加
添加一個(gè)新的DataNode節(jié)點(diǎn),先在新加節(jié)點(diǎn)上安裝好Hadoop,要和NameNode使用相同的配置(可以直接從NameNode復(fù)制),修改HADOOPHOME/conf/master文件,加入NameNode主機(jī)名。然后在NameNode節(jié)點(diǎn)上修改HADOOPHOME/conf/master文件,加入NameNode主機(jī)名。然后在NameNode節(jié)點(diǎn)上修改HADOOP_HOME/conf/slaves文件,加入新節(jié)點(diǎn)名,再建立新加節(jié)點(diǎn)無(wú)密碼的SSH連接,運(yùn)行啟動(dòng)命令為:/usr/local/hadoop$bin/start-all.sh
?
6、負(fù)載均衡
HDFS的數(shù)據(jù)在各個(gè)DataNode中的分布可能很不均勻,尤其是在DataNode節(jié)點(diǎn)出現(xiàn)故障或新增DataNode節(jié)點(diǎn)時(shí)。新增數(shù)據(jù)塊時(shí)NameNode對(duì)DataNode節(jié)點(diǎn)的選擇策略也有可能導(dǎo)致數(shù)據(jù)塊分布不均勻。用戶可以使用命令重新平衡DataNode上的數(shù)據(jù)塊的分布:/usr/local/hadoop$bin/start-balancer.sh
?
7、補(bǔ)充
1.對(duì)hdfs操作的命令格式是hdfs dfs ?
1.1 -ls 表示對(duì)hdfs下一級(jí)目錄的查看
1.2 -lsr 表示對(duì)hdfs目錄的遞歸查看
1.3 -mkdir 創(chuàng)建目錄
1.4 -put 從Linux上傳文件到hdfs
1.5 -get 從hdfs下載文件到linux
1.6 -text 查看文件內(nèi)容
1.7 -rm 表示刪除文件
1.7 -rmr 表示遞歸刪除文件
2.hdfs在對(duì)數(shù)據(jù)存儲(chǔ)進(jìn)行block劃分時(shí),如果文件大小超過(guò)block,那么按照block大小進(jìn)行劃分;不如block size的,劃分為一個(gè)塊,是實(shí)際數(shù)據(jù)大小。
*****PermissionDenyException? 權(quán)限不足********** ?
hadoop常用命令: ?
hdfs dfs? 查看Hadoop HDFS支持的所有命令? ?
hdfs dfs –ls? 列出目錄及文件信息? ?
hdfs dfs –lsr? 循環(huán)列出目錄、子目錄及文件信息? ?
hdfs dfs –put test.txt /user/sunlightcs? 將本地文件系統(tǒng)的test.txt復(fù)制到HDFS文件系統(tǒng)的/user/sunlightcs目錄下? ?
hdfs dfs –get /user/sunlightcs/test.txt .? 將HDFS中的test.txt復(fù)制到本地文件系統(tǒng)中,與-put命令相反? ?
hdfs dfs –cat /user/sunlightcs/test.txt? 查看HDFS文件系統(tǒng)里test.txt的內(nèi)容? ?
hdfs dfs –tail /user/sunlightcs/test.txt? 查看最后1KB的內(nèi)容? ?
hdfs dfs –rm /user/sunlightcs/test.txt? 從HDFS文件系統(tǒng)刪除test.txt文件,rm命令也可以刪除空目錄? ?
hdfs dfs –rmr /user/sunlightcs? 刪除/user/sunlightcs目錄以及所有子目錄? ?
hdfs dfs –copyFromLocal test.txt /user/sunlightcs/test.txt? 從本地文件系統(tǒng)復(fù)制文件到HDFS文件系統(tǒng),等同于put命令? ?
hdfs dfs –copyToLocal /user/sunlightcs/test.txt test.txt? 從HDFS文件系統(tǒng)復(fù)制文件到本地文件系統(tǒng),等同于get命令? ?
hdfs dfs –chgrp [-R] /user/sunlightcs? 修改HDFS系統(tǒng)中/user/sunlightcs目錄所屬群組,選項(xiàng)-R遞歸執(zhí)行,跟linux命令一樣? ?
hdfs dfs –chown [-R] /user/sunlightcs? 修改HDFS系統(tǒng)中/user/sunlightcs目錄擁有者,選項(xiàng)-R遞歸執(zhí)行? ?
hdfs dfs –chmod [-R] MODE /user/sunlightcs? 修改HDFS系統(tǒng)中/user/sunlightcs目錄權(quán)限,MODE可以為相應(yīng)權(quán)限的3位數(shù)或+/-{rwx},選項(xiàng)-R遞歸執(zhí)行
hdfs dfs –count [-q] PATH? 查看PATH目錄下,子目錄數(shù)、文件數(shù)、文件大小、文件名/目錄名? ?
hdfs dfs –cp SRC [SRC …] DST?????? 將文件從SRC復(fù)制到DST,如果指定了多個(gè)SRC,則DST必須為一個(gè)目錄? ?
hdfs dfs –du PATH? 顯示該目錄中每個(gè)文件或目錄的大小? ?
hdfs dfs –dus PATH? 類似于du,PATH為目錄時(shí),會(huì)顯示該目錄的總大小? ?
hdfs dfs –expunge? 清空回收站,文件被刪除時(shí),它首先會(huì)移到臨時(shí)目錄.Trash/中,當(dāng)超過(guò)延遲時(shí)間之后,文件才會(huì)被永久刪除? ?
hdfs dfs –getmerge SRC [SRC …] LOCALDST [addnl]????? 獲取由SRC指定的所有文件,將它們合并為單個(gè)文件,并寫(xiě)入本地文件系統(tǒng)中的LOCALDST,選項(xiàng)addnl將在每個(gè)文件的末尾處加上一個(gè)換行符? ?
hdfs dfs –touchz PATH?? 創(chuàng)建長(zhǎng)度為0的空文件? ?
hdfs dfs –test –[ezd] PATH???? 對(duì)PATH進(jìn)行如下類型的檢查:? -e PATH是否存在,如果PATH存在,返回0,否則返回1? -z 文件是否為空,如果長(zhǎng)度為0,返回0,否則返回1? -d 是否為目錄,如果PATH為目錄,返回0,否則返回1? ?
hdfs dfs –text PATH? 顯示文件的內(nèi)容,當(dāng)文件為文本文件時(shí),等同于cat,文件為壓縮格式(gzip以及hadoop的二進(jìn)制序列文件格式)時(shí),會(huì)先解壓縮??? hdfs dfs –help ls? 查看某個(gè)[ls]命令的幫助文檔
轉(zhuǎn)載于:https://my.oschina.net/chendongj/blog/1826812
總結(jié)
以上是生活随笔為你收集整理的hadoop常用命令总结的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: [react] 为什么建议Fragmen
- 下一篇: QT 笔记6 | Qt网络编程