在 Yocto (petalinux) 上为新用户自定义 bashrc

问题描述 投票:0回答:1

我创建了一个用于添加新用户的配方。

inherit extra users

SRC_URI = "file://.bashrc"
FILES_${PN} = "/home/user/.bashrc"

EXTRA_USERS_PARAMS = "useradd -u 1200 -d /home/user/ -p '' -s /bin/brash user"

ROOTFS_POSTPROCESS_COMMAND += "modify_default_bashrc;"

modify_default_bashrc () {
     mkdir -p /home/user
     install ${WORKINGDIR}/.bashrc ${D}/home/user
}

目标是创建一个非 root 用户,该用户可以运行一组受限的命令。为此,我将 rbash 设置为默认值,还创建了 /home/user/bin 并放置了指向该用户可以运行的命令集的链接。最后一步是将 PATH 变量设置为 /home/user/.bashrc 中的 /home/user/bin

不幸的是,在我运行我的食谱后,.bashrc 文件被设置为默认文件,我不知道如何修改它。

如何为自定义用户添加自定义 .bashrc?

有更好的方法来限制用户吗?

linux yocto
1个回答
0
投票

您可以在创建脚本中使用

usermod
命令将新用户默认 shell 更改为自定义 shell。

首先您需要将自定义 shell 添加到

/etc/shells
(此文件包含登录 shell 的有效路径名)。

您可以将默认用户 shell 更改为新的 shell 之后

sudo usermod --shell /bin/bash ${username}

欲了解更多信息,您可以阅读GeeksForGeeks

的这篇文章
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.