
I wrote this text because the README can be a bit hard to follow.
This is just the order of which the scripts should be installed and a
guideline to what might be needed.

As this is the first draft, it will be updated as I figure out more important
details.

The first thing to do is to decide which site should be the hub server.
It should be the most stable one and preferably the one with the best
line to the internet. If the hub goes down, no replication will take place
so perhaps the one YOU have physical access to? Just an idea.

Second, you need to do is to decide on a way to let the slaves reach
the /glftpd/ftp-data and /glftpd/etc dir from the hub. I recomend NFS as its easy.

I wont go through that part here, since you can do it in so many ways. Just
google and read a few how-to's on NFS. Theres a lof of them out there.

By default, I want you to mount the hubs ftp-data and etc dir to
/glftpd/ftp-data.ext and /glftpd/etc.ext on the slave. It will need to have full
permissions in there.

Now that you figured that out and is connected, we should start on the slave so 
unpack the latest MSS release on it.

--[ Basic Slave Installation ]--

All you need is in the 'slave' dir of the package.
Copy mss-slave.id, mss-core.sh and mss-slave.conf to your glftpd's bin dir.

Edit mss-slave.id and give this slave a short name. Do not use any weird characters
in the name. Just something that will identify it amongst all the other slaves.
Each slave needs a unique name.

Also set the rootdir of your glftpd installation. Default is fine unless you changed it
to use a jailed dir.

Edit mss-slave.conf and edit all the options down to the part that says:
##########################################################################
# mss-rlscomp.sh settings.                                               #
##########################################################################

Skip everything below that one for now.

Again, read the README for what the options does.

When configured, make mss-core.sh executable. chmod 700 mss-core.sh or similar.

Before running it for the first time, the /glftpd/etc and /glftpd/ftp-data/users dir
on this slave must be empty. The etc dir can contain other stuff, just make sure
there isnt any groups and passwd files in it. If there are, they will be overwritten.
If you have current users in the users dir, they will be deleted.

Now try running mss-core.sh without any args. Just do; ./mss-core.sh

It should give you a list of all its arguments.

If it dosnt complain, start the first sync that will create all the users on this slave.
Run: ./mss-core.sh fullsync debug

Once that is done, we have a fully functional slave, with the same userbase as the hub.

We now have tha basic MSS installation working. Everything below this is optional but should
be used for a nice working sitering.

--[ Basic Hub Setup ]--

Now we go to the hub. In the hub dir of this package, extract everything to /glftpd/bin or 
where ever its installed.

Edit mss-hub.id and give it a nice, unique and short name. Also change GLROOT if your glftpd
installation is not in /glftpd.

Next: Install the scripts in this order, following the README for each one.

Slave: transfercredits.sh (Do not enable SLAVE2SLAVE transfers yet in mss-slave.conf).

Hub: mss-site.sh
Hub: mss-post.sh
 For both the above scripts, dont forget to
 chmod 666 /glftpd/etc
 chmod 666 /glftpd/ftp-data/users
 chmod 777 /glftpd/ftp-data/users/*

Slave: slaveserver.sh
Slave: mss-rlscomp.sh
 This script needs to read xferlog and write to the local etc dir on the slave, so;
 chmod -R 777 /glftpd/etc
 chmod -R 666 /glftpd/ftp-data/logs

Hub: mss-report.sh
Hub: mss-hubtransfer.sh

You can skip mss-pong.sh entirely. That is just to send alive pongs to the hub if you 
have enabled that (mss-core.sh does too). Leave it for now.

And thats the order things should be installed. 

To be able to transfer credits from slave to slave, you need a working actionfile system
on the slaves and mss-report.sh running nicely on the hub.

/Turranius 2002-2004
