Ruby 为什么通过 su 切换到用户可以正常使用 ruby,但 ssh 登陆后不能正常使用?

dggy · March 26, 2024 · Last by dinger replied at March 27, 2024 · 341 hits

我遇到的情况 系统版本

你 ssh 登录之后的 ruby 用的是 mac 系统内置的 ruby(2.6.1),和 rbenv(3.3.0) 的冲突的,你可以运行一下

which ruby

就知道怎么解决了

Reply to ailen

打印了 /usr/bin/ruby 然后,,,我还是不知道怎么解决,,,可以麻烦详细介绍一下吗,非常感谢

Reply to ailen

我运行了 rbenv versions (用 ssh 登陆),显示只有 system,是不是只有“系统带的那个版本”
我用管理员用户安装的 ruby3.3.0,找不到

rbenv versions

你在通过 su 切换到用户的 console 中你当前所在的运行环境还是 ppz 的 context 中,相当于没有变化,所以你的 terminal 显示的还是 ppz % ruby -v 当你通过 ssh 连接的时候就是在 ppzreboot 的用户 context 了,也就是说你的 ppzreboot 用户并没有真正安装好 ruby

echo $PATH

我也遇到了类似的问题

source ~/.bash_profile 试试

You need to Sign in before reply, if you don't have an account, please Sign up first.