簡體   English   中英

HBase在./start-hbase.sh之后不運行 - 權限被拒絕?

[英]HBase does not run after ./start-hbase.sh - Permission Denied?

我想運行HBase。 我完全安裝了hadoop,當我運行start-all.sh ,它工作正常並給我輸出:

hduser@CSLAP106:/usr/local/hadoop/bin$ jps
11956 SecondaryNameNode
12046 JobTracker
12193 TaskTracker
11800 DataNode
11656 NameNode
12254 Jps

但是當我想運行start-hbase.sh ,它會給我一些拒絕權限的錯誤,我不明白為什么:

hduser@CSLAP106:/usr/local/hbase/hbase-0.94.6.1/bin$ ./start-hbase.sh
localhost: starting zookeeper, logging to /usr/local/hbase/hbase-0.94.6.1/bin/../logs/hbase-hduser-zookeeper-CSLAP106.out

localhost: /usr/local/hbase/hbase-0.94.6.1/bin/hbase-daemon.sh: line 150: /usr/local/hbase/hbase-0.94.6.1/bin/../logs/hbase-hduser-zookeeper-CSLAP106.log: Permission denied

localhost: head: cannot open ‘/usr/local/hbase/hbase-0.94.6.1/bin/../logs/hbase-hduser-zookeeper-CSLAP106.out’ for reading: No such file or directory

/usr/local/hbase/hbase-0.94.6.1/bin/hbase-daemon.sh: line 150: /usr/local/hbase/hbase-0.94.6.1/bin/../logs/hbase-hduser-master-CSLAP106.log: Permission denied

head: cannot open ‘/usr/local/hbase/hbase-0.94.6.1/bin/../logs/hbase-hduser-master-CSLAP106.out’ for reading: No such file or directory

localhost: starting regionserver, logging to /usr/local/hbase/hbase-0.94.6.1/bin/../logs/hbase-hduser-regionserver-CSLAP106.out

localhost: /usr/local/hbase/hbase-0.94.6.1/bin/hbase-daemon.sh: line 150: /usr/local/hbase/hbase-0.94.6.1/bin/../logs/hbase-hduser-regionserver-CSLAP106.log: Permission denied

localhost: head: cannot open ‘/usr/local/hbase/hbase-0.94.6.1/bin/../logs/hbase-hduser-regionserver-CSLAP106.out’ for reading: No such file or directory

之后,我試着運行sudo ./start-hbase.sh ,我sudo ./start-hbase.sh了!

root@localhost's password:

我不知道我應該在這里輸入什么 無論如何,我只是點擊回車 ,它再次切換回hduser

root@localhost's password: 
root@localhost's password: localhost: Permission denied, please try again.

root@localhost's password: localhost: Permission denied, please try again.

localhost: Permission denied (publickey,password).
starting master, logging to /usr/local/hbase/hbase-0.94.6.1/bin/../logs/hbase-root-  master-CSLAP106.out
root@localhost's password: 
root@localhost's password: localhost: Permission denied, please try again.

root@localhost's password: localhost: Permission denied, please try again.

localhost: Permission denied (publickey,password).
hduser@CSLAP106:/usr/local/hbase/hbase-0.94.6.1/bin$

我在hbase-env.shhbase-site.xml文件中添加了一些hbase-env.sh ,以hbase-site.xml

hbase-env.sh

# File naming hosts on which HRegionServers will run.  $HBASE_HOME/conf/regionservers by    default.
export HBASE_REGIONSERVERS=/usr/local/hbase/hbase-0.94.6.1/conf/regionservers

# File naming hosts on which backup HMaster will run.  $HBASE_HOME/conf/backup-masters by default.
export HBASE_BACKUP_MASTERS=/usr/local/hbase/hbase-0.94.6.1/conf/backup-masters

# Tell HBase whether it should manage it's own instance of Zookeeper or not.
export HBASE_MANAGES_ZK=true

HBase的-site.xml中

<configuration>
<property>
        <name>hbase.rootdir</name>
    <value>hdfs://localhost:54310/hbase</value>
</property>

<property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
</property>

那么,你認為HBase沒有運行的是什么問題! 我真的很累這個。 我已經工作了幾周,每次都會出現新的錯誤。 我非常感謝您花時間和精力幫助我:)

你說ls -l start-hbase.sh的輸出是:

-rwxr-xr-x 1 root root 1872 huhti 4 2013 start-hbase.sh

如果你想知道你正在登錄的用戶和組,我們有簡單的方法:

touch test
ls -l test

並檢查用戶:組...

問題是腳本的用戶所有者和組所有者..您有兩個解決方案:

1) sudo chown hduser:hduser start-hbase.sh  #here hduser is example...you should know what user and group you have,,,

為了使它成為你的奴隸...具有可執行狀態( sudo chmod +x start-hbase.sh

2) you can be root by: "su root" or "sudo su" or "sudo bash"

然后執行腳本......

如果在更改start-hbase.sh的權限后仍有問題,請運行以下命令

sudo chown -R hduser:hadoop /usr/local/hbase

授予'hbase'目錄寫入日志文件的權限。

我希望這對其他人有幫助......

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM