自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

通過 ssh 與遠程服務器之間傳輸文件的幾種方法

系統(tǒng) Linux
對于遠程服務器,你還需要知道其地址和系統(tǒng)訪問賬號。有了這個前提之后,我們再來詳細看一下這幾種方法。

我們經(jīng)常會有通過 ssh 向遠程服務器發(fā)送文件的時候,或者從遠程服務器拷貝文件到本地的時候。一般來講,在本地與遠程服務器之間傳輸文件常用的方式有如下 4 種:

1)scp:這個方法即將被棄用;

2)rsync:目前比較流行的用于文件傳輸?shù)拿睿?/span>

3)sshfs:通過 ssh 裝載遠程目錄;

4)sftp 客戶端:通過 sftp 訪問文件的桌面工具。

另外,對于遠程服務器,你還需要知道其地址和系統(tǒng)訪問賬號(用戶名、密碼)。有了這個前提之后,我們再來詳細看一下這幾種方法。

方法1:使用 scp 命令通過 ssh 復制文件

前面我們提到過,scp 即將被啟用,但是,它仍然受到很多人喜歡,因為它的語法類似于 cp 命令。下面我們看看如何使用 scp 命令。

將文件從遠程計算機復制到本地計算機

圖片

現(xiàn)在我們的任務是這樣:將文件從遠程服務器拷貝到本地已登錄的系統(tǒng)中。

這里有一個通用的語法,它將文件從遠程系統(tǒng)上用戶的主目錄復制到本地登錄系統(tǒng)的當前目錄。如下所示:

scp username@ip_address:/home/username/filename .

看到其與 cp 命令的相似之處了嗎?除了必須使用冒號 : 指定用戶名和 ip 地址之外,其他幾乎是一樣的。

圖片

在上面的例子中,我將文件 remote.txt 從遠程服務器的 /home/abhishek/my_file 目錄拷貝到本地計算機的當前目錄中。

使用這個命令,你需要知道文件在遠程服務器中的完整路徑,tab 鍵補全路徑,對于遠程系統(tǒng)來說是不起作用的。

將本地文件拷貝到遠程服務器中

圖片

下面我們來看另外一個例子,使用 scp 通過 ssh 將本地的文件發(fā)送到遠程服務器。其語法如下:

scp filename username@ip_address:/home/username

圖片

在上面的例子中,我將位于當前目錄中的本地文件 local.txt 復制到了遠程系統(tǒng)中的 abhishek 用戶主目錄下。然后使用該用戶登錄了遠程系統(tǒng),以驗證文件是否被成功拷貝過去。

也可以拷貝目錄

我們在前文中提到過,scp 的語法與 cp 命令類似。所以,使用 scp 也可以拷貝目錄,方法是使用 -r 選項。如下為將本地目錄拷貝到遠程系統(tǒng)中的語法:

scp -r source_dir username@ip_address:/home/username/target_dir

方法2:使用 rsync 通過 ssh 復制文件和目錄

由于 scp 即將被棄用,rsync 是下一個通過 ssh 在遠程系統(tǒng)之間復制文件的最佳工具。實際上,它在很多方面都優(yōu)于 scp。

其命令語法與 scp 相同。舊版本的 rsync 必須使用  rsync -e ssh,但是現(xiàn)在已經(jīng)不需要了。

將遠程文件復制到本地計算機

假如我們要將遠程系統(tǒng)中的文件復制到當前已經(jīng)登錄到的系統(tǒng)中的當前目錄中,其語法結構為:

rsync username@ip_address:/home/username/filename .

參考方法1 中的例子,我們將拷貝 remote.txt 到本地系統(tǒng)當前目錄,如下圖所示:

圖片

將文件從本地計算機拷貝到遠程系統(tǒng)

將文件從本地拷貝到遠程系統(tǒng)中相應目錄中,語法結構如下:

rsync filename username@ip_address:/home/username

依然參考方法1 中的例子,我們將 local.txt 拷貝到遠程系統(tǒng),如下圖所示:

