Date: Fri, 25 Oct 2013 13:40:55 -0700 From: David Newman <dnewman@networktest.com> To: freebsd-questions@freebsd.org Subject: Re: viewing major and minor device numbers Message-ID: <526AD757.7010704@networktest.com> In-Reply-To: <20131025213456.13153587.freebsd@edvax.de> References: <526AC5E7.3080900@networktest.com> <20131025213456.13153587.freebsd@edvax.de>
next in thread | previous in thread | raw e-mail | index | archive | help
On 10/25/13 12:34 PM, Polytropon wrote: > On Fri, 25 Oct 2013 12:26:31 -0700, David Newman wrote: >> FreeBSD 9.2-RELEASE, amd64 >> >> To create some character special devices in a chroot environment, I've >> previously used mknod, but now can't find the major and minor device >> numbers. >> >> The ls manpage says these numbers should be displayed in the size field. >> However, I'm seeing only one hex value, e.g.: >> >> $ ls -l /dev/null >> crw-rw-rw- 1 root wheel 0x13 Oct 25 12:22 /dev/null >> >> So I don't know what major and minor values to feed mknod. Or is there >> another way to do this? > > Do you have any "suspicious" ls alias or options preconfigured? > That output looks a bit strange, it should be something like > this (example from a host system, not from inside a jail): > > % /bin/ls -laFG /dev/null > crw-rw-rw- 1 root wheel 0, 17 Oct 25 21:33 /dev/null > ^ ^^ > > This is the binary /bin/ls, no "shell builtin" or the like, > called from the C shell; OS is FreeBSD 8, x86. Even with /bin/ls, the system still returns the hex code: # /bin/ls -laFG /dev/null crw-rw-rw- 1 root wheel 0x13 Oct 25 13:22 /dev/null Two machines, both running 9.2/amd64, both return these hex codes. One machine runs on bare metal and the other is a VM I just built. Both machines have no aliases for ls. This URL: http://fanf.livejournal.com/123376.html gives instructions for how to create devices in chroot environments using devfs: # $T is the chroot directory mount -t devfs devfs $T/dev # the default ruleset is immutable, so create a new one devfs -m $T/dev ruleset 1 # only a small selection of devices should be visible devfs -m $T/dev rule add path random unhide devfs -m $T/dev rule add path urandom unhide # make it so devfs -m $T/dev rule applyset This worked for me, and the chroot'd devices have the same hex IDs as those in /dev. But I'm still curious why ls displays those hex values instead of major and minor device numbers. thanks dn
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?526AD757.7010704>