hdfsに接続するユーザーを指定する


リモートからhdfsに接続するときに接続元のユーザーでアクセスしようとするので、権限がなければ、Permission deniedエラーが出る。以下の例だとhdfsユーザーのディレクトリにdrwtsn64がmkdirをしようとしたが権限がないので怒られている。

 Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
mkdir: Permission denied: user=drwtsn64, access=WRITE, inode="/user/drwtsn64/demo":hdfs:hdfs:drwxr-xr-x

その場合はHADOOP_USER_NAMEにユーザー名を指定してアクセスすればよい。

HADOOP_USER_NAME=hdfs hdfs dfs -mkdir -p /user/drwtsn64/demo