linux的scp的远程复制文件不能使用root

linux的scp的远程复制文件不能使用root,第1张

Linux scp 命令用于 Linux 之间复制文件和目录。

scp 是 secure copy 的缩写, scp 是 linux 系统下基于 ssh 登陆进行安全的远程文件拷贝命令。

scp 是加密的,rcp 是不加密的,scp 是 rcp 的加强版。

使用 SCP 意味着它享有与 SSH 相同级别的数据加密,因此被认为是跨两个远程主机传输文件的安全方式。

2、scp的基本语法

本地->远程

$ scp [option] /path/file user@server-ip:/path/directory

1

1

远程->本地

$ scp [option] user@server-ip:/path/file/ path/directory

1

1

/path/file – 要复制的文件名及路径。

user@server-IP: – 这是远程系统的用户名和 IP 地址。注意 IP 地址后面加冒号。

/path/directory – 保存的路径。

option常用选项:

-C - 这会在复制过程中压缩文件或目录。

-P - 如果默认 SSH 端口不是 22,则使用此选项指定 SSH 端口。注意大写

-r - 此选项递归复制目录及其内容。

-p - 保留文件的访问和修改时间。

3、将文件复制到远程 Linux 服务器

将文件 file.tar.gz复制到远程.

主机IP为192.168.43.137,用户名为root。

[root@server1 ~]# scp file.tar.gz [email protected]:/home/place

1

1

将文件夹目录 /home/filePath复制到远程,使用**-r**选项。

[root@server1 ~]# scp -r /home/filePath [email protected]:/home

1

1

4、将文件从远程系统复制到本地

将文件 file.tar.gz从远程复制到本地

[root@server1 ~]# scp [email protected]:/root/file.tar.gz /root/

1

1

将文件夹目录 /root/filePaht 从远程复制到本地, 使用**-r**标志

[root@server1 ~]# scp -r [email protected]:/root/filePaht /root/

1

1

有关使用 scp 命令的更多选项,可以查看手册,命令是:man scp

Linux SCP 命令是一种在两个远程节点之间传输文件的便捷且安全的方式,而无需担心攻击者窥探你的数据。

scp是 secure copy的缩写, scp是 linux 系统下基于ssh登陆进行安全的远程文件拷贝命令。 linux 的scp命令可以在linux 服务器 之间复制文件和目录.

scp命令基本格式:

scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file]

[-l limit] [-o ssh_option] [-P port] [-S program]

[[user@]host1:]file1 [...] [[user@]host2:]file2

scp命令的参数说明:

-1

强制scp命令使用协议ssh1

-2

强制scp命令使用协议ssh2

-4

强制scp命令只使用IPv4寻址

-6

强制scp命令只使用IPv6寻址

-B

使用批处理模式(传输过程中不询问传输口令或短语)

-C

允许压缩。(将-C标志传递给ssh,从而打开压缩功能)

-p 保留原文件的修改时间,访问时间和访问权限。

-q

不显示传输进度条。

-r

递归复制整个目录。

-v 详细方式显示输出。scp和ssh(1)会显示出整个过程的调试信息。这些信息用于调试连接,验证和配置问题。

-c cipher

以cipher将数据传输进行加密,这个选项将直接传递给ssh。

-F ssh_config

指定一个替代的ssh配置文件,此参数直接传递给ssh。

-i identity_file

从指定文件中读取传输时使用的密钥文件,此参数直接传递给ssh。

-l limit

限定用户所能使用的带宽,以Kbit/s为单位。

-o ssh_option

如果习惯于使用ssh_config(5)中的参数传递方式,

-P port 注意是大写的P, port是指定数据传输用到的端口号

-S program

指定加密传输时所使用的程序。此程序必须能够理解ssh(1)的选项

scp命令的实际应用

本地复制远程文件:(把远程的文件复制到本地)

scp [email protected]:/val/test/test.tar.gz /val/test/test.tar.gz

远程复制本地文件:(把本地的文件复制到远程主机上)

scp /val/test.tar.gz [email protected]:/val/test.tar.gz

本地复制远程目录:(把远程的目录复制到本地)

scp -r [email protected]:/val/test/ /val/test/

远程复制本地目录:(把本地的目录复制到远程主机上)

scp -r /val/ [email protected]:/val/

注:复制的是目录的话就要加-r参数

当同时有多个服务器的文件要复制到本地目录:

scp [email protected]:/var/cp1.tar.gz [email protected]:/var/cp2.tar.gz /var/tmp/

注意:最后面的一个必需是目录,前面的必须是文件,才能成功批量复制,复制中会提示多次输入密码。

scp就是security copy,用于将文件或者目录从一个Linux系统拷贝到另一个Linux系统下

scp传输数据用的是SSH协议,保证了数据传输的安全

其格式如下:scp 远程用户名@IP地址:文件的绝对路径 本地Linux系统路径 scp 本地Linux系统文件路径

远程用户名@IP地址:远程系统文件绝对路径名scp使用第一种格式是将远程Linux系统上的某个文件或者目录拷贝到本地Linux系统上来

使用第二种是将本地的某个文件或者目录拷贝到远程Linux系统的某个路径下

举例(1)目前我们处在IP为“192.168.60.133”的Linux系统下

计划将系统下的/home/ixdba/etc.tar.gz文件拷贝到IP为“192.168.60168”的远程Linux系统中root用户下的/tmp目录下:scp /home/ixdba/etc.tar.gz [email protected]:/tmp命令输入完毕

会要求输入“192.168.60.168”服务器root的密码,然后开始远程拷贝数据

如果我们处在“192.168.60.168”服务器上,也可以使用下面的命令传输数据:scp [email protected]:/home/ixdba/etc.tar.gz /tmp命令输入完毕,此时会要求输入“192.168.60.133”服务器root的密码,然后开始远程拷贝数据

(2)将本地/etc目录中所有的文件和子目录拷贝到IP为“192.168.60.135”的远程Linux系统的root用户下的/opt目录中:scp -r /etc [email protected]:/opt这里的选项“r”与cp命令的“r”选项含义相同


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

原文地址: https://outofmemory.cn/yw/7267193.html

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

发表评论

登录后才能评论

评论列表(0条)

保存