5.5 用户操作情景分析 5.5.1 创建目录情景分析 创建目录的过程即为执行mkdir命令的流程:首先从org.apache.hadoop.fs.FsShell.java的main(String argv[])入口方法开始,通过RPC远程调用NameNode的mkdirs(String src, FsPermission masked)方法,然后进入org.apache.hadoop.hdfs.server.namenode.FSDirectory.java中的addChild(INode[] pathComponents, int pos, T child, long childDiskspace, boolean inheritPermission, boolean checkQuota)方法,在目录树中添加节点,完成整个过程。下面详细分析$HADOOP_HOME/bin/hadoop dfs -mkdir /usr/root/mydir命令的执行流程。1. org.apache.hadoop.fs.FsShell.java的main(String argv[])方法首先实例化FsShell,并在其run()方法中处理输入参数,在run()方法中,参数被传递到doall(String cmd, String argv[], int startindex)方法处理,然后传入mkdir(String src)方法。