1. 程式人生 > >Linux 建立使用者 並且設定許可權,以及免密碼登陸

Linux 建立使用者 並且設定許可權,以及免密碼登陸

一、建立新使用者

sudo useradd -d /home/hadoop3.0 -m hadoop3.0 //-d設定使用者目錄路徑,-m設定登入名

passwd hadoop3.0 //設定密碼

然後使用切換至hadoop3.0時,命令列開頭只顯示$:,並且一些shell語句無法使用。

查詢資料後發現此時的shell被設定為sh,故在/etc/passwd將/bin/sh改為/bin/bash後恢復正常。

hadoop3.0:x:1002:1002::/home/hadoop3.0:/bin/bash

關於sh與bash的區別

http://blog.csdn.net/eager7/article/details/14221901

http://blog.chinaunix.net/uid-24709751-id-3575988.html

接著在使用sudo時報錯,原因是新建立的使用者需要在/etc/sudoers中新增sudo許可權

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL
hadoop3.0 ALL=(ALL)ALL

將環境變數設定到.bashrc中

export JAVA_HOME=/usr/local/java/jdk1.8.0_101  //hadoop3.0需要java8
export HADOOP_HOME=~/usr/local/hadoop/hadoop-3.0.0-alpha1
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:${HIVE_HOME}/lib
export SCALA_HOME=~/usr/local/scala/scala-2.10.5
export SPARK_HOME=~/usr/local/spark/spark-2.0.1-bin-hadoop2.7
export SQOOP_HOME=~/usr/local/sqoop/sqoop-1.4.6
export HIVE_HOME=~/usr/local/hive/hive-1.2.1
export HBASE_HOME=~/usr/local/hbase/hbase-1.0.1.1
export PATH=${SPARK_HOME}/bin:${SCALA_HOME}/bin:${JAVA_HOME}/bin:${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin:${SQOOP_HOME}/bin:${HADOOP_HOME}/lib:${HIVE_HOME}/bin:${HBASE_HOME}/bin:$PATH

二、新建使用者設定ssh免密碼登陸

ssh-keygen -t rsa  //生成金鑰id-rsa、公鑰id-rsa.pub
ssh-copy-id 目標機器

將公鑰的內容複製到需要ssh免密碼登陸的機器的~/.ssh/authorized_keys檔案中。

例如:A機器中生成金鑰及公鑰,然後將公鑰內容複製到B機器的authorized_keys檔案中,這樣變實現了A免密碼ssh登陸B。