linux中两台服务器间复制文件,Linux两台服务器之间复制文件及免密码登录的方法...

有时候搭建集群机器是,需要在多台机器中间相互拷贝文件,一种方式是同事sftp拷贝到本机,再分别拷贝到其他服务器上。这里介绍一种直接在两台服务器之间拷贝文件且去掉繁琐的登陆操作的方法。

两台服务器之间拷贝文件

采用linux命令scp可以在两台电脑之间复制文件,如有两台服务器192.168.129.100/101,现在需要拷贝100 /etc/passwd文件到101服务器的/etc目录下,登陆100服务器,知道101的用户root的密码为123456

scp /etc/passwd root@192.168.129.101:/etc/

第一次会提示授权操作,输入yes后再输入root用户的密码,拷贝完成。

服务器之间免密码登陆

现在每次拷贝文件的时候都需要输入密码非常麻烦,现在介绍一种采用公钥/私钥认证的方式去掉密码登陆

在100服务器上进入.ssh目录,

cd ~/.ssh

ssh-keygen -t rsa

scp id_rsa.pub root@192.168.129.101:~/.ssh

进入101服务器,将公钥导入到~/.ssh/authorized_keys,

cd ~/.ssh

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

~/.ssh权限设置为700

~/.ssh/authorized_keys的权限设置为600

这是Linux的安全要求,如果权限不对,自动登录将不会生效

完毕之后,退出服务器的登录,再使用ssh登录,你就会发现服务器不会再向你询问密码了.

以上所述是小编给大家介绍的Linux两台服务器之间复制文件及免密码登录的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

如果两台Linux服务器之间需要进行文件复制,且两台服务器SSH连接需要密码验证,可以使用以下脚本: ``` #!/bin/bash # 定义源文件和目标文件路径 source_path="/path/to/source/file" target_path="/path/to/target/directory" # 定义远程服务器的IP地址和用户名 remote_ip="remote_server_ip" remote_user="remote_server_user" # 复制文件到远程服务器 scp "$source_path" "$remote_user@$remote_ip:$target_path" # 输出复制成功信息 echo "File copied successfully!" ``` 在脚本,需要指定远程服务器的IP地址和用户名。然后使用scp命令将文件复制到远程服务器上。当脚本运行时,会提示输入远程服务器密码进行验证,验证成功后文件就会复制到远程服务器上。 如果需要复制多个文件,只需要修改脚本的源路径和目标路径即可。如果需要将多个文件复制到同一个目标路径下,可以将目标路径设置为目录路径,然后使用`*`通配符来复制所有文件,例如: ``` #!/bin/bash # 定义源文件和目标文件路径 source_path="/path/to/source/*" target_path="/path/to/target/directory/" # 定义远程服务器的IP地址和用户名 remote_ip="remote_server_ip" remote_user="remote_server_user" # 复制文件到远程服务器 scp $source_path "$remote_user@$remote_ip:$target_path" # 输出复制成功信息 echo "Files copied successfully!" ``` 在这个例子,`$source_path`是一个目录路径,可以使用`*`通配符来匹配该目录下的所有文件。然后将这些文件复制到远程服务器上的`$target_path`目录下。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值