我正在使用buildroot对于嵌入式产品。我已通过 BR2_ROOTFS_USERS_TABLES
添加了我自己的受密码保护的用户选项,并且工作正常。
问题:buildroot 继续向系统添加 user
和 admin
用户,并且他们没有密码。这些不是骨架文件系统的一部分,但似乎是在构建过程中明确添加的,尽管如果我能弄清楚在哪里就该死。另外,即使我禁用 BR2_TARGET_ENABLE_ROOT_LOGIN
,我仍然可以以 root 身份登录。
如何删除默认的 user
和 admin
用户?或者,我如何将他们的密码设置为长且难以猜测的密码?
编辑:我刚刚发现删除
BR2_TARGET_ENABLE_ROOT_LOGIN=y
来 self 的 BR2_TARGET_ENABLE_ROOT_LOGIN
文件还不够;该文件必须包含行
# BR2_TARGET_ENABLE_ROOT_LOGIN is not set
...或构建的 .config
文件中仍将包含 BR2_TARGET_ENABLE_ROOT_LOGIN=y
。但是,即使在我纠正了这个问题并进行了彻底的重建之后,我生成的系统仍然具有无密码 root
登录,并且 user
和 admin
密码为空的帐户。
最佳答案
禁用BR2_TARGET_ENABLE_ROOT_LOGIN
后您是否完成了干净的构建?我在尝试重建骨架包时总是遇到问题。
我从未见过名为 user
的 buildroot 用户或admin
。通过我的 buildroot 包进行 grep 也不会显示任何此类用户定义的:
awk '/define.*_USERS/,/endef/' package/*/*mk
您可以在您的系统上运行相同的程序并确保包含您拥有的任何自定义 *.mk 文件吗?
有没有可能 user
和admin
是之前尝试创建自己的受密码保护的用户的剩余内容吗?同样,干净的构建会有所帮助。
关于user-accounts - 如何在 buildroot 中禁用默认用户 "user"和 "admin"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52857787/