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/start-yarn.sh
3.常用命令
3.1 查看指定目錄下內(nèi)容
hdfs dfs –ls [文件目錄](méi)
hdfs dfs -ls -R / //顯式目錄結(jié)構(gòu)
hadoop fs -ls /
3.2 打開(kāi)某個(gè)已存在文件
#hdfs dfs –cat [file_path]
hdfs dfs -cat /user/wangkai.pt/data.txt
3.3 將本地文件存儲(chǔ)至hadoop
#hdfs dfs –put [本地地址] [hadoop目錄](méi)
hdfs dfs –put test.txt /user/hadoop/input
4.將本地文件夾存儲(chǔ)至hadoop
#hdfs dfs –put [本地目錄](méi) [hadoop目錄](méi)
hdfs dfs –put /home/t/dir_name /user/t
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è)空文件
hdfs dfs -touchz /user/new.txt
10.將hadoop上某個(gè)文件重命名
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.安全模式
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
4.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)上修改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ù)塊分布不均勻惦界。用戶(hù)可以使用命令重新平衡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 類(lèi)似于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)行如下類(lèi)型的檢查: -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]命令的幫助文檔