簡體   English   中英

將“libpam”添加到 initramfs 配方會從“extrausers”配置中刪除密碼

[英]Adding "libpam" to initramfs recipe removes password from "extrausers" config

我正在使用local.conf文件中的以下內容為我的 linux 設置 root 密碼:

INHERIT += "extrausers"
EXTRA_USERS_PARAMS = "usermod -p '\$6\$...'"

正如預期的那樣,這可以正常工作。

但是現在,我發現在 linux 5.10 中,要驗證用戶身份,我無法檢查/etc/shadow ,而是需要使用libpam模塊。 因此,我執行以下操作將 libpam 添加到我的 linux 映像中:

  • 在我的 inramfs 配方中,我將libpam添加到PACKAGE_INSTALL
  • DISTRO_FEATURES_append中添加了pam

現在,當我 flash 這個新鏡像時, root用戶沒有任何密碼。 添加 libpam 以某種方式刪除使用extrausers設置的密碼......有沒有辦法使用 libpam 在圖像中設置密碼? 還是在使用額外用戶並將 libpam 添加到我的圖像時我做錯了什么?

由於我無法在這里得到答案以及關於libpam的 github 問題,我放棄了嘗試讓 libpam 為我工作。

我決定使用/etc/shadow文件。 我刪除extrausers ,而是使用以下命令手動將密碼設置到影子文件中:

ROOTFS_POSTINSTALL_COMMAND += "set_root_password;"
set_root_password () {
    sed -e "s/root::/root:\$6\$...:/" -i ${IMAGE_ROOTFS}/etc/shadow
}

現在我不需要使用libpam並且可以使用影子文件繼續向我的 redfish 服務器驗證用戶。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM