如何在 Linux 和 Windows 之間共享文件?

如何在 Linux 和 Windows 之間共享文件?

編譯自: https://www.networkworld.com/article/3269189/linux/sharing-files-between-linux-and-windows.html

作者: Sandra Henry-stocker

用一些來自 Linux 社區的工具,在 Linux 和 Windows 之間共享文件是超容易的。讓我們看看可以做這件事的兩種不同方法。

現代很多人都在混合網絡上工作,Linux 和 Windows 系統都扮演著重要的結束。在兩者之間共享文件有時是非常關鍵的,並且使用正確的工具非常容易。只需很少的功夫,你就可以將文件從 Windows 複製到 Linux 或從 Linux 到 Windows。在這篇文章中,我們將討論配置 Linux 和 Windows 系統所需的東西,以允許你輕鬆地將文件從一個操作系統轉移到另一個。

在 Linux 和 Windows 之間複製文件

在 Windows 和 Linux 之間移動文件的第一步是下載並安裝諸如 PuTTY 的 pscp 之類的工具。你可以從 putty.org 獲得它(LCTT 譯註:切記從官方網站下載,並最好對比其 md5/sha1 指紋),並輕鬆將其設置在 Windows 系統上。PuTTY 帶有一個終端仿真器(putty)以及像 pscp 這樣的工具,用於在 Linux 和 Windows 系統之間安全地複製文件。當你進入 PuTTY 站點時,你可以選擇安裝所有工具,或選擇安裝你想要的工具,也可以選擇單個 .exe 文件。

你還需要在你的 Linux 系統上設置並運行 ssh 服務器。這允許它支持客戶端(Windows 端)連接請求。如果你還沒有安裝 ssh 服務器,那麼以下步驟可以在 Debian 系統上運行(包括 Ubuntu 等):

sudo apt update

sudo apt install ssh-server

sudo service ssh start

對於 Red Hat 及其相關的 Linux 系統,使用類似的命令:

sudo yum install openssh-server

sudo systemctl start sshd

注意,如果你正在運行防火牆(例如 ufw),則可能需要打開 22 端口以允許連接。

使用 pscp 命令,你可以將文件從 Windows 移到 Linux,反之亦然。它的 “copy from to” 命令的語法非常簡單。

從 Windows 到 Linux

在下面顯示的命令中,我們將 Windows 系統上用戶賬戶中的文件複製到 Linux 系統下的 /tmp 目錄。

C:\Program Files\PuTTY>pscp \Users\shs\copy_me.txt [email protected]:/tmp

[email protected]'s password:

copy_me.txt | 0 kB | 0.1 kB/s | ETA: 00:00:00 | 100%

從 Linux 到 Windows

將文件從 Linux 轉移到 Windows 也同樣簡單。只要顛倒參數即可。

C:\Program Files\PuTTY>pscp [email protected]:/tmp/copy_me.txt \Users\shs

[email protected]'s password:

copy_me.txt | 0 kB | 0.1 kB/s | ETA: 00:00:00 | 100%

如果 1) pscp 位於 Windows 搜索路徑中,並且 2) 你的 Linux 系統在 Windows 的 hosts 文件中,則該過程可以變得更加順暢和輕鬆。

Windows 搜索路徑

如果你使用 PuTTY 安裝程序安裝 PuTTY 工具,你可能會發現 C:\Program files\PuTTY 位於 Windows 搜索路徑中。你可以通過在 Windows 命令提示符下鍵入 echo %path% 來檢查是否屬於這種情況(在搜索欄中鍵入 cmd 來打開命令提示符)。如果是這樣,你不需要關心文件系統中相對於 pscp 可執行文件的位置。進入到包含你想要移動文件的文件夾可能會更容易。

C:\Users\shs>pscp copy_me.txt [email protected]:/tmp

[email protected]'s password:

copy_me.txt | 0 kB | 0.1 kB/s | ETA: 00:00:00 | 100%

更新你的 Windows 的 hosts 文件

這是另一個小修補。使用管理員權限,你可以將 Linux 系統添加到 Windows 的 hosts 文件中(C:\Windows\System32\drivers\etc\hosts),然後使用其主機名代替其 IP 地址。請記住,如果你的 Linux 系統的 IP 地址是動態分配的,那麼它不會一直髮揮作用。

C:\Users\shs>pscp copy_me.txt shs@stinkbug:/tmp

[email protected]'s password:

hosts | 0 kB | 0.8 kB/s | ETA: 00:00:00 | 100%

請注意,Windows 的 hosts 文件與 Linux 系統上的 /etc/hosts 文件格式相同 -- IP 地址、空格、主機名。註釋以 # 符號來表示的。

# Linux systems

192.168.0.18 stinkbug

討厭的行結尾符

請記住,Windows 上文本文件中的行以回車符和換行符結束。pscp 工具不會刪除回車符,以使文件看起來像 Linux 文本文件。相反,它只是完整地複製文件。你可以考慮安裝 tofrodos 包,這使你能夠在 Linux 系統上使用 fromdos 和 todos 命令來調整在平臺之間移動的文件。

在 Windows 和 Linux 之間共享文件夾

共享文件夾是完全不同的操作。你最終將 Windows 文件夾掛載到你的 Linux 系統或將 Linux 文件夾掛載到 Windows 文件夾中,以便兩個系統可以使用同一組文件,而不是將文件從一個系統複製到另一個系統。最好的工具之一就是 Samba,它模擬 Windows 協議並在 Linux 系統上運行。

一旦安裝了 Samba,你將能夠將 Linux 文件夾掛載到 Windows 上或將 Windows 文件夾掛載到 Linux 上。當然,這與本文前面描述的複製文件有很大的不同。相反,這兩個系統中的每一個都可以同時訪問相同的文件。

關於選擇在 Linux 和 Windows 系統之間共享文件的正確工具的更多提示可以在 這裡 找到。


via: https://www.networkworld.com/article/3269189/linux/sharing-files-between-linux-and-windows.html

作者: Sandra Henry-Stocker 選題: lujun9972 譯者: MjSeven 校對: wxy

本文由 LCTT 原創編譯, Linux中國 榮譽推出


分享到:


相關文章: