假设Hadoop的安装目录HADOOP_HOME为/home/hadoop
启动与关闭
启动HADOOP
1. 进入HADOOP_HOME目录。
2. 执行sh bin/start-all.sh
关闭HADOOP
1. 进入HADOOP_HOME目录。
2. 执行sh bin/stop-all.sh
文件操作
Hadoop使用的是HDFS,能够实现的功能和我们使用的磁盘系统类似。并且支持通配符,如*。
查看文件列表
查看hdfs中/user/admin/aaron目录下的文件。
1. 进入HADOOP_HOME目录。
2. 执行sh bin/hadoop fs -ls /user/admin/aaron
这样,我们就找到了hdfs中/user/admin/aaron目录下的文件了。
我们也可以列出hdfs中/user/admin/aaron目录下的所有文件(包括子目录下的文件)。
1. 进入HADOOP_HOME目录。
2. 执行sh bin/hadoop fs -lsr /user/admin/aaron
文件操作
1.将本地文件拷贝到 hdfs 文件系统中
bin/hadoop fs -copyFromLocal /server/bin/nutch/urls/url.txturls
2.将hdfs中的文件拷贝到本地路径bin/hadoop fs -copyToLocal
urls(hdfs文件) /opt/index (本地路径)
3.查看hdfs文件系统内文件列表
bin/hadoop dfs -ls
4.删除hdfs文件系统中的文件
bin/hadoop dfs -rmr urls
5.进入hdfs 目录
bin/hadoop fs -ls /user/admin/aaron 6. 创建目录
bin/hadoop fs -mkdir /user/suse/newDir
7.删除文件
bin/hadoop fs -rm /user/suse/crawl/needDelete
8.删除目录下所有文件
bin/hadoop fs -rmr /user/suse/
9.查看文件内容
bin/hadoop fs –cat /user/suse/newFile
MAPREDUCE JOB操作
提交MAPREDUCE JOB
原则上说,Hadoop所有的MapReduce Job都是一个jar包。
运行一个/home/admin/hadoop/job.jar的MapReduce Job
1. 进入HADOOP_HOME目录。
2. 执行sh bin/hadoop jar /home/admin/hadoop/job.jar [jobMainClass] [jobArgs]
杀死某个正在运行的JOB
假设Job_Id为:job_201005310937_0053
1. 进入HADOOP_HOME目录。
2. 执行sh bin/hadoop job -kill job_201005310937_0053
更多HADOOP的命令
上面介绍的这些Hadoop的操作命令是我们最常用的。如果你希望了解更多,可以按照如下的方式获取命令的说明信息。
1. 进入HADOOP_HOME目录。
2. 执行sh bin/hadoop
我们可以看到更多命令的说明信息:
Usage: hadoop [--config confdir] COMMAND
where COMMAND is one of:
namenode -format format the DFS filesystem
secondarynamenode run the DFS secondary namenode
namenode run the DFS namenode
datanode run a DFS datanode
dfsadmin run a DFS admin client
fsck run a DFS filesystem checking utility
fs run a generic filesystem user client
balancer run a cluster balancing utility
jobtracker run the MapReduce job Tracker node
pipes run a Pipes job
tasktracker run a MapReduce task Tracker node
job manipulate MapReduce jobs
queue get information regarding JobQueues
version print the version
jar <jar> run a jar file
distcp <srcurl> <desturl> copy file or directories recursively
archive -archiveName NAME <src>* <dest> create a hadoop archive
daemonlog get/set the log level for each daemon
or
CLASSNAME run the class named CLASSNAME
Most commands print help when invoked w/o parameters.