IMX6ULL-开机启动ssh卡顿

1. 问题现象

i.MX6ULL平台,在调试过程中出现sshd在开机自启动的过程中卡顿现象(等待时间较久),观察打印信息发现,sshd一定等待直到以下代码出现才能正常启动。

random:nonblocking pool is initialized

在此过程中,nonblocking pool 的初始化要 2 分钟。而启动sshd并不需要等待nonblockingpool 初始化。

2. 问题解决

可以通过加速nonblockingpool的初始化速度从而解决sshd启动过慢的问题,具体做法修改内核代码。

在kernel_code/drivers/char/random.c 约 900 行处的voidadd_interrupt_randomness(int irq, int irq_flags) 中有一处判断。

if((fast_pool->count < 64) &&

!time_after(now, fast_pool->last + HZ))

return;

在此基础上加上nonblocking_pool.initialized判断。

if((fast_pool->count < 64) &&

!time_after(now, fast_pool->last + HZ)&&

nonblocking_pool.initialized)

return;

内核加上以上修改后重新编译内核并烧写,开机时sshd就可以正常启动了。

另外,记得在/etc/ssh/sshd_config 下打开PermitRootLogin yes 释放 root 权限登录。

相关推荐
FoldWinCard4 分钟前
Python 第五次作业
linux·windows·python
学习3人组7 分钟前
Win11 安装 Fiddler HTTPS 证书(用于抓包)
服务器·https·fiddler
_OP_CHEN7 分钟前
【Linux系统编程】(三十三)System V 共享内存精讲:Linux 最快 IPC 的原理与实战精髓
linux·服务器·操作系统·共享内存·c/c++·ipc·system v
IP搭子来一个30 分钟前
长效静态IP是什么?用途全解析
服务器·网络·tcp/ip
RisunJan38 分钟前
Linux命令-lspci(显示当前主机的所有PCI总线信息)
linux·运维·服务器
kaka__551 小时前
cma内存申请页迁移流程浅析
linux
未既1 小时前
linux以及docker修改文件描述符
linux·运维·docker
yuanmenghao1 小时前
Linux 性能实战 | 第 20 篇:trace-cmd 与 kernelshark 可视化分析 [特殊字符]
linux·python·性能优化
Volunteer Technology1 小时前
LangGraph的WorkFlow(一)
java·服务器·windows
2401_873587821 小时前
Linux——传输层协议TCP
linux·网络·tcp/ip