// -*- 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///+. 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[]).