为什么 Linux 需要 ssh 的 cvs?

为什么 Linux 需要 ssh 的 cvs?

我今天刚刚设置了一个新的 Debian 10 系统。我能够通过 ssh 进入,然后,当我以为我已经设置了所有配置内容时,我重新启动以确保一切正常并且我做得正确。然后我尝试从我的 iMac ssh 进入它:

[hal@sirhokus:~]$ ssh aule
Warning: No xauth data; using fake authentication data for X11 forwarding.
bash: cvs: command not found
Connection to aule closed.

(请注意,我使用的是授权密钥,因此不必输入密码。)

我从局域网上的 Linux 系统上尝试了此操作:

[hal@brandyhall:~]$ ssh aule
hal@aule's password: 
bash: cvs: command not found
Connection to aule closed.
[hal@brandyhall:~]$ 

我甚至尝试从新系统使用 ssh 登录我自己的帐户,结果发生了同样的事情。

当我在目标系统上 grep .bashrc 时,什么也没得到。我将 ~/.bashrc 重命名为 .bashrc-bak 进行测试,结果还是一样。

因此,无论我使用哪台机器 ssh 到此 Debian 系统,它似乎都会登录,抱怨找不到命令 cvs,然后将我注销。即使目标机器上没有 .bashrc,也会发生这种情况。

我当然想修复它,但是为什么目标系统似乎试图执行 cvs?

(这是 Debian 10 的原装安装,添加了 KDE。我没有在其上设置任何服务器。除了我尝试向系统添加 .bashrc 并编辑 /etc/ssh/sshd_config 之外,该系统是原始的。)

答案1

[hal@sirhokus:~]$ ssh aule
Warning: No xauth data; using fake authentication data for X11 forwarding.
bash: cvs: command not found
Connection to aule closed.

远程系统似乎已配置为cvs在您登录时运行。您似乎正在使用 SSH 密钥进行身份验证?它似乎可能是以下情况之一:

  1. 您将受到远程系统上的“强制命令”的约束,这可能与您使用的 ssh 密钥有关。基本上,远程 ssh 服务器可能配置为cvs在您使用该密钥登录时运行。请参阅这里这里authorized_keys了解如何通过服务器上的文件进行配置。

  2. 您的.bash_profile.bashrc或类似的 shell 启动脚本正在调用 cvs。

  3. 远程系统上的您的帐户配置了一个运行 cvs 的特殊 shell。例如,您的“登录 shell”可能是一个 shell 脚本。

相关内容