lkml.org 
[lkml]   [2009]   [Sep]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [bug] /etc/profile: line 30: /dev/null: Permission denied (Was: Re: [PATCH] Remove broken by design and by implementation devtmpfs maintenance disaster)


    On Fri, 18 Sep 2009, Kay Sievers wrote:
    >
    > > So I suspect /dev/null and /dev/zero should be special - just make them
    > > have 0666 permissions. Because they really _are_ special, and no other
    > > permissions ever make sense for them.
    >
    > That's true. I guess there are a few more devices that need special
    > permissions.

    /dev/tty is probably the only remaining one - I don't think there should
    be any other devices that are so special that normal programs expect them
    to be there, and expect to be able to open them.

    /dev/null (and to a lesser degree /dev/zero) really are special, and they
    are special not so much because they are special devices, but because they
    are part of the unix environment in rather deep ways. For example, mmap()
    on /dev/zero is deeply special, and really is about shm rather than any
    devices, so it's a VM thing with an odd special case.

    And /dev/tty is special in that you'd expected to be able to open it even
    if you can't open the device that it points to - you may have inherited a
    tty from a program that _used_ to have permission to the underlying
    /dev/ttyxyz thing, but even if you no longer can open that device,
    /dev/tty still works.

    The rest of /dev really should be rather esoteric, or it should be about
    real devices. So I do think that with just null, zero and tty having 0666
    permissions, a "normal UNIX" program is supposed to work. That should be
    the minimal set, but also the maximal set of devices that people should
    _expect_ to work.

    (Yeah, there are things like /dev/stderr etc, but they are symlinks to
    /proc/self/fd anyway, so permissions don't matter)

    Linus


    \
     
     \ /
      Last update: 2009-10-18 23:28    [W:4.672 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site