2015-02-01 9 views
5

Ich habe Hadoop 2.6.0 installiert und ich spiele damit herum. Ich versuche, die Pseudo-verteilte Setup und ich folge den Anweisungen auf http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/SingleCluster.html#Execution Ich bin fest auf dem 5. Schritt das heißt, wenn ich den Befehl ausführenHDFS Fehler put: `Eingabe ': Keine solche Datei oder Verzeichnis

bin/hdfs dfs -put etc/hadoop input 

ich den unten Fehler.

15/02/02 00:35:49 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable 
put: `input': No such file or directory 

Warum erhalte ich diesen Fehler? Wie kann ich es lösen?

+0

dieses Problem hat hier beantworten, ihre Arbeit und wirklich nützlich. https://stackoverflow.com/questions/20821584/hadoop-2-2-installation-no-such-file-or-directory/20821739#20821739 –

Antwort

3

Sie erhalten den Fehler, weil kein solches Verzeichnis im Pfad angegeben ist. Bitte werfen Sie einen Blick auf my answer to a similar question, die erklärt, wie Hadoop relative Pfade interpretiert.

Stellen Sie sicher, das Verzeichnis erstellen Sie zunächst mit:

bin/hadoop fs -mkdir input 

und dann versuchen, den Befehl -put erneut auszuführen.

7

Zusätzlich zu dem, was Ashrith schrieb -p kann auch hinzugefügt werden, nur für den Fall, dass das Verzeichnis noch nicht erstellt wurde.

bin/hadoop fs -mkdir -p /path/to/hdfs/dir 

Hoffe das hilft jemand anderem.

0

In der obigen Frage aus zwei Teilen:

  1. Seine Darstellung Warnung das ist becuase U in 32-Bit-64-Bit kompiliert ein und Hadoop Mutter Lib verwenden werden müssen. Es ist eine Warnung, also hat das keinen Einfluss auf Ihren Code.
  2. Der zweite Fehler ist im Grunde, weil es nicht in der Lage ist, die Datei in den Eingabeordner zu legen. U brauchen Ordner in hadoop erstellen, um die hadoop mkdir Befehl:

hadoop fs -mkdir/hadoopinput

OR [Für neue Version]

hdfs dfs -mkdir/hadoopinput

Jetzt kann U Datei in den Ordner:

hdfs dfs -put/Benutzer/{username}/Desktop/file01/hadoopinput

0 setzen

die Datei zu überprüfen, in dem Ordner kopiert wird oder nicht folgenden Befehl verwenden:

hdfs dfs -ls/hadoopinput

0

GELÖST: 1. Ihr Verzeichnis in hdfs Make hdfs dfs -mkdir/input_file_name 2. Kopieren Sie Daten in hdfs. hadoop fs -put Dateiname.txt/Eingabedateiname/Ausgabedateiname

0

Es gibt zwei Fehler erstens ist native Hadoop-Bibliothek für Ihre Plattform. Dies liegt daran, dass Sie keine Hadoop-Winutils für Ihre Hadoop-Version installiert haben.Überprüfen Sie diese Antwort für weitere Details https://stackoverflow.com/a/46382570/6337190 Der zweite Fehler ist keine solche Datei oder ein solches Verzeichnis. Dies liegt daran, dass Sie den Pfad korrekt angeben müssen. Ändern Sie das Verzeichnis auf Ihrem hadoop/bin/und Befehle schreiben

Zum Verzeichnis

hdfs dfs -mkdir/Eingang

zu setzen Datei im Verzeichnis machen

hdfs dfs -Setzen/path/to/datei.txt/Eingang

Um Datei im Verzeichnis

hdfs dfs zu überprüfen -ls/input

0

Setzen Sie einfach "/" vor die Eingabe, da es ein Verzeichnis ist.

./bin/hdfs dfs -put etc/hadoop /input 

hoffe, das hilft

Verwandte Themen