3,756 bytes added
, 17:46, 31 October 2008
{{Needs_review}}
{{Incomplete}}
This page describes a method you can use to automatically mount a network share (samba/cifs, nfs, etc) in a directory on your SME server each time you boot up.
== Create the local mount points ==
The following example assumes you want to expose some data from a windows share in the **info** ibay on your SME server
cd /home/e-smith/files/ibays/info/html
mkdir share1
mkdir share2
== Create a password file ==
In order for your SME server to mount a network share, it needs to know a valid username and password on the intended network server.
The most secure way to allow your SME server to login to a Windows (or other network) server is to place the required username and password information into a file on the disk, then set the permissions on that file so no one can read it who should not be able to.
I prefer to keep all such files in a folder under /root, as shown here:
mkdir /root/.passwd
echo "username=joe
password=theplumber
" > /root/.passwd/nas01
chmod 400 /root/.passwd/nas01
== Modify the SME '''local''' event ==
You can schedule a program to run whenever your system boots by adding it to the e-smith '''local''' event. This event is executed by SME after all other boot processes have run, so the network, USB subsystem, etc should all be initialized and available.
The following commands will add a command to the local event that will mount a network share:
cd /etc/e-smith/events/local
echo "#! /bin/sh
/etc/rc.d/init.d/netfs start
mount -t cifs -o _netdev,credentials=/root/.passwd/nas01 //nas01/share1 /home/e-smith/files/ibays/info/html/share1
mount -t cifs -o _netdev,credentials=/root/.passwd/nas01 //nas01/share2 /home/e-smith/files/ibays/info/html/share2
" > S95netshares
chmod 755 S95netshares
== Mounting ==
You can test your new mount script by running it:
/etc/e-smith/events/local/S95netshare
Or by executing the SME '''local''' event:
signal-event local
Or by rebooting
== Un-Mounting ==
You can un-mount your network shares using
/etc/rc.d/init.d/netfs stop
Or by shutting down or rebooting
== Testing ==
If all goes well, you should now be able to "see" your network data, and verify your network mounts, using one or more of these commands:
{| border="1" cellpadding="5" cellspacing="0"
| <tt>df -h</tt>
| output should include lines beginning with //nas01/share1 and //nas01/share2
|-
| <tt>mount</tt>
| output should include lines beginning with //nas01/share1 and //nas01/share2
|-
| <tt>/etc/rc.d/init.d/netfs status</tt>
| Should return:<br><tt>Active CIFS mountpoints:<br>/home/e-smith/files/ibays/info/html/share1<br>/home/e-smith/files/ibays/info/html/share2</tt>
|-
|}
== Accessing your Data ==
{| border="1" cellpadding="5" cellspacing="0"
| <tt>ls /home/e-smith/files/ibays/info/html/share1</tt>
| should show the contents of //nas01/share1
|-
| <tt>ls /home/e-smith/files/ibays/info/html/share2</tt>
| should show the contents of //nas01/share2
|-
| http://your-sme-server/info/share1
| should show the contents of //nas01/share1
|-
| http://your-sme-server/info/share2
| should show the contents of //nas01/share2
|-
|}
== Notes and Warnings ==
# The method describes gives access to //nas01/share1 and //nas02/share2 using the username and password placed into /root/.passwd/nas01. Once successfully mounted, this means that anyone who can browse to the '''info''' ibay will be able to access your data.
# If you don't include <tt>/etc/rc.d/init.d/netfs start</tt> in your script, your system will lock up every time you shutdown. This is (in my opinion) a bug in CentOS (and hence will not be addressed by the SME developers). See [http://bugs.contribs.org/show_bug.cgi?id=4086 Bug 4086] for more information.
[[Category:Howto]]