yocto - Yocto Warrior 无法为 root 或其他用户设置密码
问题描述
我正在使用 meta-tegra Warriors 分支层为 Nvidia Jetson Nano 构建 sd 卡映像。映像完成并且电路板启动,但如果我尝试在 Yocto 中设置任何类型的密码,我将无法登录。我已经尝试创建除 root 以外的用户并设置他们的密码,但同样的问题出现在我无法登录的地方。
如果我启用“debug-tweaks”,并且根本不尝试修改 root 密码,我可以在没有密码的情况下成功登录。
我正在为 OE 使用战士分支,并且没有修改其他层。如何设置root密码?谢谢。
这是我的 local.conf 密码相关行:
# Password Stuff
INHERIT += "extrausers"
#EXTRA_IMAGE_FEATURES = "debug-tweaks"
EXTRA_USERS_PARAMS = "usermod -P mypassword123 root; "
EXTRA_USERS_PARAMS = " useradd testing; \
useradd mts; \
usermod -p 'testing12345' testing; \
usermod -p 'comp12345' comp; \
解决方案
usermod
with -p
(minus p) 需要从命令生成的哈希,openssl passwd
因此您需要设置 Yocto 变量,如下所示:
EXTRA_USERS_PARAMS = "usermod -p $(openssl passwd <some_password>) root;"
如果你想在 bitbake 变量上附加一些东西,你需要使用_append
or+=
运算符,即:
EXTRA_USERS_PARAMS_append = " useradd testing;"
EXTRA_USERS_PARAMS_append = " useradd mts;"
...
推荐阅读
- c - 函数中的 scanf 似乎将垃圾值写入一个数组而不是另一个数组,尽管两者是相同的
- python - Spark 独立无法加载文件
- java - 在 android studio 中添加 .aidl 接口
- c# - 基于 URL 参数的多个视图文件夹
- python - 如何在PyQt5中获取其他小部件的mousePressEvent的返回值
- python - 连接到 RedShift 导致 SSL 错误:证书验证失败
- email - 使用 PHPmailer 将所有邮件都放在垃圾邮件文件夹中
- javascript - 反应原生,当我设置图像样式时,文本被截断
- android - 不同的日期返回相同的天数
- python - 将 PostgreSQL 客户端库更新到 9.1