主机内部和主机之间的数据备份和转移是我们最长做的事情了,如果有web server那么可以 直接 wget http://www.xx.com/x.zip即可,如果有ftp server时,可以使用ftp命令上传下载,如果二者都没有的话,scp命令就有用武之地了。
scp简介
scp是secure copy的简写,scp是linux系统下基于ssh登陆进行安全的远程文件拷贝命令。和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的
scp命令基本格式
1 | scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file] |
2 | [-l limit] [-o ssh_option] [-P port] [-S program] |
3 | [[user@]host1:]file1 [...] [[user@]host2:]file2 |
常用参数
常用方法
5 | scp /home/backup.zip root@ip:/home/others/backup |
8 | scp /home/backup.zip root@ip:/home/others/otherbackup.zip |
11 | scp -r /home/backup root@ip:/home/others |
执行后,系统会要求输入远程SSH的登录密码(ps:上面命令中,远程用户名@,可以省略,这样执行后系统就是要求输入用户名和密码),同样可以使用密匙对的方式登录,方法参照Windows下Puty SSH公钥验证实现免密码登陆详细图文教程
将生成的公钥id_rsa.pub改名为authorized_keys,并上传到远程服务器的~/.ssh/下,私钥留着本地服务器。这样在执行上面命令后,就不需要密码了
定时备份方法
在建立密匙对方式登录后,我们可以在脚本中利用scp命令进行备份,利用crontab来定时执行
5 | tar zcf ${backpath}${site} "-" ${ date }. tar .gz /var/html/www/${site} |
6 | scp ${backpath}${site} "-" ${ date }. tar .gz root@ip:/var/backup |
7 | find ${backpath} -mtime +30 - exec rm {} \; |
相关日志:
评论 共0条 (RSS 2.0) 发表评论