Douglas Muth on 20 Apr 2010 13:12:54 -0700 |
On Tue, Apr 20, 2010 at 3:38 PM, Mike Leone <turgon@mike-leone.com> wrote: > So here's my situation - I have a Linux server set up in a DMZ, running > VSFTP. Each FTP account is chrooted. We will be using this for vendors > to send us invoices, etc. > > The FTPing part is working fine. The chrooting is working fine. What I > need to do now, is to have a method of sweeping through all these home > folders; collect any new files; zip them all together; and FTP them > inbound to the trusted part of my LAN. And then delete the file, once > it's been FTPed in. [snip] With the possible exception of FTP (not sure if it can really be scripted), this is fairly straightforward in shell script: #!/bin/sh # # Find files newer than our timestamp file # FILES=`find /path/to/ftproot/ -anewer /var/run/timestamp` # # Note our new timestamp for the next run. # There is an race condition here that I could probably solve given more time. # touch /var/run/timestamp # # Put them into a temp file # TARGET=`mktemp` zip $TARGET $FILES # # Copy them to our target server via scp # Give the zipfile a unique name, based on the current timestamp. # DATE=`date +%Y%m%d%H%M%S` scp $TARGET user@host:files_${DATE}.zip # The End. Note that you really want to use ssh/scp instead of FTP. It's much easier to script, for one. -- Doug ___________________________________________________________________________ Philadelphia Linux Users Group -- http://www.phillylinux.org Announcements - http://lists.phillylinux.org/mailman/listinfo/plug-announce General Discussion -- http://lists.phillylinux.org/mailman/listinfo/plug
|
|