2012-12-10 3 views
3
sudo -u hdfs hadoop fs -copyFromLocal input.csv input.csv 
copyFromLocal: `input.csv': No such file or directory 

Quelqu'un peut-il me dire la raison exacte pour laquelle je reçois ce genre d'erreur? J'ai donné toutes les permissions au fichier input.csv et j'ai même changé le propriétaire en hdfs. Je suis nouveau à Hadoop et Hbase.Hadoop -copyFromLocal ne peut pas trouver le fichier d'entrée

+1

Êtes-vous d'exécuter cette commande dans un répertoire qui contient input.csv? – Will

+0

Oui. Même j'ai essayé en donnant le chemin complet qualifié de ce fichier input.csv .. toujours le même résultat. sudo -u hdfs hadoop fs -copyFromLocal /home/amiverma/input.csv/hbase/entrée – MapReddy

Répondre

0

Syntaxe: Hadoop DSF -copyFromLocal completelocalfilesystempath hdfspath

Exemple: Soit input.csv être dans localPath/usr/exemples et mon chemin de HDFS où il doit être copié est/usr/entrée de sorte que le commande sera

Hadoop DSF -copyFromLocal /usr/examples/input.csv/usr/input/

+0

Thanx vinay pour votre réponse rapide ouais même j'ai essayé avec le chemin complet du système de fichiers local, la sortie est toujours la même. Et la commande ressemble à sudo -u hdfs hadoop fs -copyFromLocal /home/amiverma/input.csv/hbase/input/ – MapReddy

+0

Salut MadhusudhanaReddy fait la commande sudo -u hdfs hadoop fs -copyFromLocal /home/amiverma/input.csv/hbase/input/montre Exception des permissions donc j'ai essayé d'utiliser hadoop dfs -copyFromLocal /home,amiverma/input.csv/hbase/input/cela a fonctionné –

4

Dans ce cas, vous essayez de lire le fichier en tant qu'utilisateur HDFS, WHI ch n'a peut-être pas l'autorisation d'afficher ce fichier. Pour tester, faites ceci:

sudo -u hdfs cat input.csv 

Si vous obtenez l'autorisation refusée, vous devez soit modifier les autorisations de ce fichier afin que l'utilisateur hdfs peut le lire (ou si elle a déjà lu les autorisations, déplacer le fichier à un répertoire que l'utilisateur hdfs peut lire) ou utiliser un autre utilisateur autorisé à accéder aux répertoires/fichiers locaux et distants.

1

Vous devez vous assurer que l'utilisateur hdfs a l'autorisation de lecture à tous les répertoires parents de input.csv le long du chemin.

0

Pour copier des fichiers que vous pouvez l'exécuter comme ceci:

cat input.csv | sudo -u hdfs hadoop fs -put - input.csv 
Questions connexes