如何在Yocto中更改文件所有权



我需要在Yocto中更改文件所有权。我有一个创建目录的食谱。为了创建一个新的组和用户,我添加了image.bbappend:

inherit extrausers  
EXTRA_USERS_PARAMS = " groupadd new_group; 
useradd  -g new_group -p '' new_user; 
usermod -a -G new_group root 
"

为我的图像添加一个新目录,我添加了some_recipe.bbappend:

FILES_${PN} = "/dir1/dir2"
do_install_append() {
install -d ${D}/dir1/dir2
}

当我尝试在上面的do_install_append()任务中使用chown -R my_group.my_user /dir1/dir2时,我得到一个错误,即这样的组和用户不存在。所以接下来,我尝试将上面的三条线添加到图像中。bbappend文件。我从bitbake中没有得到任何错误,但在最终的图像目录中仍然由root拥有。

尝试在.bbappend文件中添加:

pkg_postinst_ontarget:${PN}() {
chown -R user:group /dir1/dir2
}

我认为问题在于您试图在Yocto创建用户之前更改文件的所有权。

最新更新