1. 程式人生 > >如何以hdfs的使用者來執行hadoop命令

如何以hdfs的使用者來執行hadoop命令

當hadoop叢集中加上許可權管理後,即使是linux的root使用者也不能擁有最高許可權了,因為hdfs的管理員是hdfs,那麼問題來了,怎麼在命令列呼叫hdfs的命令呢?

開啟檢查 HDFS 許可權
dfs.permissions

設定為true

建立目錄

su hdfs -c "hadoop fs -mkdir /spark-log"


分配許可權

su hdfs -l -c "hadoop fs -chown -R root:root /spark-log"
檢視目錄
su hdfs -l -c "hadoop fs -ls /"


說明:

假設使用者名稱為username,需要執行command程式,命令如下:
su username -l -c "comman"


其中“-l”表示以登入方式執行,這就意味著username的環境變數會被初始化,這在很多情況下是必須的。