国产银河麒麟SP1桌面版本启动ssh服务报错解决办法

报错信息如下

kylin@kylin-pc:~/桌面$ systemctl status ssh.service ● ssh.service - OpenBSD Secure Shell server Loaded: loaded (/lib/systemd/system/ssh.service; disabled; vendor preset: enabled) Active: failed (Result: exit-code) since Thu 2025-10-16 16:23:48 CST; 23s ago Docs: man:sshd(8) man:sshd_config(5) Process: 11517 ExecStartPre=/usr/sbin/sshd -t (code=exited, status=255/EXCEPTION) 10月 16 16:23:48 kylin-pc systemd[1]: ssh.service: Scheduled restart job, restart counter is at 5. 10月 16 16:23:48 kylin-pc systemd[1]: Stopped OpenBSD Secure Shell server. 10月 16 16:23:48 kylin-pc systemd[1]: ssh.service: Start request repeated too quickly. 10月 16 16:23:48 kylin-pc systemd[1]: ssh.service: Failed with result 'exit-code'. 10月 16 16:23:48 kylin-pc systemd[1]: Failed to start OpenBSD Secure Shell server

分析报错信息:

从报错信息来看,ssh.service 启动失败的核心原因是 sshd 服务的配置文件检测不通过(ExecStartPre=/usr/sbin/sshd -t 执行失败,退出码 255)。sshd -t 是用于检测 sshd 配置文件(/etc/ssh/sshd_config)语法和合法性的命令,失败通常意味着配置文件存在错误。

解决办法:

执行命令:

复制代码
ylin@kylin-pc:~/桌面$ sudo /usr/sbin/sshd -t
报错信息:Privilege separation user sshd does not exist

sshd 服务依赖的 "权限分离用户"(sshd 用户)不存在。这是 sshd 的安全机制要求,需要一个低权限的 sshd 用户来运行服务的非特权部分,若该用户缺失则无法启动。

# 创建缺失的权限分离目录
sudo mkdir -p /run/sshd

# 设置目录所有者为 root(确保权限安全)
sudo chown root:root /run/sshd

# 设置目录权限(仅 root 可写,其他用户可读可执行)
sudo chmod 755 /run/sshd

# 创建 sshd 系统用户(无登录权限,主目录为 /var/empty)
sudo useradd -r -d /var/empty -s /usr/sbin/nologin sshd

问题解决

相关推荐
人工智能训练17 分钟前
如何在 Ubuntu 22.04 中安装 Docker 引擎和 Linux 版 Docker Desktop 桌面软件
linux·运维·服务器·数据库·ubuntu·docker·ai编程
Maple_land1 小时前
Linux复习:系统调用与fork
linux·运维·服务器·c++·centos
无聊的小坏坏1 小时前
Poll 服务器实战教学:从 Select 迁移到更高效的多路复用
linux·服务器·poll·io多路复用
阿桂有点桂1 小时前
Docker搭建Ngnix、php5.6、php8、postgresql、redis
运维·服务器·docker·容器
WAsbry1 小时前
InputConnection机制与跨进程文本操作的工程实践
android·linux
wdfk_prog2 小时前
[Linux]学习笔记系列 -- [kernel]cpu
linux·笔记·学习
WAsbry2 小时前
从一个Bug看Android文本编辑的设计缺陷
android·linux
大聪明-PLUS2 小时前
Linux 中 timeout、watch 和 at 的指南:管理命令执行时间
linux·嵌入式·arm·smarc
想唱rap3 小时前
Linux开发工具(4)
linux·运维·服务器·开发语言·算法
robin59114 小时前
Linux-通过端口转发访问数据库
linux·数据库·adb