在配置好2台预装优麒麟Linux系统虚拟机的hadoop以后,我回头重新试了试之前装残的Ubuntu Server LTS,在输入一些上传文件的命令的时候:
bin/hdfs dfs -put etc/hadoop/*.xml input
出现这样的问题:
There are 0 datanode(s) running and node(s) are excluded in this operation
对问题原因的一些猜测:
首先是背景,由于一时贪图方便,用root用户完成了所有安装、调试、配置hadoop的过程,埋下了重磅隐患。远程客户端是无法用该机子的root用户进行远程登录的,意味着自己登录自己(localhost)也不行,用root就会被禁止。估摸着第二次以master为用户的重装hadoop的时候,之前遗留的root痕迹并没有清理干净,导致了一系列问题。datanode十有八九是以root权限进行配置的,再用master用户启动start-dfs.sh肯定不行。事实也是如此,namenode能够正常启动,而datanode不行。
解决办法,首先得找到hadoop系统存放文件块的目录,它在这里:
根目录/tmp/hadoop-(用户名)/dfs/
在d