【问题标题】:Yocto Jethro: how do I add user to sudoers listYocto Jethro:如何将用户添加到 sudoers 列表
【发布时间】:2017-07-04 16:54:51
【问题描述】:

我添加了一个新用户如下

inherit extrausers
EXTRA_USERS_PARAMS = "useradd -P p@ssW0rd user1;"

我正在尝试查找如何将用户添加到 sudoers 列表。有没有类似extrausers

的类

更新 1:

在课堂上classes/extrausers.bbclass 我看到支持usermod。以下是否可行?

inherit extrausers
EXTRA_USERS_PARAMS = "useradd -P p@ssW0rd user1;\
                      usermod -aG sudo user1"

更新 2:

我尝试添加IMAGE_INSTALL_append += " sudo "

inherit extrausers
EXTRA_USERS_PARAMS = "useradd -P foobar -G sudo user1;"

但这并不能帮助我实现将 user1 添加到 sudoers 列表的效果。我在执行sudo -v 时看到以下错误

Sorry, user user1 may not run sudo on <machine-name>.

更新 3:

我发现sudoers文件有sudo组注释如下: # %sudo ALL=(ALL) ALL 因此,即使将 user1 添加到组 sudo 的原因也无济于事

我没有将user1添加到sudo组中,而是采用recipes-extended/sudo/sudo_1.8.14p3.bbappend/etc/sudoers.d/0001_user1下添加一个插入文件的方法

do_install_append () {
    echo "user1 ALL=(ALL) ALL" > ${D}${sysconfdir}/sudoers.d/001_first
}

现在我需要帮助来了解以下哪种方法在安全性方面更好?

  • /etc/sudoers 中取消注释sudo 并将user1 添加到/etc/sudoers
  • /etc/sudoers.d/001_first 中添加user1

【问题讨论】:

  • 您可以尝试将用户默认添加到组“wheel”中,该组应该已经在 sudoers 中。比如:useradd -P somepass -G wheel user1;
  • 人们提到它在那里工作stackoverflow.com/questions/44043874/…
  • @TuncayGöncüoğlu,当我尝试添加到车轮时。我看到轮子不存在。 useradd: group 'wheel' does not exist

标签: yocto bitbake openembedded sudoers user-administration


【解决方案1】:

所以有两种方法可以添加具有 sudo 能力的用户

  • 将用户添加到 sudo 组并在 /etc/sudoers 中启用 sudo 组
  • ${D}${sysconfdir}/sudoers.d/ 下创建一个文件,并在那里为用户添加sudo 规则。

现在/etc/sudoers vs /etc/sudoers.d/ file for enabling sudo for a user 中已经很好地回答了哪种方法适合您的发行版

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-02-05
    • 1970-01-01
    • 2021-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-10
    • 1970-01-01
    相关资源
    最近更新 更多