对不起,我不是以英语为母语的人。
我正在尝试使用Yocto-Project配方文件安装我的Web应用程序。
PR = "r0"
PV = "1.0"
LIC_FILES_CHKSUM = "file://COPYING;md5=d41d8cd98f00b204e9800998ecf8427e"
SRC_URI = "\
file://sources \
file://COPYING \
"
S = "${WORKDIR}"
do_install() {
install -d ${D}${localstatedir}/www
cp -r ${S}/sources/* ${D}${localstatedir}/www/
chown -R www-data:www-data ${D}${localstatedir}/www/
chmod -R 775 ${D}${localstatedir}/www/cgi-bin
}
但/var/www
仍归root:root
所有,而非www-data:www-data
所有。
那么我如何chown
/var/www
目录重复www-data:www-data
?
我看过以下演示文稿的第9页:https://wiki.yoctoproject.org/wiki/images/e/e6/Custom_Users_Groups_in_Yocto1.1.pdf。
我创建了这个配方文件来模仿这个页面。
答案 0 :(得分:1)
首先,chown
和chmod
应该按照您使用它们的方式在YP / OE食谱中使用。
问题可能是您在命令的路径参数中错过了/
。根据文档[1] ${D}
没有尾随/
。
因此以下内容应该有效:
do_install() {
install -d ${D}/${localstatedir}/www
cp -r ${S}/sources/* ${D}/${localstatedir}/www/
chown -R www-data:www-data ${D}/${localstatedir}/www/
chmod -R 775 ${D}/${localstatedir}/www/cgi-bin
}
(如果没有请发贴你的bitbake日志)
[1] https://www.yoctoproject.org/docs/latest/mega-manual/mega-manual.html#var-D
答案 1 :(得分:-1)
sudo chown -R wwwdata:wwwdata / var / www /以递归方式获得所需文件夹及其内部文件夹或文件的所有权