1. sftp
Secure Ftp 是一个基于SSH安全协议的文件传输管理工具。由于它是基于SSH的,会在传输过程中对用户的密码、数据等敏感信息进行加密,因此可以有效的防止用户信息在传输的过程中被窃取,比FTP有更高的安全性。在功能方面与FTP很类似,不仅可以传输文件数据,而且可以进行远程的文件管理(如建立,删除,查看文件列表等操作)。Sftp与ftp虽然只有一字之差,但基于的传输协议却是不同的。因此不能用sftp client去连接ftp server 也不能用 ftp client 去连接 sftp server。
简单的命令如下:
建立连接:sftp user@host
从本地上传文件:put localpath
下载文件:get remotepath
切换远程目录:cd
显示远程工作目录:pwd
建立远程目录:mkdir
ps:
与远程相对应的本地操作,只需要在命令前加上”l” 即可,方便好记。
如:lcd lpwd lmkdir
详情命令:
sftp-- help
可用命令:
cd 路径 更改远程目录到“路径”
lcd 路径 更改本地目录到“路径”
chgrp group path 将文件“path”的组更改为“group”
chmod mode path 将文件“path”的权限更改为“mode”
chown owner path 将文件“path”的属主更改为“owner”
exit 退出 sftp
help 显示这个帮助文本
get 远程路径 下载文件
ln existingpath linkpath 符号链接远程文件
ls [选项] [路径] 显示远程目录列表
lls [选项] [路径] 显示本地目录列表
mkdir 路径 创建远程目录
lmkdir 路径 创建本地目录
mv oldpath newpath 移动远程文件
open [用户@]主机[:端口] 连接到远程主机
put 本地路径 上传文件
pwd 显示远程工作目录
lpwd 打印本地工作目录
quit 退出 sftp
rmdir 路径 移除远程目录
lrmdir 路径 移除本地目录
rm 路径 删除远程文件
lrm 路径 删除本地文件
symlink existingpath linkpath 符号链接远程文件
version 显示协议版本
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
建立连接:sftpuser@host
从本地上传文件:putlocalpath
下载文件:getremotepath
切换远程目录:cd
显示远程工作目录:pwd
建立远程目录:mkdir
ps:
与远程相对应的本地操作,只需要在命令前加上”l”即可,方便好记。
如:lcdlpwdlmkdir
详情命令:
sftp--help
可用命令:
cd路径更改远程目录到“路径”
lcd路径更改本地目录到“路径”
chgrpgrouppath将文件“path”的组更改为“group”
chmodmodepath将文件“path”的权限更改为“mode”
chownownerpath将文件“path”的属主更改为“owner”
exit退出sftp
help显示这个帮助文本
get远程路径下载文件
lnexistingpathlinkpath符号链接远程文件
ls[选项][路径]显示远程目录列表
lls[选项][路径]显示本地目录列表
mkdir路径创建远程目录
lmkdir路径创建本地目录
mvoldpathnewpath移动远程文件
open[用户@]主机[:端口]连接到远程主机
put本地路径上传文件
pwd显示远程工作目录
lpwd打印本地工作目录
quit退出sftp
rmdir路径移除远程目录
lrmdir路径移除本地目录
rm路径删除远程文件
lrm路径删除本地文件
symlinkexistingpathlinkpath符号链接远程文件
version显示协议版本
2. scp
SCP :secure copy (remote file copy program) 也是一个基于SSH安全协议的文件传输命令。与sftp不同的是,它只提供主机间的文件传输功能,没有文件管理的功能。
简单的命令如下:
2.1:复制local_file 到远程目录remote_folder下(复制文件):
scp local_file_path remote_user@host:remote_folder_path
scp /home/text.txt root@ip:/home/
1
2
3
scplocal_file_pathremote_user@host:remote_folder_path
scp/home/text.txtroot@ip:/home/
2.2:复制local_folder 到远程remote_folder(需要加参数 -r 递归)-->复制目录:
scp –r local_folder remote_user@host:remote_folder
scp -r -P12022 /home/ root@ip:/home/
1
2
3
scp–rlocal_folderremote_user@host:remote_folder
scp-r-P12022/home/root@ip:/home/
相反,从远程服务器复制文件到本地目录:
scp root@ip:/home/text.txt /homee/test/
1
scproot@ip:/home/text.txt/homee/test/
从远程服务器复制到本地:
scp -r root@ip:/opt/soft/mysql /opt/soft/
1
scp-rroot@ip:/opt/soft/mysql/opt/soft/
命令参数:
-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)的选项。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
-1强制scp命令使用协议ssh1
-2强制scp命令使用协议ssh2
-4强制scp命令只使用IPv4寻址
-6强制scp命令只使用IPv6寻址
-B使用批处理模式(传输过程中不询问传输口令或短语)
-C允许压缩。(将-C标志传递给ssh,从而打开压缩功能)
-p保留原文件的修改时间,访问时间和访问权限。
-q不显示传输进度条。
-r递归复制整个目录。
-v详细方式显示输出。scp和ssh(1)会显示出整个过程的调试信息。这些信息用于调试连接,验证和配置问题。
-ccipher以cipher将数据传输进行加密,这个选项将直接传递给ssh。
-Fssh_config指定一个替代的ssh配置文件,此参数直接传递给ssh。
-iidentity_file从指定文件中读取传输时使用的密钥文件,此参数直接传递给ssh。
-llimit限定用户所能使用的带宽,以Kbit/s为单位。
-ossh_option如果习惯于使用ssh_config(5)中的参数传递方式,
-Pport注意是大写的P,port是指定数据传输用到的端口号
-Sprogram指定加密传输时所使用的程序。此程序必须能够理解ssh(1)的选项。
scp sftp区别
SCP比较简单,是轻量级的,SFTP的功能则比较多
SFTP在文件传输过程中中断的话,连接后还可以继续传输,但SCP不行
sz rz
sz/rz 是基于ZModem传输协议的命令。对传输的数据会进行核查,并且有很好的传输性能。使用起来更是非常方便,但前提是window端需要有能够支持ZModem的telnet或者SSH客户端,例如xshell/secureCRT。
基本命令:
sz filename:从服务器下载文件至本地
rz:从本地上传文件至服务器
ps:
sz **** 命令,保存文件****到windows
rz 命令,会弹出窗口,选择要上传的文件
下载数据到本地下载目录:sz filename_path1 filename_path2
上传数据到远程:执行rz –be 命令,客户端会弹出上传窗口,用户自行选择(可多选)要上传的文件即可。
1
2
3
4
5
6
7
8
9
szfilename:从服务器下载文件至本地
rz:从本地上传文件至服务器
ps:
sz ****命令,保存文件****到windows
rz命令,会弹出窗口,选择要上传的文件
下载数据到本地下载目录:szfilename_path1filename_path2
上传数据到远程:执行rz–be命令,客户端会弹出上传窗口,用户自行选择(可多选)要上传的文件即可。
检查是否存在lrzsz包:
[root@linux_glj_test testuser]# rpm -qa | grep lrzsz
lrzsz-0.12.20-36.el7.x86_64
1
2
[root@linux_glj_testtestuser]# rpm -qa | grep lrzsz
lrzsz-0.12.20-36.el7.x86_64
如不存在则使用yum安装:
yum install lrzsz
1
yuminstalllrzsz