On Thu, Sep 8, 2011 at 7:23 PM, Alan McKinnon <alan.mckin...@gmail.com> wrote:
> On Thu, 8 Sep 2011 18:36:56 -0400
> Canek Peláez Valdés <can...@gmail.com> wrote:
>
>> On Thu, Sep 8, 2011 at 5:11 PM, Alan McKinnon
>> <alan.mckin...@gmail.com> wrote:
>> > On Thu, 8 Sep 2011 16:48:45 -0400
>> > Canek Peláez Valdés <can...@gmail.com> wrote:
>> >
>> >> On Thu, Sep 8, 2011 at 4:43 PM, Michael Schreckenbauer
>> >> <grim...@gmx.de> wrote:
>> >> > Am Donnerstag, 8. September 2011, 16:23:36 schrieb Canek Peláez
>> >> > Valdés:
>> >> >> > In what valid way does access to /usr become something that
>> >> >> > udev may be required to support?
>> >> >>
>> >> >> It is a matter of what else do you end having in /bin and /lib.
>> >> >> Remember that udev rules can execute arbitrary code. Do all that
>> >> >> code needs to be moved to /bin and /lib also?
>> >> >
>> >> > Of course. That's what /bin, /sbin and /lib are for.
>> >> >
>> >> >> I keep telling: it is a difficult problem.
>> >> >
>> >> > No. Just move or copy the binaries and libs *you* use for *your*
>> >> > udev-scripts to /bin, /sbin and /lib
>> >>
>> >> I *really* don't think bluetoothd belongs to /sbin. But, hey,
>> >> that's me.
>> >
>> > Then do what all sane code does when the scripts it uses fails or
>> > cannot be found - throw an error and continue.
>>
>> This is the problem with people not seeing the big picture: Imagine a
>> modern system with a bluetooth keyboard. I know, we are geeks, we use
>> real-men keyboards, not connected with bluetooth. But believe me,
>> there are people doing that, attaching bluetooth keyboards to their
>> systems.
>>
>> And then, the system does a fsck, and it fails and the user needs to
>> enter her password to go into maintenance mode. But guess what, if the
>> bluetoothd daemon is not running, she is going to be a very very very
>> sad user, because "it will throw an error and continue", leaving her
>> unable to fix it.
>>
>> We are no longer in 1982: we actually have bluetooth keyboards. It is
>> a very valid and very actual (probably more in the future) use case.
>> To solve this case the devs had to choose between putting everything
>> and the kitchen sink into /sbin or /bin (it is not bounded: anything
>> can be executed from udev), or to ask to put /usr into / or using an
>> initramfs.
>
> You don't need every possible thing that udev could ever run to be
> avialable on /, just the things that are essential. That is quite a
> small list subset of the full list of all possible devices:
>
> All HID devices
> All console devices
> All code to access and read file systems
> Everything that can be used in place of a physical keyboard (serial,
> console over ethernet)
>
> That looks like it might be a large amount of disk space, but
> in fact it isn't. This very mail is being typed on a binary distro
> (Ubuntu):
>
> The bluez package is 1.6M.
> /lib alone is 331M, I use a fraction of it but it is still there.
> /lib/modules contains two kernel versions of 136M each.

Again, it is not bounded. Today is bluez, tomorrow we don't know.
That's the point of udev, really.

> Ubuntu has no choice but to ship every imaginable device driver they
> support, so / is *already* rather large, and that's just device drivers.
>
> I say leave it up to the distros what to put where. Ubuntu and Fedora
> will ship support for bluetooth in the scenario you describe.
> JoeBlowLinux might not. If Joe's users are left up the creek, that's
> Joe's problem to deal with, but all the infinite variety of possible
> Joes still have the same freedom they always had - to fix or break
> their shipped stuff at will.

Oh, so we came to same conclusion, just from different sides of the
spectrum. Nice.

It just seems weird to me that most distros (including Gentoo,
apparentely) seem to be going for the initramfs way. Maybe there is
some technical merit to that option that I can't see. O, wait, I do
see it.

> Incidentally, your bluetooth keyboard example is a tad disingenuous.
> That fictitious user is going to have an almighty problem at grub time
> selecting what system to boot. A bluetooth keyboard is the ONLY
> possible keyboard input device? What kind of general purpose computing
> hardware were you picturing?

A PC preloaded with only Linux?

Regards.
-- 
Canek Peláez Valdés
Posgrado en Ciencia e Ingeniería de la Computación
Universidad Nacional Autónoma de México

Reply via email to