错误如下

NativeException: java.io.IOException: java.lang.reflect.InvocationTargetException
  initialize at /usr/local/hadoop/hbase-release/lib/ruby/hbase/hbase.rb:42
      (root) at /usr/local/hadoop/hbase-release/bin/hirb.rb:118

原因
hbase shell 在启动时会获取hadoop相关的jar,在hbase.tmp.dir创建临时文件,与server端建立连接

  1. 对hbase.tmp.dir无读写权限
    <property> 
      <name>hbase.tmp.dir</name> 
      <value>/tmp/hbase-${user.name}</value> 
    </property> 
    RESOLUTION: 
    Ensure the users of hbase shell have read and write permissions for hbase.tmp.dir
  2. 无法获取hadoop相关jar
    遇到的情况, 不知谁注释了 hadoop 中 classpath的输出,导致无法获取classpath值,也爆出上述错误