我有 centos 8.1.1911 (核心)
我无法运行 opensshd。我已 dnf。
我删除了它dnf remove openssh-server
然后重新安装dnf install openssh-server
systemctl start sshd
sshd.service 作业失败,因为控制进程退出并出现错误代码。
查看 /var/log/messages 日志,我发现可能存在错误,我sshd -t
遇到了同样的错误,错误如下:
无法从 getrandom 获取种子:函数未实现
journalctl -xe 和 systemctl status sshd.service 没有显示其他故障
sshd.service 主进程退出代码=退出状态=255/n/a 无法启动 openssh 服务器守护进程
我dnf remove openssh-server
又试了一次,还是没有成功
删除了 /etc/ssh 文件夹
rm -rf /etc/ssh
,删除了所有错误的配置,然后重试。没有成功
能否提供建议?centos 8.1.1911 是否还没有办法做到这一点?
我在网上看到一个评论想尝试一下:
mkdir -p /var/run/sshd
我相信可以生成 PID 文件,但仍然没有运气。
答案1
一个可能的原因是,当您将操作系统从 CentOS 7 升级到 CentOS 8 时,sshd_config 中可能定义的一些代码和命令与 CentOS 8 不兼容。要了解更多信息,请查看 /var/log PATH 中的 access.log。重新安装 sshd 或 openssh 服务器不会删除整个实例。因此,在许多情况下它可能不起作用。最好的方法是检查日志和 sshd_config 文件。
答案2
有点太晚了,但如果问题是 dist 升级的结果,那么很可能是内核问题,你必须升级内核版本。使用以下命令检查你的内核版本:
uname -a
如果=< 3.x 你应该尝试升级