2016-10-14 4 views
2

hdfsユーザを使用してコマンドを呼び出す必要があります。私の環境では、Kerberos認証ですので、私はHDFSのユーザーのKerberosチケットを取得するには、次のコマンドを呼び出したことを行うには:hdfsユーザのKerberosティッカーを取得するとエラーが発生する

Using default cache: /run/user/krb5cc/krb5cc_MyUserID 
Using principal: [email protected] 
Using keytab: /etc/security/keytabs/hdfs.headless.keytab 
kinit: Password has expired while getting initial credentials 

Iを:コマンドは次のエラーを投げた

kinit -V -kt /etc/security/keytabs/hdfs.headless.keytab hdfs 

私は次のエラー

を取得

sudo kinit -V -kt /etc/security/keytabs/hdfs.headless.keytab hdfs 

するコマンドでsudoを使用するようにしてください

私がsudoを使う必要があるかもしれない理由は、keytabファイルに "-r - r -----"という権限があり、rootが所有者であるからです。

hdfsユーザーのtgtを取得して後で使用できるようにするにはどうすればよいですか?

答えて

1

あなたはそれがキータブのプリンシパルを表示するjavaコマンドの下に

ktab -l -k /etc/security/keytabs/hdfs.headless.keytab 

を使用してキータブのプリンシパルを確認することができます。そのプリンシパルを使用して、kinitコマンドを使用してキータブで認証します。

+0

くれ「-bash:ktabを使用する:コマンドが見つかりません」を与える私は「klistを-kte /etc/security/keytabs/hdfs.headless.keytab」を使用してpricipalsをチェックしようとしましたが、それは私のプリンシパル名のリストを与えたエラー – Sarah

+1

を。それは同じではありませんか?検索されたリストの項目の例は「16 06/22/2016 21:45:39 hdfs-clusterName @ myRealm(encryptionTechnique)」です。 – Sarah

+0

はい、「klist」も使用できます。プリンシパルを「hdfs」として表示していますか?そうでない場合は、取得したプリンシパルを「hdfs」の代わりにチケットを取得するために使用してください – Kumar

関連する問題