Linux中國

通過微軟的 WSL2 使用 Fedora 33

如果你像我一樣,你可能會發現自己因為各種原因而運行 Windows,無論是因為工作還是遊戲。當然,你可以在虛擬機或容器中運行 Fedora,但這些並不像 Windows 的 Linux 子系統(WSL)那樣容易融合到普通的 Windows 體驗中。通過 WSL 使用 Fedora 可以讓你將這兩種環境融合在一起,創造一個奇妙的開發環境。

先決條件

為了達成這一目標,你需要一些基本條件。你應該運行 Windows 10,並且已經安裝了 WSL2。如果沒有,請查看微軟文檔說明,完成後再回來這裡。微軟建議為了簡單起見,將 WSL2 設置為發行版的默認設置。本指南假設你已經這樣做了。

接下來,你將需要一些解壓 xz 壓縮文件的方法。你可以用另一個基於 WSL 的發行版來解壓,或者使用 7zip

下載 Fedora 33 rootfs

由於 Fedora 並沒有提供實際的 rootfs 存檔,所以我們將借用一個用於生成 Dockerhub 容器鏡像的存檔。你需要從 fedora-cloud 的 GitHub 倉庫下載該 tar.xz 文件 。一旦你有了這個 tar.xz 文件,解壓它,但不要展開 tar 包。你會得到一個類似 fedora-33-時間標籤.tar 的文件。有了這個文件,你就可以構建鏡像了。

組合 WSL Fedora 的構建版本

我喜歡使用 c:distros 目錄,但你可以選擇幾乎任何你想要的位置。無論你選擇什麼目錄,在你導入該構建版本之前,確保其頂層路徑存在。現在打開一個 CMD 或 Powershell 提示符,因為是時候導入了:

wsl.exe --import Fedora-33 c:distrosFedora-33 $HOMEDownloadsfedora-33.tar

你會看到 Fedora-33 顯示在 WSL 的列表當中:

PS C:Usersjperrin> wsl.exe -l -v
  NAME                   STATE           VERSION
  Fedora-33                 Stopped         2

下面,你就可以開始在 WSL 中擺弄 Fedora 了,但我們還需要做一些事情來使它真正成為一個有用的 WSL 發行版。

wsl -d Fedora-33

這將以 root 用戶的身份啟動 Fedora 的 WSL 實例。下面,你將安裝一些核心包並設置一個新的默認用戶。你還需要配置 sudo,否則你將無法在以後需要安裝其他東西時輕鬆提升許可權。

dnf update
dnf install wget curl sudo ncurses dnf-plugins-core dnf-utils passwd findutils

wslutilites 使用 curlwget 來實現與 VS Code 的集成,所以它們很有用。由於你需要使用 COPR 倉庫,你需要增加 dnf 功能。

添加你的用戶

現在是時候添加你的用戶,並將其設置為默認用戶。

useradd -G wheel 用戶名
passwd 用戶名

現在,你已經創建了你的用戶名,並添加了密碼,確保它們可以工作。退出 WSL 實例,並再次啟動它,這次指定用戶名。你還要測試 sudo,並檢查你的 uid。

wsl -d Fedora-33 -u 用戶名
$id -u
1000
$ sudo cat /etc/shadow

假設一切正常,你現在已經準備好在 Windows 中為你的 Fedora 環境設置默認用戶。要做到這一點,請退出 WSL 實例並回到 Powershell 中。這個 Powershell 單行代碼可以正確配置你的用戶:

Get-ItemProperty Registry::HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionLxss\* DistributionName | Where-Object -Property DistributionName -eq Fedora-33  | Set-ItemProperty -Name DefaultUid -Value 1000

現在你應該可以再次啟動 WSL,而不需要指定就可以成為自己的用戶而不是 root。

自定義!

至此,你已經有了可以在 WSL 中運行的基本 Fedora 33 環境,但它還沒有 Windows 集成的部分。如果你想要這個,有一個 COPR 倉庫可以啟用。如果你選擇添加這部分,你就可以直接在 shell 裡面運行 Windows 應用,也可以輕鬆地將你的 Linux 環境與 VS Code 集成。需要注意的是,COPR 並沒有得到 Fedora 基礎架構的官方支持。使用該軟體包,風險自擔。

dnf copr enable trustywolf/wslu

現在你可以去配置終端、設置一個 Python 開發環境,或者其它你想使用 Fedora 33 的方式。享受吧!

via: https://fedoramagazine.org/wsl-fedora-33/

作者:Jim Perrin 選題:lujun9972 譯者:wxy 校對:wxy

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


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的郵箱地址不會被公開。 必填項已用 * 標註

    這個站點使用 Akismet 來減少垃圾評論。了解你的評論數據如何被處理

    More in:Linux中國

    Linux中國

    關於Linux防火牆iptables的面試問答

    Nishita Agarwal是Tecmint的用戶,她將分享關於她剛剛經歷的一家公司(印度的一家私人公司Pune)的面試經驗。在面試中她被問及許多不同的問題,但她是iptables方面的專家,因此她想分享這些關於iptables的問題和相應的答案給那些以後可能會進行相關面試的人。 所有的問題和相應的答案都基於Nishita Agarwal的記憶並經過了重寫。 嗨,朋友!我叫Nishita Agarwal。我已經取得了理學學士學位,我的專業集中在UNIX和它的變種(BSD,Linux)。它們一直深深的吸引著我。我在存儲方面有1年多的經驗。我正在尋求職業上的變化,並將供職於印度的P
    Linux中國

    Lets Encrypt 已被所有主流瀏覽器所信任

    旨在讓每個網站都能使用 HTTPS 加密的非贏利組織 Lets Encrypt 已經得了 IdenTrust的交叉簽名,這意味著其證書現在已經可以被所有主流的瀏覽器所信任。從這個裡程碑事件開始,訪問者訪問使用了Lets Encrypt 證書的網站不再需要特別配置就可以得到 HTTPS 安全保護了。 Lets Encrypt 的兩個中級證書 ...
    Linux中國

    SSL/TLS 加密新紀元 – Lets Encrypt

    根據 Let's Encrypt 官方博客消息,Let's Encrypt 服務將在下周(11 月 16 日)正式對外開放。 Let's Encrypt 項目是由互聯網安全研究小組(ISRG,Internet Security Research Group)主導並開發的一個新型數字證書認證機構(CA,Certificate ...