[mythtv-users] Semi-OT - NFS mounting issues.

Jonny B jon.the.wise.gdrive at gmail.com
Wed Dec 3 03:11:00 UTC 2008


I am pasting the email I sent to some coworkers, so there's some extra
info about the myth setup that most of you won't need, so feel free to
skim past that. Heck, you probably don't need to read the long version
at all, just jump to the configuration files.

Short version:
	I can't seem to get my NFS mounts to mount as read/write on the
client system. The conf files appear correct, but all mounts are
mounting read only on the client.

The long version follows:
	I have a small network at home that runs my PVR, and a few misc other
tasks. Mainly it's a media center hub with a client/server
relationship. The server(host) sits in my extra bedroom/office, and
records TV, and stores video, audio, pictures, etc. The client system
is in the living room and connects to the server, which has a database
of recordings, schedules, etc, and NAS storage. The system works quite
well. My issue is twofold, but seems to be related to permission in
both cases. The host is only a 2.4ghz Pentium4 single core chip, and
all the recordings come in as high bitrate MPEG2 recordings (8 gigs
for an hour) that I would like to transcode to a lower bitrate (1 to 2
gig per hour recordings) for archival and storage. The transcoding
would be the most CPU intensive thing, as recording is done via 2
functions - the low definition recordings come off the standard cable
line into a hauppage PVR150 with an MPEG2 hardware encoding chip.
These are encoded at my desired bitrate, and allows me to keep them at
my 1 gig per hour specification. (they're also much lower bitrate to
begin with, being analog). The High Definition recordings are already
encoded from the broadcaster, and just captured over the air and to
directly to disk. These are the recordings that are my issue. It takes
about 2 hours to transcode a 1 hour recording on the host. It likely
wouldn't be much faster on the client, but at least I could spread the
job out evenly. The client system can also do this transcoding, but
must have physical access to the data (playback is streamed from the
server if the filesystems aren't locally mounted). My client system is
a 2.8ghz Hyperthreaded P4 - not a lot more horsepower than the server,
but multithreaded, so it can do two tasks at once. Unfortunately, I
can't get write access to the recording directories... or any others
for that matter. The second issue has to do with recording on the
client system. I have a tuner card in it, and would be able to add a
4th tuner (3 in the host) but am unable to record to the recording
directories, because they are read only. The workaround for this has
been to put a ton of storage space on the host (I *WAS* recording
everything to a 200gb drive until the Olympics came. At that point I
lost most of my recordings attempting to make space for the Olympics,
which took about 80 gigs a night (I only kept a days worth, deleting
the events I wasn't interested in) and found a sale at newegg. I added
4 Western Digital Green Power 640gig SATA drives at $69 a piece. I was
initially going to make a software RAID5 array, but decided for
multiple reasons that was unneeded. MythTV (my PVR software)
automatically spreads the recordings across as many filesystems as you
configure, based on whether it's local or remote (local first) and
then on space (use drive with the most free space first). I was hoping
that the decreased complexity of standard mountpoints and NFS would
make things simple. I had at one point (many years ago the host and
client were both fedora 4 systems) a single tuner on the host and a
single tuner on the client and the recordings mounted rw on both
(physically in the host, NFS on the client) and everything worked, but
my configuration files aren't too terribly different then they were
back then, though my drives have grown (that first iteration only had
an 80gb recording drive, but files were also low definition, and I
used a lot of compression).

The recordings are set to record to:
theboss:/mnt/wd640a/recordings/
theboss:/mnt/wd640b/recordings/
theboss:/mnt/wd640c/recordings/
theboss:/mnt/wd640d/recordings/

Recordings is a Subdirectory on each drive, and not the root of each
filesystem. Currently none of these are mounted on the client (as you
can see, commented out) but the other filesystems are mounted and
exported the exact same way that these were, and none of them ever
allowed me write access. For example, on the client:

mythtv at livingroom:/mnt/myth> touch test
touch: cannot touch `test': Read-only file system

All pertinent config files should be included below. If you need more
information, please let me know what you need, and I will get it to
you. Thanks!

I should also add, I have several of these drives shared with Samba
also. With smb, I have got write access working, but only use the smb
protocal for windows and mac clients. I would much prefer NFS for
this. Also, all user accounts are local, the root password is the same
on both systems, but there isn't a matching regular user account - I
didn't think this was the issue, as it has never been before, the
client is set to boot and login to the mythtv user automatically. This
and root are the only users on the client. The host has accounts for
me, my girlfriend and my buddy that uploads all the new movies. (those
would be jon, susan and munkey, respectively, but none of these
accounts exist on the client).

Host System:
###################################################################################
OpenSuse 10.3
jon at theboss:/mnt> uname -a
Linux theboss 2.6.24.3-default #1 Wed Mar 19 08:47:29 PDT 2008 i686
i686 i386 GNU/Linux

jon at theboss:/mnt> cat /etc/fstab
/dev/disk/by-id/scsi-SATA_IC35L060AVV207-_VNVB20G2GMVG5R-part3 /
             ext3       acl,user_xattr        1 1
/dev/disk/by-id/scsi-SATA_IC35L060AVV207-_VNVB20G2GMVG5R-part1 /boot
             ext3       acl,user_xattr        1 2
/dev/disk/by-id/scsi-SATA_WDC_WD2000JB-00WD-WMACK1078312-part1
/mnt/myth            xfs        defaults              1 2
/dev/disk/by-id/scsi-SATA_MAXTOR_6L080J4_664220852476-part1 /mnt/myth2
         ext3       defaults              1 2
/dev/disk/by-id/scsi-SATA_IC35L060AVV207-_VNVB20G2GMVG5R-part2 swap
         swap       defaults              0 0
/dev/disk/by-id/ata-WDC_WD6400AACS-00G8B0_WD-WCAUF1148203-part1
/mnt/wd640a     xfs     defaults        0 0
/dev/disk/by-id/ata-WDC_WD6400AACS-00G8B0_WD-WCAUF1131149-part1
/mnt/wd640b     xfs     defaults        0 0
/dev/disk/by-id/ata-WDC_WD6400AACS-00G8B0_WD-WCAUF1131224-part1
/mnt/wd640c     xfs     defaults        0 0
/dev/disk/by-id/ata-WDC_WD6400AACS-00G8B0_WD-WCAUF1132085-part1
/mnt/wd640d     xfs     defaults        0 0
/dev/disk/by-id/ata-WDC_WD1000BB-32CCB0_WD-WMA9P1259163-part1
/mnt/hundie     xfs     defaults        0 0
/dev/disk/by-id/ata-Maxtor_6L160P0_L3B5ELTG-part1
/mnt/onesixty   xfs     defaults        0 0
proc                 /proc                proc       defaults              0 0
sysfs                /sys                 sysfs      noauto                0 0
debugfs              /sys/kernel/debug    debugfs    noauto                0 0
usbfs                /proc/bus/usb        usbfs      noauto                0 0
devpts               /dev/pts             devpts     mode=0620,gid=5       0 0

jon at theboss:~> cat /etc/exports
/mnt/myth       (rw,no_root_squash,sync,no_subtree_check)
/mnt/myth2      (rw,no_root_squash,sync,no_subtree_check)
/mnt/onesixty   (rw,no_root_squash,sync,no_subtree_check)
/mnt/hundie     (rw,no_root_squash,sync,no_subtree_check)
/mnt/wd640a     (rw,no_root_squash,sync,no_subtree_check)
/mnt/wd640b     (rw,no_root_squash,sync,no_subtree_check)
/mnt/wd640c     (rw,no_root_squash,sync,no_subtree_check)
/mnt/wd640d     (rw,no_root_squash,sync,no_subtree_check)

jon at theboss:/etc/samba> cat smb.conf
# smb.conf is the main Samba configuration file. You find a full commented
# version at /usr/share/doc/packages/samba/examples/smb.conf.SUSE if the
# samba-doc package is installed.
# Date: 2007-12-04
[global]
        workgroup = WORKGROUP
        netbios name = theboss
        printcap name = cups
        add machine script = /usr/sbin/useradd  -c Machine -d
/var/lib/nobody -s /bin/false %m$
        domain logons = No
        domain master = No
        security = user
        passdb backend = smbpasswd

[profiles]
        comment = Network Profiles Service
        path = %H
        read only = No
        store dos attributes = Yes
        create mask = 0600
        directory mask = 0700

[printers]
        comment = All Printers
        path = /var/tmp
        printable = Yes
        create mask = 0600
        browseable = No

[print$]
        comment = Printer Drivers
        path = /var/lib/samba/drivers
        write list = @ntadmin root
        force group = ntadmin
        create mask = 0664
        directory mask = 0775

## Share disabled by YaST
# [netlogon]

[myth2]
        inherit acls = Yes
        path = /mnt/myth2
        read only = Yes
        guest ok = Yes
[myth]
        inherit acls = Yes
        path = /mnt/myth
        read only = No
        guest ok = Yes
[onesixty]
        inherit acls = Yes
        path = /mnt/onesixty
        read only = No
        guest ok = Yes
[hundie]
        inherit acls = Yes
        path = /mnt/hundie
        read only = No
        guest ok = Yes

jon at theboss:/mnt> df -m
Filesystem           1M-blocks      Used Available Use% Mounted on
/dev/sda3                35540      7441     26295  23% /
udev                       506         1       506   1% /dev
/dev/sda1                 1012        53       908   6% /boot
/dev/sdb1               190687    174406     16282  92% /mnt/myth
/dev/sdc1                75142     62230      9096  88% /mnt/myth2
/dev/sde1               610350    157440    452911  26% /mnt/wd640a
/dev/sdd1               610350    156078    454273  26% /mnt/wd640b
/dev/sdf1               610350    156183    454168  26% /mnt/wd640c
/dev/sdg1               610350    158785    451566  27% /mnt/wd640d
/dev/hdd1                95350     75337     20013  80% /mnt/hundie
/dev/hdc1               156252    124332     31920  80% /mnt/onesixty

jon at theboss:/mnt> ls -l
total 20
drwxrwxrwx 10 root root  4096 2008-11-27 04:36 hundie
drwxrwxrwx  4 root root    92 2008-11-14 07:16 myth
drwxrwxrwx  5 root root 16384 2008-11-27 03:34 myth2
drwxrwxrwx 10 root root   150 2008-11-27 04:37 onesixty
drwxrwxrwx  4 root root    35 2008-11-08 02:47 wd640a
drwxrwxrwx  4 root root    35 2008-11-08 02:47 wd640b
drwxrwxrwx  4 root root    35 2008-11-08 02:47 wd640c
drwxrwxrwx  4 root root    35 2008-11-08 02:47 wd640d


Client System:
###################################################################################
OpenSuse 11.0
mythtv at livingroom:/mnt> uname -a
Linux livingroom 2.6.25.18-0.2-pae #1 SMP 2008-10-21 16:30:26 +0200
i686 i686 i386 GNU/Linux

mythtv at livingroom:/etc> cat fstab
/dev/disk/by-id/scsi-SATA_WDC_WD800BB-00DWD-WCAHL6377371-part1  swap
 swap    defaults 0 0
/dev/disk/by-id/scsi-SATA_WDC_WD800BB-00DWD-WCAHL6377371-part2  /
 ext3    acl,user_xattr 1 1
proc    /proc   proc    defaults 0 0
sysfs   /sys    sysfs   noauto 0 0
debugfs /sys/kernel/debug       debugfs noauto 0 0
usbfs   /proc/bus/usb   usbfs   noauto 0 0
devpts  /dev/pts        devpts  mode=0620,gid=5 0 0
192.168.15.26:/mnt/myth         /mnt/myth       nfs
rw,tcp,timeo=150        0 0
192.168.15.26:/mnt/myth2        /mnt/myth2      nfs
rw,tcp,timeo=150        0 0
192.168.15.26:/mnt/hundie       /mnt/hundie     nfs
rw,tcp,timeo=150        0 0
192.168.15.26:/mnt/onesixty     /mnt/onesixty   nfs
rw,tcp,timeo=150        0 0
#192.168.15.26:/mnt/wd640a      /mnt/wd640a     nfs
rw,tcp,timeo=150        0 0
#192.168.15.26:/mnt/wd640b      /mnt/wd640b     nfs
rw,tcp,timeo=150        0 0
#192.168.15.26:/mnt/wd640c      /mnt/wd640c     nfs
rw,tcp,timeo=150        0 0
#192.168.15.26:/mnt/wd640d      /mnt/wd640d     nfs
rw,tcp,timeo=150        0 0

mythtv at livingroom:/mnt> ls -l
total 36
drwxrwxrwx 10 root root  4096 2008-11-27 04:36 hundie
drwxrwxrwx  4 root root    92 2008-11-14 07:16 myth
drwxrwxrwx  5 root root 16384 2008-11-27 03:34 myth2
drwxrwxrwx 10 root root   150 2008-11-27 04:37 onesixty
drwxr-xr-x  2 root root  4096 2008-11-08 02:32 wd640a
drwxr-xr-x  2 root root  4096 2008-11-08 02:32 wd640b
drwxr-xr-x  2 root root  4096 2008-11-08 02:32 wd640c
drwxr-xr-x  2 root root  4096 2008-11-08 02:32 wd640d


Thanks Guys.

~Jon


More information about the mythtv-users mailing list