I have had a Buffalo TeraStation Live for several years now, and have always been a bit irritated that I have had to use SMB for mounting the share to my linux boxes (pretty much all of my boxes!). I managed a while ago to install a version of nfs on the box which however was only version 2 so I hit the maximum file size limit of 2GB, a bit of a pain when I have a lot of files over that size.
I was hunting around the web the other day – as I do on occasion 🙂 – when I came across this thread.
“A-ha!” I thinks to me-self! So the TeraStation Pro is essentially the same hardware with different software on it! Not only that the Pro has nfs on it properly!
I duly went and downloaded the latest pro version of the firmware, unzipped it and edited the ini file to:
[Application] Title = BUFFALO TS-HTGL Updater Ver.1.33 WaitReboot = 360 WaitFormat = 300 [Target] ProductID = 0x00002006 Name = HS-DHTGL [Flags] VersionCheck = 0 [SpecialFlags] Debug=1
Now run the firmware update! (Note to self, do not have any web sessions open, or be logged in via ssh or telnet whilst doing this or it will be slow and will fail!) This worked a charm, had to turn the machine back on a couple of times as the firmware updated. I logged back into the web front end and went about setting up the nfs options, then mounted them on one of the linux boxes. Have a poke around – yup all my files are visible, but hang-on a sec, what’s this? The file owners were all over the place, not what I was expecting.
OK
chown blah:blah *
Permission denied! Damn! Time to crack the box again!
java -jar acp_commander.jar -t 192.168.0.100 -o
followed by a telnet into the box. Have a look at
/etc/exports
and see that the options on the shares are:
rw,sync,all_squash,anonuid=99,anongid=99,no_subtree_check
well, that’s not what I want! SO I edit the options to
rw,sync,no_root_squash,no_subtree_check
and
exportfs -ra
remount the share, and all works as expected!
Well sort of. As soon as any change is made on the web fronted the nfs server is restarted and the options magically change back to their defaults!
Damn!
OK time to find where the file is being generated from! So looking at
/etc/init.d/nfs.sh
we see the usual startup type stuff and lo and behold there is a line that reads
nas_configgen -c nfs
Right well I’ll change that I thought, should only be a script file, but alas it is a binary, so one small change in the script after the offending line:
perl -pi -w -e \ 's/rw,sync,all_squash,anonuid=99,anongid=99,\ no_subtree_check/rw,sync,no_root_squash, \ no_subtree_check/g;' /etc/exports
– thanks to “The Book of Pete” means that the changes I want are applied to the
/etc/exports
file after it is written to the system, and root can go mad with permissions and I can at last start running some backup scripts that will maintain ownership of files as I want it to! After all the box is only for my use on my LAN and not available to the public at large!