使用龙蜥系统部署4.3.5.2版本数据库时,使用"obd cluster deploy nwh_database -c mini-single-example.yaml" 时,提示"OBD-1002: Fail to init 127.0.0.1 home path: /software/ocean_base_data permission denied “,使用"obd cluster deploy nwh_database -c mini-single-example.yaml -f"时,提示"OBD-1002: Fail to init 127.0.0.1 home path/bin/sh: symbol lookup error: /bin/sh: undefined symbol: rl_trim_arg_from_keyseq”,请教下大佬们这个问题怎么解决呢?
你使用什么用户执行的命令,如果是admin 用户,就看看/software/ocean_base_data的owner 用户是否是root,如果是,请做如下修改 chown -R admin.admin /software/ocean_base_data!
解决方法:
确认该目录的权限
执行:
ls -ld /software/ocean_base_data
看看属主和权限。
修改目录权限或属主
如果你确认该目录应该由当前用户管理,可以执行:
sudo chown -R $(whoami) /software/ocean_base_data
或者:
sudo chmod -R 755 /software/ocean_base_data
如果目录是 root 用户的专用目录
则考虑使用 sudo 来执行部署命令:
sudo obd cluster deploy nwh_database -c mini-single-example.yaml
(确保 root 用户环境配置也正常)
第二个错误:/bin/sh 符号查找错误
/bin/sh: symbol lookup error: /bin/sh: undefined symbol: rl_trim_arg_from_keyseq
产生原因:
这个错误来自于 /bin/sh,通常是因为系统的 动态链接库(libreadline)版本冲突或损坏。
rl_trim_arg_from_keyseq 是 readline 库中的一个符号,如果 /bin/sh 链接到的 readline 版本不匹配或缺少该符号,就会报错。
解决方法:
检查当前系统的 libreadline 版本
执行:
ldd /bin/sh | grep readline
如果没有链接到 libreadline,或者链接到的版本不对,需要修复。
安装或修复 readline 库
在基于 rpm 系统(如龙蜥、CentOS 等):
sudo yum reinstall readline
或者如果 readline 缺失:
sudo yum install readline readline-devel
在基于 deb 系统(如 Ubuntu):
sudo apt-get install --reinstall libreadline8
确认 /bin/sh 实际指向
通常 /bin/sh 是指向 bash 或者 dash 的软链接:
ls -l /bin/sh
如果是 dash,你可以尝试切换到 bash:
sudo ln -sf /bin/bash /bin/sh
然后再试。
环境变量冲突
确保 LD_LIBRARY_PATH 没有设置到一个不兼容的 readline 目录。可以先 unset:
unset LD_LIBRARY_PATH
这个问题解决了,又有新的错误。
执行start 数据库时,[ERROR] import obshell_bootstrap failed。执行obd display-trace d8f926f8-40e0-11f0-93e8-fa163e5b288e时为空,没有信息输出
obshell运行出问题了
这个怎么查看具体的问题呢
请发到 “OceanBase 技术问题” 板块~
龙蜥系统支持ob那
兄弟,我也是这个问题,你是如何解决的。