每天一个linux命令1之scp

不同的Linux之间copy文件常用有3种方法:

   第一种就是ftp,也就是其中一台Linux安装ftpServer,这样可以另外一台使用ftp的client程序来进行文件的copy。

   第二种方法就是采用samba服务,类似Windows文件copy 的方式来操作,比较简洁方便。

   第三种就是利用scp命令来进行文件复制。scp是有security的文件copy,基于ssh登录

   有时我们需要获得远程服务器上的某个文件,该服务器既没有配置ftp服务器,也没有做共享,无法通过常规途径获得文件时,只需要通过简单的scp命令便可达到目的。

 

一、将本机文件复制到远程服务器上

把本地文件 news.txt 复制到192.168.6.129机器(用户名是root)的/etc/squid目录下

#scp /home/administrator/news.txtroot@192.168.6.129:/etc/squid

  /home/administrator/       本地文件的绝对路径

  news.txt                      要复制到服务器上的本地文件

  root                             通过root用户登录到远程服务器(也可以使用其他拥有同等权限的用户)

  192.168.6.129             远程服务器的ip地址(也可以使用域名或机器名)

  /etc/squid                     将本地文件复制到位于远程服务器上的路径

 

通过root用户登录远程服务器,输入yes表示同意建立ssh连接

  

提示输入root用户的密码

  

建立连接后开始传输文件,显示百分比、实际时间和传送速度等信息

   

 复制文件夹请使用 -r参数

二、将远程服务器上的文件复制到本机

#scp root@192.168.6.129:/usr/local/sin.sh/home/administrator

  root                           通过root用户登录到远程服务器

  192.168.6.129             远程服务器的ip

  /usr/local/sin.sh           欲复制到本机的位于远程服务器上的文件

  /home/administrator    将远程文件复制到本地的绝对路径

 

注意两点:

1.如果远程服务器防火墙有特殊限制,scp便要走特殊端口,具体用什么端口视情况而定,命令格式如下:

   #scp-p 4588 remote@www.abc.com:/usr/local/sin.sh /home/administrator

  可以使用的参数-

     -v 用来显示进度 . 可以用来查看连接 , 认证 , 或是配置错误 .

     -C 使能压缩选项 .

     -P 选择端口 . 注意 -p 已经被 rcp 使用 .

     -4 强行使用 IPV4 地址 .

     -6 强行使用 IPV6 地址 .

   -r 复制一个文件夹

2.使用scp要注意所使用的用户是否具有可读取远程服务器相应文件的权限。

 

posted @ 2017-06-08 01:06  edgedance  阅读(353)  评论(0编辑  收藏  举报