哎呀,我是 ubuntu 新手。我在 Windows 11 中通过 virtualbox 7.0.8 安装了 ubuntu 18.04 LTS,使用名为 vagrant 的共享文件夹与 ubuntu 通信。以下是我所做的:1.安装 JDK
sudo mkdir /usr/lib/jvm
sudo tar -zxvf jdk-8u291-linux-x64.tar.gz -C /usr/lib/jvm
然后编辑环境变量sudo vim ~/.bashrc
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_291
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
- 下载 hbase-2.4.4-bin.tar.gz到共享文件夹 vagrant/
tar xzvf hbase-2.4.4-bin.tar.gz
cd hbase-2.4.4
# edit JAVA_HOME environ variable
# open conf/hbase-env.sh
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_291
然后在 conf/hbase-site.xml 中添加了一些属性
- 安装 Thrift
sudo apt-get install automake bison flex g++ git libboost-all-dev libevent-dev libssl-dev libtool make pkg-config
tar zxf thrift-0.14.2.tar.gz
cd thrift-0.14.2
在共享文件夹中,我无法运行 ./configure configure: error: cannot run C compiled programs
,如果我运行./configure --host=x86_64
,会出现很多编译问题。因此我将 thrift-0.14.2.tar.gz 复制到 home/ 文件夹,以执行以下 3 个命令
sudo ./configure
sudo make
sudo make install
问题 1:我这一步做对了吗?Windows 中的共享文件夹真的不能编译 Linux 文件吗?但我认为 vagrant/ 共享文件夹在 Ubuntu 中,为什么我不能运行它?
- 最奇怪的事情就在这里发生了。
vagrant@vagrant:/vagrant/hbase-2.4.4$ chmod +x bin/*.sh
vagrant@vagrant:/vagrant/hbase-2.4.4$ sudo bin/start-hbase.sh
vagrant@vagrant:/vagrant/hbase-2.4.4$ sudo bin/hbase-daemon.sh start thrift
我可以运行hbase,但是当输入第3条命令时,出现以下错误:
sudo: ./bin/hbase-daemon.sh: command not found
如果我不使用 sudo 运行 hbase-daemon.sh,它会显示-bash: bin/hbase-daemon.sh: Permission denied
奇怪的事情,如果我sudo bin/hbase-daemon.sh start thrift
首先运行,然后sudo bin/start-hbase.sh
失败并引发权限被拒绝。
然后我重启虚拟机,运行ls -l vagrant/hbase-2.4.4/bin/
start-hbase.sh和hbase-daemon.sh都显示绿色:
-rwxrwxrwx 1 vagrant vagrant 2372 Jan 22 2020 start-hbase.sh
-rwxrwxrwx 1 vagrant vagrant 12502 Jan 22 2020 hbase-daemon.sh
但如果我运行 hbase,然后运行 thrift,ls -l 显示
-rwxrwxrwx 1 vagrant vagrant 2372 Jan 22 2020 start-hbase.sh
-rw-rw-rw- 1 vagrant vagrant 12502 Jan 22 2020 hbase-daemon.sh
hbase-daemon.sh 自己变成白色。 尽管我已经跑了
vagrant@vagrant:/vagrant/hbase-2.4.4$ sudo chmod +x ./bin/hbase-daemon.sh
vagrant@vagrant:/vagrant/hbase-2.4.4$ sudo chmod -R 777 ./bin/hbase-daemon.sh
但它仍然显示:
-rw-rw-rw- 1 vagrant vagrant 12502 Jan 22 2020 hbase-daemon.sh
但是,如果我再次重新启动虚拟机,它就会恢复到
-rwxrwxrwx 1 vagrant vagrant 12502 Jan 22 2020 hbase-daemon.sh
问题 2:有人遇到过这种情况吗?我真的不知道我的行为有什么问题。