如何在 Linux 中使用 sFTP 上传或下载文件与文件夹
创始人
2024-03-01 18:57:28
0

sFTP(安全文件传输程序)是一种安全的交互式文件传输程序,其工作方式与 FTP(文件传输协议)类似。 然而,sFTP 比 FTP 更安全;它通过加密 SSH 传输处理所有操作。

它可以配置使用几个有用的 SSH 功能,如公钥认证和压缩。 它连接并登录到指定的远程机器,然后切换到交互式命令模式,在该模式下用户可以执行各种命令。

在本文中,我们将向你展示如何使用 sFTP 上传/下载整个目录(包括其子目录和子文件)。

如何在 Linux 中使用 sFTP 传输文件/文件夹

默认情况下,SFTP 协议采用和 SSH 传输协议一样的方式建立到远程服务器的安全连接。虽然,用户验证使用类似于 SSH 默认设置的密码方式,但是,建议创建和使用 SSH 无密码登录,以简化和更安全地连接到远程主机。

要连接到远程 sftp 服务器,如下建立一个安全 SSH 连接并创建 SFTP 会话:

$ sftp tecmint@192.168.56.10

登录到远程主机后,你可以如下运行交互式的 sFTP 命令:

sftp> ls            #list directory 
sftp> pwd           #print working directory on remote host
sftp> lpwd          #print working directory on local host
sftp> mkdir uploads     #create a new directory

Run sFTP Commands on Remote Linux

  • Linux 主机上运行 sFTP 命令*

如何使用 sFTP 上传文件夹

要将整个目录上传到远程 Linux 主机中,请使用 put 命令。但是,如果目录名称不存在于远程主机上的工作目录中,你将收到错误,如下面的屏幕截图所示。

因此,首先在远程主机上创建一个具有相同名称的目录,然后从本地主机上传它,-r 参数允许拷贝子目录和子文件:

sftp> put -r  Tecmint.com-articles
sftp> mkdir Tecmint.com-articles
sftp> put -r Tecmint.com-articles

Upload Directory using SFTP

使用 sFTP 上传文件夹

要保留修改时间、访问时间以及被传输的文件的模式,请使用 -p 标志。

sftp> put -pr Tecmint.com-articles

如何使用 sFTP 下载文件夹

要从远程 Linux 主机下载整个 fstools-0.0 文件夹到本机中,如下所示使用 get 命令带上 -r 标志:

sftp> get -r fstools-0.0

Download Directory using sFTP

使用 sFTP 下载目录

如果文件夹已经下载完成了,接着查看本机的工作目录。

要退出 sFTP shell,输入:

sftp> bye
或者
sftp> exit

此外,阅读这篇 sFTP 命令和使用技巧

请注意,为了防止用户访问远程主机上的整个文件系统,出于安全原因,你可以使用 chroot Jail 将 sFTP 用户限制到其主目录中。

就是这样了!在本文中,我们向你展示了如何使用 sFTP 上传/下载整个目录。使用下面的评论栏向我们提供你对本文/主题的看法。


作者简介:

Aaron Kili 是 Linux 和 F.O.S.S 爱好者,将来的 Linux 系统管理员和网络开发人员,目前是 TecMint 的内容创作者,他喜欢用电脑工作,并坚信分享知识。


via: http://www.tecmint.com/sftp-upload-download-directory-in-linux/

作者:Aaron Kili 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

相关内容

【正点原子FPGA连载】 ...
第三十三章基于lwip的tftp server实验 文件传输是网络...
2025-05-29 05:46:50
在CentOS系统上部署F...
CentOS FTP服务安装与配置指南 在CentOS系统中搭建F...
2025-05-04 07:17:18
CentOS FTP上传故...
排查与解决CentOS服务器FTP上传失败的常见问题 在使用Cen...
2025-04-18 07:44:43
如何在CentOS系统上创...
3、设置用户权限 权限这个东西可重要啦,就像家里的各个房间,有些房...
2025-02-27 10:49:00
如何在CentOS系统上安...
1、启动 vsftpd 服务 安装好了 FTP 客户端,还得启动服...
2025-02-21 17:46:00
Byethost网络服务无...
以下是一个使用Python的示例代码,可以用来解决Byethost...
2025-01-12 20:02:15

热门资讯

PHP最佳实践(译) 简介PHP是一门复杂的语言,经过多年折腾,使其不同版本之间高度不一致,有时还有些bug。 每个版本都...
值得收藏的 27 个机器学习的... 机器学习 ( Machine Learning ) 有很多方面,当我开始研究学习它时,我发现了各种各...
为什么计量 IT 的生产力如此... 在某些行业里,人们可以根据一些测量标准判定一个人的生产力。比如,如果你是一个零件制造商,可以通过一个...
8个有趣的Linux提示与技巧... 我们时不时给你带来关于Linux的提示与技巧。和这个系列保持一致,这里有8个我们从读者收到最有趣的提...
8 个提升你的隐私防护的开源密... 使用一些顶级开源密码管理器,确保你的登录凭证安全无虞。密码管理器是一项非常有用的实用程序。在你想寻找...
硬核观察 #885 苹果 AR... 苹果 AR 眼镜被无限期推迟据报道,由于技术上的挑战,苹果公司已经无限期推迟了其轻型增强现实(AR)...
Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
2020 年的 GitHub ... 距离 2020 年结束只剩下区区 24 天,我们即将结束魔幻的 2020 ,迎来新的一年,新的一年或...
开源新闻速递:openSUSE... 今日关注openSUSE 项目组的 Dominique Leuenberger 在他的周报中说:“这...
KDE4.11 Beta1 正...   KDE 项目工作组刚刚发布了 KDE Software Compilation 4.11 Bet...