[vox-tech] NFS mounting a VFAT filesystem - uid and gid issues?

Marc Elliot Hall marc at hallmarc.net
Wed Aug 17 06:47:00 PDT 2005


I've got one machine, "tiny", that has data I want to share with a second
machine, "oracle". This seems to be a fairly straightforward NFS operation,
except the partition on "tiny" that has the data is VFAT, and I want the
exported partition to be available to Apache. However, although the data
appears to be properly available on "oracle" when I execute

$ mount tiny.hallmarc.net:/windows

the ownership of the directories and files remains slightly off (group
should be "webusers" based on *my* understanding of the mount options).

$ ls -la /var/www/

drwxrwx---    3 nobody   users       32768 Aug 16 18:30 tiny/

I'm not using NIS to sync the users and groups across these systems...
which may be part of the problem, although /etc/passwd and /etc/group on
the two systems both have unique, matching entries for user "nobody" and 
group "webuser".

In short, although I can browse the /var/www/tiny path from the command
line on "oracle", when I attempt to browse via http, i.e., using Konqueror, 
I get 403 Forbidden errors. 

Kernel versions and snippets of config files can be found at the below
of this message.

Any suggestions?


Configurations:
===================================================
"tiny" - Debian Testing - Machine where the data physically resides
===================================================
$ sudo uname -a
Linux tiny 2.6.8-2-686 #1 Thu May 19 17:53:30 JST 2005 i686 GNU/Linux

$ /usr/bin/rpcinfo -p
   program vers proto   port
    100000    2   tcp    111  portmapper
    100000    2   udp    111  portmapper
    391002    2   tcp    853  sgi_fam
    100024    1   udp   1020  status
    100024    1   tcp   1023  status
    100003    2   udp   2049  nfs
    100003    3   udp   2049  nfs
    100003    4   udp   2049  nfs
    100003    2   tcp   2049  nfs
    100003    3   tcp   2049  nfs
    100003    4   tcp   2049  nfs
    100021    1   udp  33122  nlockmgr
    100021    3   udp  33122  nlockmgr
    100021    4   udp  33122  nlockmgr
    100021    1   tcp  33045  nlockmgr
    100021    3   tcp  33045  nlockmgr
    100021    4   tcp  33045  nlockmgr
    100005    1   udp    939  mountd
    100005    1   tcp    942  mountd
    100005    2   udp    939  mountd
    100005    2   tcp    942  mountd
    100005    3   udp    939  mountd
    100005    3   tcp    942  mountd


tiny:/etc/fstab
===================================================
# /etc/fstab: static file system information.
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    defaults        0       0
/dev/hda5       /               ext3    defaults,errors=remount-ro 0 1
/dev/hda1       /boot           ext3    defaults        0       2
/dev/hda3       /home           ext3    defaults        0       2
/dev/hda6       /usr            ext3    defaults        0       2
/dev/hda7       /var            ext3    defaults        0       2
#make /windows partition owned by user nobody and group webusers	
/dev/hda4       /windows        vfat
rw,user,auto,gid=82,uid=501,umask=000  0       2
/dev/hda8       none            swap    sw              0       0
/dev/hdd        /media/cdrom0   iso9660 ro,user,noauto  0       0
===================================================

tiny:/etc/rpc (relevant portions)
===================================================
# This file contains user readable names that can be used in place of
# rpc
# program numbers.

portmapper      100000  portmap sunrpc
rstatd          100001  rstat rstat_svc rup perfmeter
rusersd         100002  rusers
nfs             100003  nfsprog
mountd          100005  mount showmount
ypbind          100007
===================================================


===================================================
"oracle" - Mandrake 9.2 - Machine with the webserver
===================================================
$ sudo uname -a
Linux oracle.hallmarc.net 2.4.22-10mdk #1 Thu Sep 18 12:30:58 CEST 2003
i586 unknown unknown GNU/Linux

$ /usr/sbin/rpcinfo -p
   program vers proto   port
    100000    2   tcp    111  portmapper
    100000    2   udp    111  portmapper
    100024    1   udp    837  status
    100024    1   tcp    840  status
    391002    2   tcp  32768  sgi_fam
    100011    1   udp    811  rquotad
    100011    2   udp    811  rquotad
    100011    1   tcp    814  rquotad
    100011    2   tcp    814  rquotad
    100003    2   udp   2049  nfs
    100003    3   udp   2049  nfs
    100003    2   tcp   2049  nfs
    100003    3   tcp   2049  nfs
    100021    1   udp  32768  nlockmgr
    100021    3   udp  32768  nlockmgr
    100021    4   udp  32768  nlockmgr
    100021    1   tcp  32769  nlockmgr
    100021    3   tcp  32769  nlockmgr
    100021    4   tcp  32769  nlockmgr
    100005    1   udp    841  mountd
    100005    1   tcp    844  mountd
    100005    2   udp    841  mountd
    100005    2   tcp    844  mountd
    100005    3   udp    841  mountd
    100005    3   tcp    844  mountd



oracle:/etc/fstab
===================================================
/dev/hda1 / ext3 defaults 1 1
none /dev/pts devpts mode=0620 0 0
/dev/scd0 /mnt/cdrom auto
user,iocharset=iso8859-1,codepage=850,noauto,ro,exec 0 0
/dev/hdb5 /mnt/windowsfonts ext3 defaults 1 2
none /proc proc defaults 0 0
/dev/hda6 /usr ext3 defaults 1 2
/dev/hda7 /var ext3 defaults 1 2
/dev/hda8 /var/www ext3 defaults 1 2
/dev/hda5 swap swap defaults 0 0
/dev/hdb1 /home ext3 defaults 1 2

#NFS-mounted partition on "tiny", read-only
#tiny.hallmarc.net:/windows  /var/www/tiny    nfs          ro,auto,user
0    0
#NFS-mounted partition on "tiny", read-write
tiny.hallmarc.net:/windows  /var/www/tiny    nfs          rw,auto,user
0    0
===================================================

oracle:/etc/rpc (relevant portions)
===================================================
#ident  "@(#)rpc        1.11    95/07/14 SMI"   /* SVr4.0 1.2   */
#
#       rpc
#
portmapper      100000  portmap sunrpc rpcbind
rusersd         100002  rusers
nfs             100003  nfsprog
mountd          100005  mount showmount
nfs_acl         100227
===================================================




oracle:/etc/httpd/conf/vhosts/Vhosts.conf (relevant portions)
===================================================

        <Directory /var/www/html/vhosts/hallmarc/html/tiny>
                Options Indexes FollowSymLinks MultiViews
                Order allow,deny
                Allow from 192.168.0.
#               Allow from MasterCard
                Allow from 12.22.156.
        </Directory>
===================================================

-- 
Marc Elliot Hall
621 River Moss Drive
St. Peters, MO 63376
www.hallmarc.net


More information about the vox-tech mailing list