CentOS系统从大学毕业后就没深入的去玩了,很多实用的命令回想一下都有些没记住,但是最近在处理博客的数据库,文件自动备份问题,所以还是需要用到scp命令来直接远程传输。这是一个相当好用的命令,简单的语句就可以将文件和文件夹发送出去,但是每次都需要输入密码,不是太方便,而且如果写自动备份的脚本总不可能把密码也丢在里面,很不安全,但是其实有免密传输的办法,配合scp让备份数据方便了不少。
教程参考:csdn博客老刀-007文章
我有两台服务器:
A为本地服务器:192.168.0.1 B为远程服务器:192.168.0.2首先需要生成并配置密钥
1.在服务器A执行
ssh-keygen -t rsa //连续三次回车,即在本地生成了私钥(id_rsa) 与公钥 (id_rsa.pub),不设置密码 ssh root@192.168.0.2 "mkdir .ssh" //根据提示输入密码,在B服务器root目录创建一个名称为.ssh的文件夹 scp ~/.ssh/id_rsa.pub root@192.168.0.2:.ssh/id_rsa.pub //将密钥文件传输到上个步骤创建的文件夹
2.在服务器B执行touch /root/.ssh/authorized_keys //新建authorized_keys文件,如果有就跳过 cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys //将id_rsa.pub的内容追加到authorized_keys 中3.在服务器A测试免密登录(免密登录可以成功就代表scp命令也可以)
ssh root@192.168.0.2然后,就可以测试scp传输了
在服务器A执行(比如我要把home目录的web.zip,传输到B服务器的home目录)scp /home/web.zip root@192.168.0.2:/home如果是传输web目录
scp -r /home/web root@192.168.0.2:/home总之简单的一条指令,而且不需要输入密码就可以快速传输。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END