From: Olaf Hering <olh@suse.de>
To: linux-hotplug@vger.kernel.org
Subject: Re: Permissions in udev don't work when klibc is used ?
Date: Mon, 23 Feb 2004 16:39:42 +0000 [thread overview]
Message-ID: <20040223163942.GA29281@suse.de> (raw)
In-Reply-To: <200402231118.26239.remco@d-compu.dyndns.org>
On Mon, Feb 23, Remco wrote:
> - for user and group names to work a "name conversion system" (user database +
> api to use it) needs to be in place. (e.g. /etc/passwd, /etc/group, ldap and
> glibc, nss-api, nss_ldap)
> klibc hasn't got such a system / api (or it's not fully functional ?) so only
> uid-s / gid-s are possible when linking against klibc.
> A name conversion system might (or will ?) not be available when using initrd.
> (what about early userspace, or am I touching the TODO area too much now ?)
You can build your udev.permissions via sed, grep, awk or whatever via
getent passwd and getenv group and convert the names to numbers. No need
to pollute klibc with 'useless' stuff.
# provide numbers because klibc has no getpwnam function
# everything would belong to root
PT="`mktemp -q /tmp/udev.mkinitramfs.passwd.$$.XXXXXX`"
GT="`mktemp -q /tmp/udev.mkinitramfs.group.$$.XXXXXX`"
getent passwd | sed -e 's@^\([^:]\+\):[^:]*:\([^:]*\):.*@\1:\2@' > $PT
getent group | sed -e 's@^\([^:]\+\):[^:]*:\([^:]*\):.*@\1:\2@' > $GT
I=$IFS
IFS=:
while read a b c d e ; do
case "$a" in
\#*|"") echo comment ;;
*)
dev=$a
owner="`sed -e \"/^$b:/s@^.*:@@p;d\" < $PT`"
group="`sed -e \"/^$c:/s@^.*:@@p;d\" < $GT`"
if [ "$owner" = "" ] ; then owner=0 ; fi
if [ "$group" = "" ] ; then group=0 ; fi
mode=$d
echo "$dev:$owner:$group:$mode" >> "$INITRD$udev_permissions"
;;
esac
done < "$udev_permissions"
IFS=$I
rm -fv $PT $GT
If you find a faster solution, let us know.
--
USB is for mice, FireWire is for men!
sUse lINUX ag, nÜRNBERG
-------------------------------------------------------
SF.Net is sponsored by: Speed Start Your Linux Apps Now.
Build and deploy apps & Web services for Linux with
a free DVD software kit from IBM. Click Now!
http://ads.osdn.com/?ad_id\x1356&alloc_id438&op=click
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
Linux-hotplug-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
next prev parent reply other threads:[~2004-02-23 16:39 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-02-23 10:18 Permissions in udev don't work when klibc is used ? Remco
2004-02-23 10:47 ` Kay Sievers
2004-02-23 14:01 ` Remco
2004-02-23 14:30 ` Kay Sievers
2004-02-23 15:18 ` Remco
2004-02-23 16:39 ` Olaf Hering [this message]
2004-02-23 18:31 ` Kay Sievers
2004-02-23 18:55 ` Olaf Hering
2004-02-23 19:01 ` Darren Salt
2004-02-23 19:10 ` Kay Sievers
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20040223163942.GA29281@suse.de \
--to=olh@suse.de \
--cc=linux-hotplug@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).