scp是linux下的远程拷贝

命令:

(1)将本地文件拷贝到远程:scp  文件名 用户名@计算机IP或者计算机名称:远程路径 
(2)从远程将文件拷回本地:scp  用户名@计算机IP或者计算机名称:文件名本地路径


(3)将本地目录拷贝到远程:scp -r目录名   用户名@计算机IP或者计算机名称:远程路径
(4)从远程将目录拷回本地:scp-r   用户名@计算机IP或者计算机名称:目录名本地路径

 

使用scp命令需要服务端linux提供ssh服务(linux默认是没有安装ssh服务的)

1.是否安装ssh:ps -ef | grep "ssh"   如果为空就是没有

2.安装ssh服务:sudo apt-get install ssh自动安装ssh服务。

3.启动:sudo /etc/init.d/sshstart

4.停止:sudo /etc/init.d/sshstop

5.配置:ssh默认的端口是22,可以修改配置文件更改端口,然后重启ssh服务即可。(注:配置文件/etc/ssh/sshd_config)

实际安装中出现的问题:

 

ssh localhost的时候遇到:

ubuntu@VM-0-15-ubuntu:~/taoge/hadoop_begin/hadoop-2.7.5$ ssh localhost
The authenticity of host 'localhost (127.0.0.1)' can't be established.

     怎么办?

ubuntu@VM-0-15-ubuntu:~/.ssh$ chmod 777 /etc/ssh/ssh_config

    然后在这个文件的最后两行加上:

    StrictHostKeyChecking no
    UserKnownHostsFile /dev/null

    如下:

ubuntu@VM-0-15-ubuntu:~$ tail /etc/ssh/ssh_config
#   PermitLocalCommand no
#   VisualHostKey no
#   ProxyCommand ssh -q -W %h:%p gateway.example.com
#   RekeyLimit 1G 1h
    SendEnv LANG LC_*
    HashKnownHosts yes
    GSSAPIAuthentication yes
    GSSAPIDelegateCredentials no
    StrictHostKeyChecking no
    UserKnownHostsFile /dev/null
ubuntu@VM-0-15-ubuntu:~$ 

    于是乎:

ubuntu@VM-0-15-ubuntu:~$ ssh localhost
Warning: Permanently added 'localhost' (ECDSA) to the list of known hosts.

    搞定。 后面的问题一路顺畅。

然后测试:

$ssh username@192.168.0.1

可以正常ssh登录

举例

1、将本地文件复制到目标服务器

scp /home/bill/jay.mp3 root@10.214.127.53:/home/jack/

2、将服务器文件复制到本地电脑

scp root@10.214.127.53:/home/jack/jay.mp3 /home/bill/

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

将 文件/文件夹 从远程 Ubuntu 机拷至      ------->     本地(scp)

scp -r username@192.168.0.1:/home/username/remotefile.txt .

将 文件/文件夹 从本地    ------>       拷至远程 Ubuntu 机(scp)

scp -r localfile.txt username@192.168.0.1:/home/username/

 

 

Logo

更多推荐