Remotely creating a tar file via ssh

David Aldridge
David Aldridge used Ask the Experts™
on
I'm not even sure I can do this, but I want to have a script that ssh's to another server and creates a tar file on the remote server.  Is that even possible?  Here's what I have been working with, which isn't very much because I can't figure out how to make it work.

Thanks in advance for any help!
David

#!/usr/bin/ksh

server=$1

ssh $server 'tar cvf $server.logs.tar.gz /opt/bmc/Patrol3/log/Patrol*'
Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
Distinguished Expert 2017
Commented:
Where do you want the file to end up?
To be compressed you are missing the z flag.
Not sure why you are including the v option...

The script/command you have needs to have a key/pair between the user under whose rights this script rubs and remote system

You might better off setting up the process as a cron job if the file is to be created locally.

If you want the file created on the remote system you need to modify the line as

ssh $server '/usr/bin/tar cf - /opt/bmc/Patrol3/log/Patrol' | /usr/bin/gzip -c > "/path/to/where/you/want/the/file/$server.logs.tgz"

If your tar include the compress, you could use the z (cfz) with the output directed into the file (cut out the |gzip -c
..

The same issue, the user and credential gave to use use keys, or it will become an interactive requiring a password.

IMHO, using ssh_PASSWD env variable is not ...since that variable has to be defined......

Author

Commented:
Modified your answer slightly by putting it in the background on the remote server, but you were spot on.
Thanks!
David

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial