31 lines
1.3 KiB
Plaintext
31 lines
1.3 KiB
Plaintext
|
// -*- mode:doc; -*-
|
||
|
// vim: set syntax=asciidoc:
|
||
|
|
||
|
[[customize-device-permission]]
|
||
|
==== Setting file permissions and ownership and adding custom devices nodes
|
||
|
|
||
|
Sometimes it is needed to set specific permissions or ownership on files
|
||
|
or device nodes. For example, certain files may need to be owned by
|
||
|
root. Since the post-build scripts are not run as root, you cannot do
|
||
|
such changes from there unless you use an explicit fakeroot from the
|
||
|
post-build script.
|
||
|
|
||
|
Instead, Buildroot provides support for so-called _permission tables_.
|
||
|
To use this feature, set config option +BR2_ROOTFS_DEVICE_TABLE+ to a
|
||
|
space-separated list of permission tables, regular text files following
|
||
|
the xref:makedev-syntax[makedev syntax].
|
||
|
|
||
|
If you are using a static device table (i.e. not using +devtmpfs+,
|
||
|
+mdev+, or +(e)udev+) then you can add device nodes using the same
|
||
|
syntax, in so-called _device tables_. To use this feature, set config
|
||
|
option +BR2_ROOTFS_STATIC_DEVICE_TABLE+ to a space-separated list of
|
||
|
device tables.
|
||
|
|
||
|
As shown in xref:customize-dir-structure[], the recommended location for
|
||
|
such files is +board/<company>/<boardname>/+.
|
||
|
|
||
|
It should be noted that if the specific permissions or device nodes are
|
||
|
related to a specific application, you should set variables
|
||
|
+FOO_PERMISSIONS+ and +FOO_DEVICES+ in the package's +.mk+ file instead
|
||
|
(see xref:generic-package-reference[]).
|