You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Yocto Kirkstone设置root密码失败及extrausers方法失效求助

Yocto Kirkstone中root密码设置问题及疑问

在Yocto Kirkstone版本下,为Freescale LS1046ARDB开发板(使用官方linux qoriq发行版)设置root密码时,多种常规方法均失效,具体情况如下:

尝试过的无效方法

1. local.conf中使用extrausers明文密码配置

在local.conf中添加以下配置:

INHERIT += "extrausers"
EXTRA_USER_PARAMS = "usermod -P 'mypasswd' root;"

2. local.conf中使用extrausers加密密码配置

通过openssl生成SHA-512加密密码后,在local.conf中配置:

INHERIT += "extrausers"
EXTRA_USER_PARAMS = "usermod -p '\$6\$12345\$CdkMCUqHIe6eWfFhMIppyUE/S.iLGe.PACPivJhw05ideCyogNpnVNDIBSQXhSruJxfZCasTi6YvFOrPgFvM7/' root;"

以上两种方法均分别测试了开启和关闭EXTRA_IMAGE_FEATURES ?= "debug-tweaks"的场景:开启时root无密码,关闭时密码验证失败。

3. 通过ROOTFS_POSTPROCESS_COMMAND手动修改/etc/shadow

在sources/meta-qoriq/recipes-kernel/linux/linux-qoriq.inc中添加以下内容:

set_pw () {
    encrypted=$(openssl passwd -6 -salt 12345  mypasswd)
    sed -i "s/^root::/root:$encrypted:/" ${IMAGE_ROOTFS}/etc/shadow
}
ROOTFS_POSTPROCESS_COMMAND += "set_pw;"

该方法同样无法成功设置密码。

成功生效的方法

将以下内容添加到镜像构建文件sources/meta-qoriq/recipes-fsl/images/fsl-image-networking.bb中:

inherit fsl-utils
ROOTFS_POSTPROCESS_COMMAND += "set_pw;"

同时将set_pw函数添加到sources/meta-qoriq/classes/fsl-utils.bbclass文件中,此方法成功设置了root密码。但无法直接在fsl-image-networking.bb文件中定义bash函数。

疑问

为何常规的extrausers配置方法在Kirkstone版本中失效?该方法在Poky等其他Yocto版本中可行,是否Kirkstone版本的语法发生了变更?

内容的提问来源于stack exchange,提问作者Simon Rechermann

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 11:50:29