圖片

那么,怎樣復制目錄呢?

要復制目錄,與 scp 一樣,使用 -r 選項:

rsync -r source_dir username@ip_address:/home/username/target_dir

看下面的例子,我復制遠程系統(tǒng)中的目錄  my_file 到本地系統(tǒng)中:

圖片


rsync是一種通用工具。它本質(zhì)上是一個在兩個目錄之間“遞歸同步”內(nèi)容的工具,在進行自動備份時很受歡迎。

方法3:使用 SSHFS 訪問遠程系統(tǒng)中的文件

SSHFS(SSH文件系統(tǒng))可用于訪問遠程文件和目錄。但是,這對于復制文件來說不是很方便。

這種方法,我們可以在本地系統(tǒng)上加載遠程目錄,然后就可以在這個目錄和本地系統(tǒng)之間復制文件。這相當于 windows 系統(tǒng)中的遠程桌面的概念。

sshfs 在使用之前需要先安裝,在 Debian 或者 Ubuntu 中,可以使用如下命令:

sudo apt install sshfs

安裝完成之后,就可以使用 sshfs 了。一個好的習慣是為其專門創(chuàng)建一個目錄:

mkdir mount_dir

然后使用如下方式在遠程計算機上,加載此目錄:

sshfs username@IP_address:path_to_dir mount_dir

加載完成后,就可以將文件復制到這個目錄中,或者在這個目錄中復制文件到其他目錄,就想它在本地計算機中一樣。

cp local_file mount_dir

需要注意的是,裝載此目錄進行工作,工作完成后,還需要卸載它:

umount mount_dir

下圖中的例子,我在本地計算機中新建了一個目錄 remote_dir,然后將遠程系統(tǒng)中的 my_file 目錄裝載到本地的 remote_dir 目錄中,然后將 remote.txt 文件復制到本地系統(tǒng),最后卸載該目錄:

圖片

方法4:使用基于 GUI 的 SFTP 客戶端在遠程系統(tǒng)之間傳輸文件

最后一個我們將要介紹的方法,是可以使用 FTP 客戶端在遠程和本地系統(tǒng)之間傳輸文件。

FileZilla 是最流行的跨平臺FTP客戶端之一,安裝和使用都很方便。

安裝完成后,找到 File -> Site Manager(文件->站點管理器),添加遠程系統(tǒng)詳細信息,如 IP 地址、SSH 端口號、用戶名和密碼等。如下圖所示:

圖片

連接成功后,窗口會分為左右兩個部分,左邊為本地文件系統(tǒng),右側顯示遠程文件系統(tǒng):

圖片

拷貝文件的方式也很簡單,直接從左邊向右邊拖拽文件,即可將本地文件復制到遠程系統(tǒng)中;反過來,從右側拖拽文件到左側,即復制遠程系統(tǒng)中的文件到本地計算機。復制過程中,在窗口底部會顯示進度條。

責任編輯:龐桂玉 來源: TIAP
相關推薦

2019-02-20 08:53:59

SFTPLinux服務器

2017-03-03 09:19:53

SSH命令服務器

2023-02-21 10:07:23

2009-09-18 12:29:55

2024-11-11 14:43:11

2022-07-06 08:33:15

服務器安全SSH

2024-10-14 14:34:11

2010-03-10 11:31:31

2021-09-29 11:46:05

遠程服務器VSCode

2014-08-22 15:50:52

WindowsLinux

2018-11-08 09:56:28

服務器移動硬盤

2020-01-10 16:23:44

Springboot停止服務Java

2018-09-29 11:02:52

WindowsLinux互訪

2010-09-08 15:14:36

2018-06-29 09:20:13

2019-07-03 14:26:10

Linux服務器方法

2021-03-08 09:32:04

Python文件命令

2023-07-06 17:00:44

服務器

2010-01-13 14:45:25

CentOS配置

2016-09-13 21:43:50

點贊
收藏

51CTO技術棧公眾號