Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
WINDOWS上的HADOOP查找主机名$';主机名\r';使用start-dfs.sh名称或未知主机名的服务_Windows_Hadoop_Cygwin_Dos2unix - Fatal编程技术网

WINDOWS上的HADOOP查找主机名$';主机名\r';使用start-dfs.sh名称或未知主机名的服务

WINDOWS上的HADOOP查找主机名$';主机名\r';使用start-dfs.sh名称或未知主机名的服务,windows,hadoop,cygwin,dos2unix,Windows,Hadoop,Cygwin,Dos2unix,我正在用Cygwin在Windows7 64位上安装Hadoop。成功格式化Hadoop后,我希望使用命令start-dfs.sh启动它。但报告称: ]tarting namenodes on [DATASCIENCES01 : Name or service not knownstname datasciences01 Starting datanodes ]tarting secondary namenodes [0.0.0.0 : Name or service not knownstna

我正在用Cygwin在Windows7 64位上安装Hadoop。成功格式化Hadoop后,我希望使用命令start-dfs.sh启动它。但报告称:

]tarting namenodes on [DATASCIENCES01
: Name or service not knownstname datasciences01
Starting datanodes
]tarting secondary namenodes [0.0.0.0
: Name or service not knownstname 0.0.0.0
]tarting journal nodes [
: Name or service not knownstname

 2018-06-26 10:47:10,208 WARN util.Shell: Did not find winutils.exe: {}

java.io.FileNotFoundException: Could not locate Hadoop executable: C:\cygwin64\usr\local\hadoop-3.1.0\bin\winutils.exe -see https://wiki.apache.org/hadoop/WindowsProblems
    at org.apache.hadoop.util.Shell.getQualifiedBinInner(Shell.java:620)
    at org.apache.hadoop.util.Shell.getQualifiedBin(Shell.java:593)
    at org.apache.hadoop.util.Shell.<clinit>(Shell.java:690)
    at org.apache.hadoop.util.StringUtils.<clinit>(StringUtils.java:78)
    at org.apache.hadoop.hdfs.tools.GetConf$Command.<clinit>(GetConf.java:86)
    at org.apache.hadoop.hdfs.tools.GetConf.<clinit>(GetConf.java:136)
2018-06-26 10:47:10,540 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
我看到我的主机名被称为'DATASCIENCES01\r' 而不是“数据科学01”

我猜\r对应于Windows典型的行尾,因此我使用dos2unix转换文件core-site.xml,其中引用了NameNode名称:

<configuration>
<property>
<name>hadoop.tmp.dir</name>
 <value>/opt/hadoop_data</value>
 <description>directory for hadoop data</description>
 </property>
 <property>
 <name>fs.default.name</name>      
 <value>hdfs://DATASCIENCES01:54311</value>
 <description> data to be put on this URI</description>
 </property>
 <property>
 <name>fs.defaultFS</name>
 <value>hdfs://DATASCIENCES01:54311</value>
 <description>Use HDFS as file storage engine</description>
 </property>
 <property>
 <name>dfs.permissions</name>
 <value>false</value>
 </property>
 </configuration>

hadoop.tmp.dir
/opt/hadoop_数据
hadoop数据目录
fs.default.name
hdfs://DATASCIENCES01:54311
要放在此URI上的数据
fs.defaultFS
hdfs://DATASCIENCES01:54311
使用HDFS作为文件存储引擎
dfs.0权限
假的
但它不会在最后更改此“\r”

我在这个链接上找到了一个类似的主题:

但仍然没有答案


提前感谢

复制并粘贴文本。不要链接图像您的方向是正确的,但您需要以相反的方式运行该命令。因为您想将文本文件从Unix转换为dos。如果我使用unix2dos命令,它将不会删除Windows的回车符。不管怎样,我已经试过了,它没有改变任何东西,但感谢你多年来帮助meHadoop在windows中运行。你不需要Cygwin,但你需要winutils@Cielronix早些时候,我遇到了这个问题,因为我将一个脚本从windows复制到我的Linux机器上,并且必须为它运行dos2unix命令。这就是为什么我认为你的情况正好相反。你找到其他解决办法了吗?
<configuration>
<property>
<name>hadoop.tmp.dir</name>
 <value>/opt/hadoop_data</value>
 <description>directory for hadoop data</description>
 </property>
 <property>
 <name>fs.default.name</name>      
 <value>hdfs://DATASCIENCES01:54311</value>
 <description> data to be put on this URI</description>
 </property>
 <property>
 <name>fs.defaultFS</name>
 <value>hdfs://DATASCIENCES01:54311</value>
 <description>Use HDFS as file storage engine</description>
 </property>
 <property>
 <name>dfs.permissions</name>
 <value>false</value>
 </property>
 </configuration>