【问题标题】:Set root password in yocto kirkstone在 yocto kirkstone 中设置 root 密码
【发布时间】:2022-11-11 02:46:25
【问题描述】:

我尝试通过几种方法为 root 设置密码。到目前为止,没有什么对我有用。 我添加到local.conf:

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

我还尝试使用“openssl passwd -6 -salt 12345 mypasswd”加密密码:

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

我尝试了有和没有 EXTRA_IMAGE_FEATURES ?= "debug-tweaks" 的两种变体。我还尝试在 sources/meta-qoriq/recipes-kernel/linux/linux-qoriq.inc 中设置密码,该密码包含在内核配方“sources/meta-qoriq/recipes-kernel/linux/linux-qoriq_5.15 .bb”像这样“需要 linux-qoriq.inc”。 使用 EXTRA_IMAGE_FEATURES ?= "debug-tweaks" 设置,没有设置密码,没有它密码是错误的。 我还尝试使用 ROOTFS_POSTPROCESS_COMMAND 手动编辑 /ect/shadow 文件。因此,我在 sources/meta-qoriq/recipes-kernel/linux/linux-qoriq.inc 文件中添加了这一行,因为似乎无法将 bash 函数添加到 local.conf 文件中。

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

这也没有奏效。 我的板子是飞思卡尔 LS1046ARDB。这就是我使用飞思卡尔的 linux qoriq 发行版的原因。

编辑:

添加:

inherit fsl-utils
ROOTFS_POSTPROCESS_COMMAND += "set_pw;

到我正在构建的图像的 .bb 文件 (sources/meta-qoriq/recipes-fsl/images/fsl-image-networking.bb) 并将 set_pw 函数添加到 sources/meta-qoriq/classes/fsl- utils.bbclass 文件对我有用。无法直接将 bash 函数添加到 fsl-image-networking.bb 文件。 但我仍然想知道为什么

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

不管用。这就是它在其他一些帖子中的工作方式,例如How to set root password on Yocto / Poky image?。在 kirkstone 中执行此操作的语法是否发生了变化?

【问题讨论】:

    标签: linux embedded-linux yocto


    【解决方案1】:

    可能是变量名的错字?正确的是EXTRA_USERS_PARAMS(注意用户的复数),见the official documentation

    顺便说一句,这里讨论了最佳实践:How to securely update configuration for root password in yocto?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-11-23
      • 2020-10-20
      • 1970-01-01
      • 1970-01-01
      • 2019-07-06
      • 2015-01-24
      • 2014-05-14
      • 2015-11-01
      相关资源
      最近更新 更多