Skip to contentSkip to conversation

Howto use "Makeusers"

Buildroot Andreas Ehmanns 3 participants 4 messages Dec 4, 2015

lore
Share & tools
lore
#0 lore raw

Hello,
to make an openldap server available for buildroot I created an init script which starts the ldap server as non-privileged user (and group). Since the ldap user and group is not existing on the target I searched for a way to let the openldap package add the user and group to the target filesystem. The buildroot documentation describes in chapter 23 the syntax of "makeusers". So far so good, but I have no idea to which file I should add the corresponding makeusers command.

I grepped the buildroot tree for an example but unfortunately did not found a package using this command.

Does anybody have an example how to do this.

Regards,
Andreas

#1 lore raw

Andreas,

Quoted 8 lines · Andreas Ehmanns

to make an openldap server available for buildroot I created an init script which starts the ldap server as non-privileged user (and group). Since the ldap user and group is not existing on the target I searched for a way to let the openldap package add the user and group to the target filesystem. The buildroot documentation describes in chapter 23 the syntax of "makeusers". So far so good, but I have no idea to which file I should add the corresponding makeusers command.

Quoted 4 lines

I grepped the buildroot tree for an example but unfortunately did not found a package using this command.

Does anybody have an example how to do this.

Directly in your .mk file, using a variable named <pkg>_USERS. See package/dbus/dbus.mk for an example:

define DBUS_USERS
dbus -1 dbus -1 * /var/run/dbus - dbus DBus messagebus user
endef

This is also documented in the manual, which says:

LIBFOO_USERS lists the users to create for this package, if it installs a program you want to run as a specific user (e.g. as a daemon, or as a cron-job). The syntax is similar in spirit to the makedevs one, and is described in the Chapter 23, Makeusers syntax documentation. This variable is optional.

Hope this helps,

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#2 lore raw

Am 04.12.2015 um 15:03 schrieb Thomas Petazzoni:

Quoted 31 lines

Andreas,

Quoted 8 lines · Andreas Ehmanns

to make an openldap server available for buildroot I created an init script which starts the ldap server as non-privileged user (and group). Since the ldap user and group is not existing on the target I searched for a way to let the openldap package add the user and group to the target filesystem. The buildroot documentation describes in chapter 23 the syntax of "makeusers". So far so good, but I have no idea to which file I should add the corresponding makeusers command.

Quoted 4 lines

I grepped the buildroot tree for an example but unfortunately did not found a package using this command.

Does anybody have an example how to do this.

Directly in your .mk file, using a variable named <pkg>_USERS. See package/dbus/dbus.mk for an example:

define DBUS_USERS
dbus -1 dbus -1 * /var/run/dbus - dbus DBus messagebus user
endef

This is also documented in the manual, which says:

LIBFOO_USERS lists the users to create for this package, if it installs a program you want to run as a specific user (e.g. as a daemon, or as a cron-job). The syntax is similar in spirit to the makedevs one, and is described in the Chapter 23, Makeusers syntax documentation. This variable is optional.

Quoted 3 lines

Hope this helps,

Thomas

Dear Thomas, dear Gustavo,
thanks for your information and your hints. Seems that I did not grep for the right key word.

Regards,
Andreas

#3 lore raw
In reply to Andreas Ehmanns
Quoted 9 lines · Andreas Ehmanns

Hello,
to make an openldap server available for buildroot I created an init script which starts the ldap server as non-privileged user (and group). Since the ldap user and group is not existing on the target I searched for a way to let the openldap package add the user and group to the target filesystem. The buildroot documentation describes in chapter 23 the syntax of "makeusers". So far so good, but I have no idea to which file I should add the corresponding makeusers command.

Quoted 7 lines

I grepped the buildroot tree for an example but unfortunately did not found a package using this command.

Does anybody have an example how to do this.

Regards,
Andreas

Hi.
Actually several packages use this functionality, see for example package/squid/squid.mk (SQUID_USERS), package/redis/redis.mk (REDIS_USERS) and such.
Regards.