如何像 Linux 專家那樣使用 WSL
在之前的教程中,我們學習了如何在 Windows 10 上設置 WSL。你可以在 Windows 10 中使用 WSL 執行許多 Linux 命令。無論是基於 Linux 的系統還是 macOS,它們的許多系統管理任務都是在終端內部完成的。然而,Windows 10 缺乏這樣的功能。你想運行一個 cron 任務么?不行。你想 SSH 進入你的伺服器,然後 rsync
文件么?沒門。如何用強大的命令行工具管理本地文件,而不是使用緩慢和不可靠的 GUI 工具呢?
在本教程中,你將看到如何使用 WSL 執行除了管理之外的任務 —— 例如掛載 USB 驅動器和操作文件。你需要運行一個完全更新的 Windows 10 並選擇一個 Linux 發行版。我在上一篇文章中介紹了這些步驟,所以如果你跟上進度,那就從那裡開始。讓我們開始吧。
保持你的 Linux 系統更新
事實上,當你通過 WSL 運行 Ubuntu 或 openSUSE 時,其底層並沒有運行 Linux 內核。然而,你必須保持你的發行版完整更新,以保護你的系統免受任何新的已知漏洞的影響。由於在 Windows 應用商店中只有兩個免費的社區發行版,所以教程將只覆蓋以下兩個:openSUSE 和 Ubuntu。
更新你的 Ubuntu 系統:
# sudo apt-get update
# sudo apt-get dist-upgrade
運行 openSUSE 的更新:
# zypper up
您還可以使用 dup
命令將 openSUSE 升級到最新版本。但在運行系統升級之前,請使用上一個命令運行更新。
# zypper dup
注意: openSUSE 默認為 root 用戶。如果你想執行任何非管理員任務,請切換到非特權用戶。您可以這篇文章中了解如何在 openSUSE上 創建用戶。
管理本地文件
如果你想使用優秀的 Linux 命令行工具來管理本地文件,你可以使用 WSL 輕鬆完成此操作。不幸的是,WSL 還不支持像 lsblk
或 mount
這樣的東西來掛載本地驅動器。但是,你可以 cd
到 C 盤並管理文件:
/mnt/c/Users/swapnil/Music
我現在在 C 盤的 Music 目錄下。
要安裝其他驅動器、分區和外部 USB 驅動器,你需要創建一個掛載點,然後掛載該驅動器。
打開文件資源管理器並檢查該驅動器的掛載點。假設它在 Windows 中被掛載為 S:。
在 Ubuntu/openSUSE 終端中,為驅動器創建一個掛載點。
sudo mkdir /mnt/s
現在掛載驅動器:
mount -f drvfs S: /mnt/s
掛載完畢後,你現在可以從發行版訪問該驅動器。請記住,使用 WSL 方式運行的發行版將會看到 Windows 能看到的內容。因此,你無法掛載在 Windows 上無法原生掛載的 ext4 驅動器。
現在你可以在這裡使用所有這些神奇的 Linux 命令。想要將文件從一個文件夾複製或移動到另一個文件夾?只需運行 cp
或 mv
命令。
cp /source-folder/source-file.txt /destination-folder/
cp /music/classical/Beethoven/symphony-2.mp3 /plex-media/music/classical/
如果你想移動文件夾或大文件,我會推薦 rsync
而不是 cp
命令:
rsync -avzP /music/classical/Beethoven/symphonies/ /plex-media/music/classical/
耶!
想要在 Windows 驅動器中創建新目錄,只需使用 mkdir
命令。
想要在某個時間設置一個 cron 作業來自動執行任務嗎?繼續使用 crontab -e
創建一個 cron 作業。十分簡單。
你還可以在 Linux 中掛載網路/遠程文件夾,以便你可以使用更好的工具管理它們。我的所有驅動器都插在樹莓派或者伺服器上,因此我只需 ssh
進入該機器並管理硬碟。在本地計算機和遠程系統之間傳輸文件可以再次使用 rsync
命令完成。
WSL 現在已經不再是測試版了,它將繼續獲得更多新功能。我很興奮的兩個特性是 lsblk
命令和 dd
命令,它們允許我在 Windows 中本機管理我的驅動器並創建可引導的 Linux 驅動器。如果你是 Linux 命令行的新手,前一篇教程將幫助你開始使用一些最基本的命令。
via: https://www.linux.com/blog/learn/2018/2/how-use-wsl-linux-pro
作者:SWAPNIL BHARTIYA 譯者:geekpi 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive