/var/lib/gdm oddness.
Daniel P. Berrange
berrange at redhat.com
Wed Mar 12 20:25:16 UTC 2008
On Wed, Mar 12, 2008 at 04:17:41PM -0400, Colin Walters wrote:
>
> On Wed, 2008-03-12 at 16:10 -0400, Dave Jones wrote:
> > Anyone know whats up with the permissions on /var/lib/gdm/.gvfs ?
> > On upgrade of certain packages, I'm seeing the error..
> > cannot access /var/lib/gdm/.gvfs: Permission denied
> >
> > ls -l of that shows..
> >
> > d????????? ? ? ? ? ? .gvfs/
> >
> > My initial thought was 'eek, filesystem corruption'.
> > Rebooting and running fsck picks up nothing.
> > And in fact, when in runlevel 1, the permissions look sane.
>
> GNU coreutils ls will show that if it can readdir() but not stat().
> Normally stat() cannot fail (libc manual only shows ENOENT), but with
> SELinux it can fail with EACCES. So my guess is that SELinux policy is
> denying access to that file.
The manpage you are looking at for stat() is bogus. Both the Linux and
POSIX man pages for stat() document EACCESS and many many other possible
error codes you must expect from stat().
[quote stat(3p)]
ERRORS
The stat() function shall fail if:
EACCES Search permission is denied for a component of the path pre-
fix.
EIO An error occurred while reading from the file system.
ELOOP A loop exists in symbolic links encountered during resolu-
tion of the path argument.
ENAMETOOLONG
The length of the path argument exceeds {PATH_MAX} or a
pathname component is longer than {NAME_MAX}.
ENOENT A component of path does not name an existing file or path
is an empty string.
ENOTDIR
A component of the path prefix is not a directory.
EOVERFLOW
The file size in bytes or the number of blocks allocated to
the file or the file serial number cannot be represented
correctly in the structure pointed to by buf.
The stat() function may fail if:
ELOOP More than {SYMLOOP_MAX} symbolic links were encountered dur-
ing resolution of the path argument.
ENAMETOOLONG
As a result of encountering a symbolic link in resolution of
the path argument, the length of the substituted pathname
string exceeded {PATH_MAX}.
EOVERFLOW
A value to be stored would overflow one of the members of
the stat structure.
[/quote]
Dan.
--
|: Red Hat, Engineering, Boston -o- http://people.redhat.com/berrange/ :|
|: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|
More information about the fedora-devel-list
mailing list