환경

  • Red Hat Enterprise Linux (RHEL) 6
  • GNOME Desktop Environment

문제

  • When root user is logging in to GNOME, the following error occurs if a normal user runs df.
$ df -kl
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sda2             24670076   3751464  19665444  17% /
tmpfs                  1030908       100   1030808   1% /dev/shm
/dev/sda1                99150     25491     68539  28% /boot
df: `/root/.gvfs': Permission denied

해결

  • To disable gvfs-fuse-daemon, the GVFS_DISABLE_FUSE environment needs to be set.
  • Create the file /etc/X11/xinit/xinitrc.d/00-gvfs-disable-fuse.sh with the follwing contents:
GVFS_DISABLE_FUSE=1
export GVFS_DISABLE_FUSE

근본 원인

  • On GNOME desktop environment, a hidden directory ~/.gvfs exists under home directory, gvfs-fuse-daemon mounts special filesystem to ~/.gvfs using FUSE system.
# mount
gvfs-fuse-daemon on /root/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev)
  • An error occurs because a normal user cannot access other user's directories.




*****************************************************************************************************************************************



  • Issue

    • When the normal user run df, "permission denied" occurs if root user login to GNOME.
    #df -kl
    Filesystem           1K-blocks      Used Available Use% Mounted on
    /dev/sda2             24670076   3751464  19665444  17% /
    tmpfs                  1030908       100   1030808   1% /dev/shm
    /dev/sda1                99150     25491     68539  28% /boot
    df: `/root/.gvfs': Permission denied
    
     
     

    Environment

    • Red Hat Enterprise Linux 6
    • GNOME Desktop Environment

    Resolution

    It needs to set GVFS_DISABLE_FUSE environment to disable gvfs-fuse-daemon.

    Add the the follows to /etc/environment so that a environment is set by default. Then, reboot system.

    GVFS_DISABLE_FUSE=1
    

    For details, refer to http://developer.gnome.org/gio/stable/ch03.html.

    Root Cause

    A hidden directory called ~/.gvfs exists under home directory, GNOME mounts special filesystem to ~/.gvfs to use FUSE system.

    # mount
    gvfs-fuse-daemon on /root/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev)
    

    df retrieves the infomation on mount points according to contents of /etc/mtab or /proc/mounts. In the case of a normal user, an error occurs without accessing other user's directories.


+ Recent posts