我的rootfs是squashfs,我试图在我的闪存设备上挂载三个JFFS2分区。但我想为这些分区/目录设置权限。
要求/readerconfig只能由具有id的用户访问1001. /platform只能由id为1001的用户访问/apps只能由id为1000的用户访问(读写和执行)
下面是我的fstab条目。
rootfs / squashfs defaults 0 0 proc /proc proc defaults 0 0 /dev/mtdblock12 /readerconfig jffs2 rw,umask=0077,uid=1000,gid=1000,exec,noatime 0 0 /dev/mtdblock13 /platform jffs2 rw,umask=0077,uid=1000,gid=1000,exec,noatime 0 0 /dev/mtdblock15 /apps jffs2 rw,umask=0077,uid=1001,gid=1001,exec,noatime 0 0 tmpfs /var tmpfs mode=0777 0 0 tmpfs /tmp tmpfs mode=0777 0 0 sysfs /sys sysfs nosuid,noexec,nodev 0 0 /dev/mtdblock14 /etc jffs2 rw,mode=0777,uid=0,gid=0,noatime 0 0
在实现之后,我发现没有为JFFS2文件系统挂载点设置uid和gid等挂载选项。
这是mount命令在目标板上的输出。
> root@ti-omap3-am3517-evm:~# mount
>rootfs on / type rootfs (rw)
> /dev/root on / type squashfs (ro,relatime)
> devtmpfs on /dev type devtmpfs (rw,relatime,size=127428k,nr_inodes=31857,mode=755)
> proc on > /proc type proc (rw,relatime)
> /dev/mtdblock15 on /apps type jffs2 (rw,noatime)
> tmpfs on /var type tmpfs (rw,relatime,mode=777)
> tmpfs on /tmp type tmpfs (rw,relatime,mode=777)
> sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
> /dev/mtdblock12 on /readerconfig type jffs2 (rw,noatime)
> /dev/mtdblock13 on /platform type jffs2 (rw,noatime)
如何设置/readerconfig、/platform和/apps目录的权限?是JFFS2/mount命令的限制吗?或者我可以从rcS脚本中完成?
基于Jffs2的挂载点不能设置权限。必须使用'chown'命令更改所有权和/或使用'chmod'命令设置权限。