LINUX SCP

LINUX SCP,第1张

设有两机,均为局域网,两机可相互通信无问题,中间无防火墙。

两机IP分别为:A:192.168.1.240 B:192.168.1.102

假设A,B机的SSH都允许root登录

设要把 A上的 /root/abc.zip 传到 B机并放到/abc目录,可以在A机上用命令

scp /root/abc.zip root@192.168.1.102:/abc/

若 SSH端口不是默认的22,比如,是端口1234 则加-P参数:

scp -P 1234 /root/abc.zip root@192.168.1.102:/abc/

也可以在B机上用命令:

scp root@192.168.1.240:/root/abc.zip /abc/

下面给出一个例子,希望你看得懂:

[root@localhost ~]# pwd

/root

[root@localhost ~]# ls

anaconda-ks.cfg ftpaccount install.log.syslog

backup.tar.gzinstall.log svn1.4.3

[root@localhost ~]# scp backup.tar.gz root@192.168.1.21:/tmp/

The authenticity of host '192.168.1.21 (192.168.1.21)' can't be established.

RSA key fingerprint is 4d:b4:e1:5b:80:8f:ea:df:0a:eb:dd:30:e7:00:07:90.

Are you sure you want to continue connecting (yes/no)? yes

Warning: Permanently added '192.168.1.21' (RSA) to the list of known hosts.

root@192.168.1.21's password: <<提示输入192.168.1.21的SSH密码

backup.tar.gz 100% 5120KB 1.3MB/s 00:04

[root@localhost ~]#

scp命令 如下:

scp /etc/cluster.conf 192.168.1.10:/etc/cluster.conf

192.168.1.10为目标主机。

scp命令用于 *** 作系统之间(Linux之间或者linux与windows之间)复制文件和目录。 scp是 secure copy的缩写, scp是linux系统下基于ssh登陆进行安全的远程文件拷贝命令。 1、从本地复制到远程  A. 复制文件命令格式 (1)scp local_file remote_username@remote_ip:remote_folder  (2)scp local_file remote_username@remote_ip:remote_file  (3)scp local_file remote_ip:remote_folder  (4)scp local_file remote_ip:remote_file  说明: 第1,2个指定了用户名,命令执行后需要再输入密码,第1个仅指定了远程的目录,文件名字不变,第2个指定了文件名;第3,4个没有指定用户名,命令执行后需要输入用户名和密码,第3个仅指定了远程的目录,文件名字不变,第4个指定了文件名; B. 复制目录命令格式: (1)scp -r local_folder remote_username@remote_ip:remote_folder (2)scp -r local_folder remote_ip:remote_folder  说明: 第1个指定了用户名,命令执行后需要再输入密码; 第2个没有指定用户名,命令执行后需要输入用户名和密码; 2、从远程复制到本地从远程复制到本地,只要将从本地复制到远程的命令的后2个参数调换顺序即可。 应用实例: scp root@www.runoob.com:/home/root/others/music /home/space/music/1.mp3 scp -r www.runoob.com:/home/root/others/ /home/space/music/ 说明 (1)如果远程服务器防火墙有为scp命令设置了指定的端口,我们需要使用 -P 参数来设置命令的端口号,命令格式如下: #scp 命令使用端口号 4588 scp -P 4588 remote@www.runoob.com:/usr/local/sin.sh /home/administrator (2)使用scp命令要确保使用的用户具有可读取远程服务器相应文件的权限,否则scp命令是无法起作用的。 scp命令运行过程中,涉及到SSH。SSH或Secure Shell是一种安全通信协议,用于远程连接两个 *** 作系统,以便我们可以使用命令控制台从客户端计算机控制主机。关于SSH最重要的是它能够加密连接会话,这是FTP或Telnet无法实现的,更不安全的协议,并且已经很少使用。SSH还允许将数据安全地从主机复制到客户端,并且可以使用比普通用户的会话密钥更安全的RSA密钥,我们还可以通过隧道传输文件来获得更高的安全性。使用SSH,我们可以在内部网络和完全远程连接到配置为服务器的计算机。为此,我们必须打开TCP端口22,这是默认端口。 假设这里有两台机器A、B,B是安装在虚拟机里的debian系统,在B机器上可以使用ssh登录到A机器 但是在A上使用ssh命令登录B机器时提示错误: ssh: connect to host 192.168.28.160 port 22: Connection refused 原来ssh分为ssh-client和ssh-server两部分,B设备只安装了ssh-client而没有安装ssh-server才导致上述问题。 解决方法:在B机器上安装ssh-server,apt-get install ssh-server 然后在A上执行ssh root@192.168.28.160却提示了另外一个waring:   WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! 在网上搜了一下发现出现这个warning是因为对端重新的ssh服务出现变动所致。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7433709.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-05
下一篇 2023-04-05

发表评论

登录后才能评论

评论列表(0条)

保存