OS實踐-1: Windows 11 配置 WSL


很早就收到 Windows 11 的推送,但一直在觀望,最近終於更新了。可惜的是我筆記本是 Win10 家庭版,升級 Win 11 之后仍是家庭版,導致我開啟 Hyper-V 還要另外折騰一番 ;-( 

一、安裝 WSL

在 Microsoft Store 搜索 Ubuntu,選 18.0/20.0 都可以,我這里選最新的了

 

 

下載完后打開,會見到以下頁面。主要關注這幾行,輸入用戶名(是普通用戶不是 root)和密碼就行
 

 

之后上面這個窗口便可以關閉,我們可以去 Visual Code 配置 WSL了

二、在 Visual Code 配置 WSL

打開 Visual Code,按下 Ctrl J,選擇 Terminal,選擇剛才安裝的 Ubuntu

 

 

我先改改 root 用戶的密碼,因為默認密碼是什么我也不知道

 

 

此時可以先為 Ubuntu 更換包管理器的源為國內,效果是加快諸如  apt-get install  的下載速度,參考鏈接

 

(以下步驟是可選項:安裝 zsh ——一個能更改命令符主題的軟件,當然還有其他功能,而且這里我直接使用 oh-my-zsh 的配置)

先安裝 zsh,再配置 oh-my-zsh。查看 zsh 版本發現不存在,故先安裝zsh

 

 

接下來配置 oh-my-zsh 需要用到 git,還好 Ubuntu 20.x 自帶 git

另外, git clone 速度慢的甚至連接失敗的可以參考 linux 公社這篇解決方案

 

 

這里手工安裝oh-my-zsh,照着官方鏈接一步步敲命令即可(我這里跳過了第二步備份),過程就不演示了,按着來就行

值得一提的是第四步我使用   chsh -s $(which zsh)  回車后沒效果(需要重啟終端 Terminals)

 

 

點亮 zsh 效果如下

 

 

接下來配置oh-my-zsh主題和插件,參考官方鏈接選主題

一旦選好主題就修改配置,我這里自己魔改一個主題

 

 

 

我在官方 ”bira“ 主題基礎上稍微修改下

 

 

然后用  source ~/.zshrc 命令更新zsh

 

 

魔改主題,”bira”的配置在  ~/.oh-my-zsh/themes/ 

 

 

找到”PROMPT=”開頭的行,我想用顏文字做一個這樣的 prompt,配置地址。(最后配置完要  source ~/.zhsrc 

 

 

最后效果如下

 

 

zsh 還有其他可玩的地方,比如插件,我這里也配置幾個常用插件(wd、zsh-syntax-highlighting、zsh-autosuggestions)

第一步是安裝,只有wd是內置的,所以需要安裝后兩個 git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ~/.oh-my-zsh/plugins/zsh-syntax-highlighting  以及  git clone https://github.com/zsh-users/zsh-autosuggestions ~/.oh-my-zsh/plugins/zsh-autosuggestions 

 

 

修改配置,輸入  vi ~/.zshrc ,找到  plugins=(git)  打頭的這行

 

 

別忘了  source ~/.zshrc ,效果如下

 

 

(以上為安裝和配置 zsh,非必需)

三、部署開發環境

查看版本發現缺少 gcc 和 g++

 

 

敲以下三條命令直接安裝所有GNU開發組件(需要root權限)

apt-get install build-essential gdb       //GNU開發組件和gdb

apt-get install gcc-multilib              //64位機器的32位支持(后面是進行32位OS學習所以裝32位支持)

之后安裝 bochs

 

 

由於Bochs的啟動需要X-Display(一種GUI)支持,安裝Xming用以在Windows直接運行Bochs(相關知識點網上搜 ” WSL 啟動 Xserver ”),因此現在安裝Xming(隨便一個 X-Server 軟件即可,這里用 Xming )

 

 

之后全部默認即可,安裝完成后啟動 Xming(需要注意的是有兩個 Xming,其實用哪個都行,只不過要先設置顯存頁面,所以先啟動帶 Launch 的)

 

 

第一次啟動是這樣的, 直接默認下一步即可,值得一提是顯存分頁貌似是 0-7 都可以,只是你要記住你選了哪一頁,以后啟動 X-GUI 時需要顯式寫上這一頁(不顯式啟動 X-Server 也可以,但要修改配置,后文會談及)

 

 

 

 

然后看看任務欄有無圖標,有就成功了

 

 

注意,要使用 X11,需要先在 WSL 中設置 SSH(以下 WSL GUI 設置參考文章

# 刪除默認 ssh
sudo apt-get remove --purge openssh-server

# 更新一下
sudo apt-get update
sudo apt-get upgrade -y

# 安裝 SSH
sudo apt-get install -y openssh-server

然后修改 ssh 的配置文件,文件是 /etc/ssh/sshd_config 

 

 

找到  X11Forwarding  打頭的行,作出以下修改

 

 

最后,開啟 OpenSSH 服務, service ssh start 

 

 

然后在  ~/.zshrc 文件里添加下面兩句:

export DISPLAY=$(awk '/nameserver / {print $2; exit}' /etc/resolv.conf 2>/dev/null):0
export LIBGL_ALWAYS_INDIRECT=1

 

 

執行  source ~/.zshrc  使之立即生效

 

現在便可以開始配置Bochs配置文件了

[注1] 如果想知道Bochs安裝在哪里,可以用  dpkg -L bochs  來查詢,一般來說包管理安裝軟件是放在  /usr/bin/  ,其文檔是放在  /usr/share/doc/ 

 

 

[注2]WSL下  /mnt/d  相當於Windows的D盤,其他盤同理,這里我在D盤某個位置新建了個文件夾用來做實驗,然后開始寫Bochs配置文件

 

 

現在開始配置Bochs,先寫配置文件,如下

 

 

現在開始創建剛才配置寫上的軟盤(啟動Bochs需要image),所以接下來先創建軟盤。這里借助 Bochs 的 bximage 創建軟盤, /usr/bximage  創建軟盤如下

 

 

創建軟盤參數參考(需要注意的是最后一句話  The follow line should …  ,這句話其實上面已經加入了,在上兩張圖寫 bochsrc 配置那里,所以這里忽略就好)

 

 

目前為止本地文件夾所有文件如下

 

 

這些事情完成后可以啟動 Bochs 了,但要注意我們是用 Xming 啟動的 Bochs,本來應該是 DISPLAY=:0 /usr/bin/bochs  啟動,但上面我們在  ~/.zshrc  添上了啟動配置,所以現在也可以直接 /usr/bin/bochs  啟動

 

 

這里有個坑,WSL2 安裝的 bochs 缺少了些東西,導致報錯缺少 ROM,參考 ROM: couldn't open ROM image file '/usr/share/bochs/BIOS-bochs-latest' ,輸入  sudo apt-get install -y bochsbios  安裝這個 ROM 解決

 

 

 

 

之后再繼續執行  /usr/bin/bochs 

 

按下回車后,桌面左上角會彈出 Bochs,這里我們只需要驗證有這個窗口彈出來就行了,就說明啟動成功了。(由於目前軟盤是空軟盤,所以就算輸入”c”運行Bochs 也是提示 [PANIC],但這里我們只驗證能不能開啟 GUI 就行了)

 

 

所以實驗成功


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM