远程主机上的 shell 配置错误

远程主机上的 shell 配置错误

我通过 ssh 在远程主机上安装了 fish shell。后来我通过以下方式将其设置为我的默认 shell:

sudo chsh -s /bin/fish

注销后,当我稍后尝试重新登录远程主机时,出现以下错误:

-fish: error while loading shared libraries: libpcre2-32.so.0: cannot open shared object file: No such file or directory
 Connection to <ssh remote host> closed.

我尝试了几种不同的方法将默认 shell 改回 bash 或删除 fish shell,甚至尝试修改配置文件。此远程服务器正在运行 Ubuntu 16.04.1,是一台我无法物理访问的虚拟机。我有 sudo 访问权限,但没有 root 用户登录。到目前为止,我尝试的所有方法都失败了。我尝试了以下方法:

ssh user@<remote host> "bash"
ssh -t user@<remote host> '/bin/bash'
ssh -t user@<remote host> 'sudo chsh -s /bin/bash'
scp new_config_file user@<remote host> /pathToConfigFile

到目前为止,这些方法都没有起作用,并且由于无法本地访问这台机器,我想知道是否还有其他方法(除了重新映像虚拟机)来解决这个问题并重新建立我的连接。

相关内容