SCP 命令

本文介绍如何在局域网内的两台计算机之间通过SSH协议使用scp命令进行文件传输。文章详细展示了从命令行发起传输的过程,包括指定目标主机、验证连接及传输进度等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

两机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.gz    install.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 命令概述 SCP(Secure Copy Protocol)是一个基于 SSH 的文件传输工具,主要用于在本地和远程服务器之间复制文件。它提供了类似于 `cp` 命令的功能,但支持跨网络的安全数据传输[^3]。 核心命令语法如下: ```bash scp [选项] 源路径 目标路径 ``` #### 二、常用选项详解 以下是 SCP 命令的一些重要选项及其作用: - **`-r`**: 递归复制整个目录。 - **`-P`**: 指定目标主机的 SSH 端口号,默认为 22。 - **`-C`**: 启用压缩机制以加快大文件的传输速度。 - **`-q`**: 静默模式,不显示进度条或其他信息。 - **`-v`**: 显示详细的调试信息,便于诊断问题。 #### 三、典型应用场景 ##### 1. 将本地文件上传至远程服务器 假设需要将 `/home/user/localfile.txt` 文件上传到远程服务器的 `/var/www/html/` 目录下,可以执行以下命令: ```bash scp /home/user/localfile.txt user@remote_host:/var/www/html/ ``` 此处 `user@remote_host` 表示远程用户的登录名和主机地址。 ##### 2. 从远程服务器下载文件到本地 如果想把远程服务器上的某个文件拉取下来保存在当前目录中,则应这样操作: ```bash scp user@remote_host:/path/to/remotefile ./localdestination ``` ##### 3. 复制整个目录结构 为了拷贝一个名为 `mydir` 的完整文件夹到另一台机器上去,记得加上 `-r` 参数表示递归处理子项: ```bash scp -r /source/directory user@target_machine:/destination/folder ``` #### 四、高级特性与最佳实践 根据实际需求调整性能参数能显著提升效率。例如启用压缩功能减少带宽消耗特别适合大规模迁移作业时考虑加入 `-C` 开关[^2]: ```bash scp -Cr source_directory user@server:/backup/location ``` 另外值得注意的是,尽管默认情况下会继承系统的身份验证方式(如公钥交换),但如果遇到特殊情形仍可通过显式提供密钥材料来增强灵活性: ```bash scp -i ~/.ssh/id_rsa_custom private_key_file user@host:/some/path ``` #### 五、故障排除技巧 当面对各种异常状况不知所措之际,请参照下面列举出来的几类典型情况寻找对应措施[^4]: 1. 如果收到类似 “Permission denied (publickey,password)” 错误消息,确认已正确设置了 SSH 密码或者关联好了相应的私钥文件; 2. 当提示找不到指定的目标位置时候,仔细核对输入路径是否存在拼写失误以及是否有足够的读写权限; 3. 对于超时断开连接之类现象,适当延长 ServerAliveInterval 时间间隔值或许有所帮助。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值