How do I use tar command over secure ssh session?
The GNU version of the tar archiving utility (and other old version of tar) can be use through network over ssh session. Do not use telnet command, it is insecure. You can use Unix/Linux pipes to create actives. Following command backups /backup directory to Remote_IP (IP Remote_IP) host over ssh session.
tar zcvf - /backup | ssh [email protected]_IP "cat > /backup/backup.tar.gz" tar zcvf - /backup | ssh [email protected]_IP "cat > /backup/backup.tar.gz"
Output:
tar: Removing leading `/' from member names /backup/ /backup/n/nixcraft.in/ /backup/c/cyberciti.biz/ .... .. ... Password:
You can also use dd command for clarity purpose:
tar cvzf - /backup | ssh [email protected]_IP "dd of=/backup/backup.tar.gz"
It is also possible to dump backup to remote tape device:
tar cvzf - /backup | ssh [email protected]_IP "cat > /dev/nst0"
OR you can use mt to rewind tape and then dump it using cat command:
tar cvzf - /backup | ssh [email protected]_IP $(mt -f /dev/nst0 rewind; cat > /dev/nst0)$
You can restore tar backup over ssh session:
cd / ssh [email protected]_IP "cat /backup/backup.tar.gz" | tar zxvf -
If you wish to use above command in cron job or scripts then consider SSH keys to get rid of the passwords.
Comments