現在有一台服務器A,目錄/data2/abc下存在若干文件夾和文件,需要復制到服務器B中。這時,可以在服務器A上執行rsync或者scp命令,將文件夾或文件復制到服務器B中。
SCP:
scp /data2/xxx.com/upload/adsvideo/material/16981/人物進階選擇720X1280.mp4 root@47.ssss:/data/www/xxx.com/upload/adsvideo/material/16979/
ssh: connect to host 47.ssss port 22: Connection timed out
lost connection
此時,提示錯誤無法通過ssh連接到目標服務器B(之前,已經將服務器A的id_rsa.pub寫入到了服務器B的~/.ssh/authorized_keys中),可能是服務器B防火牆的原因,查看防火牆狀態:
service iptables status
Table: filter
Chain INPUT (policy ACCEPT)
num target prot opt source destination
1 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
2 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
3 ACCEPT all -- 221.228.76.51 0.0.0.0/0
4 ACCEPT tcp -- 221.228.76.44 0.0.0.0/0 tcp dpt:10050
5 ACCEPT all -- 101.124.7.129 0.0.0.0/0
6 ACCEPT all -- 14.23.149.184/29 0.0.0.0/0
7 ACCEPT all -- 183.63.80.104/29 0.0.0.0/0
8 ACCEPT all -- 192.168.0.0/16 0.0.0.0/0
9 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
10 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:443
11 ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0 icmp type 8
12 DROP tcp -- 0.0.0.0/0 0.0.0.0/0
由此可以看到,並沒有允許服務器A訪問,添加服務器A允許訪問;之后,再執行scp命令即可;
rsync
rsync -aq --password-file=/etc/rsync161.pas /data2/xxx.com/upload/adsvideo/material/16981/人物進階選擇720X1280.mp4 asasa@106.xxxx::mysqlbackup/www/
需要在服務器B開啟rsync服務器,並配置用戶密碼,同時密碼在服務器A下也配置一份;
同時定義路徑別名,如上面的mysqlbackup代表/data/