最近在安装了 Ubuntu 20.04 + CUDA 11 的 server 中发现了奇怪的问题,开机之后 30 分钟左右 SSH 会 socket error,透过 IPMI 查看到屏幕停留在 tty 登录界面,键鼠操作没有响应。
刚开始我以为是硬件问题,但是在对硬盘、CPU、显卡都进行一轮更换后,问题依然存在。在对系统进行重装之后,发现 Ubuntu 16.04 + cuda 8,或 Ubuntu 18.04 + cuda 9/10 均不会出现上述问题。
经过排查,发现 CUDA 11 安装完成后会启用 Ubuntu 20.04 的休眠。
透过以下命令可以查看休眠相关的服务。
1 2 3 4 |
systemctl status sleep.target systemctl status suspend.target systemctl status hibernate.target systemctl status hybrid-sleep.target |
如果相关的服务是启用状态,会显示以下相关资讯。
1 2 |
sleep.target - Sleep Loaded: loaded(...) |
执行以下命令禁用相关服务。
1 |
systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target |
此时status命令将会输出。
1 2 |
sleep.target - Sleep Loaded: masked(...) |
问题解决。
后记:因 server 场景没有休眠的需求。再加上透过 IPMI 无法执行任何操作,在一开始真的不会考虑到 server 版本的系统会启用休眠。
以后出现这种类似问题情景还是需要先考虑系统设定。
無人評論!