Behebung des Fehlers "Datei nicht gefunden"
Beim Kopieren von Dateien in das HDFS können Sie den Fehler "Datei nicht gefunden" erhalten. Dieser Fehler kann aus verschiedenen Gründen auftreten, wie z. B. falsche Dateipfade, Berechtigungsfehler oder die Tatsache, dass die Datei nicht am angegebenen Ort existiert. Lassen Sie uns einige häufige Schritte zur Fehlerbehebung untersuchen, um dieses Problem zu beheben.
Überprüfen Sie den Dateipfad
Stellen Sie sicher, dass der Dateipfad, den Sie zum Kopieren der Datei in das HDFS verwenden, korrekt ist. Überprüfen Sie noch einmal den Dateinamen, die Verzeichnisstruktur und alle relativen oder absoluten Pfade, die Sie angeben.
Hier ist ein Beispiel, wie Sie den Dateipfad auf einem Ubuntu 22.04 - System überprüfen können:
$ hadoop fs -ls /user/data/input.txt
ls: `/user/data/input.txt': No such file or directory
In diesem Fall existiert die Datei input.txt
nicht im Verzeichnis /user/data
im HDFS.
Überprüfen Sie die Dateiberechtigungen
Stellen Sie sicher, dass Sie die erforderlichen Berechtigungen haben, um die Datei im HDFS zuzugreifen und zu kopieren. Der Benutzer, der die Hadoop - Befehle ausführt, sollte Lese - und Schreibberechtigungen für das Zielverzeichnis im HDFS haben.
Sie können die Berechtigungen mit dem Befehl hadoop fs -ls
überprüfen:
$ hadoop fs -ls /user
Found 1 items
drwxr-xr-x - user supergroup 0 2023-04-28 10:30 /user
In diesem Beispiel hat der Benutzer Lese - und Ausführungsberechtigungen (gekennzeichnet durch r-x
) für das Verzeichnis /user
.
Stellen Sie sicher, dass die Datei lokal existiert
Bevor Sie die Datei in das HDFS kopieren, stellen Sie sicher, dass die Datei auf dem lokalen Dateisystem existiert. Sie können den Befehl ls
verwenden, um die Existenz der Datei zu überprüfen:
$ ls /home/user/data/input.txt
/home/user/data/input.txt
Wenn die Datei lokal nicht existiert, müssen Sie sie an den richtigen Ort hochladen, bevor Sie versuchen, sie in das HDFS zu kopieren.
Indem Sie diese Schritte zur Fehlerbehebung befolgen, sollten Sie in der Lage sein, den Fehler "Datei nicht gefunden" beim Kopieren von Dateien in das HDFS zu identifizieren und zu beheben.