Linux Windows之wsl安裝使用簡介

參考資料

  1. 如何使用 WSL 在 Windows 上安裝 Linux
  2. windows11 安裝WSL2全流程
  3. 舊版 WSL 的手動安裝步驟

目錄

  • 一. 前期準備
    • 1.1 確認windows的版本
    • 1.2 開啟Linux子系統的支持
      • 1.2.1 圖形化方式
      • 1.2.2 命令行方式
    • 1.3 安裝wsl軟件
    • 1.4 安裝Linux分發版
  • 二. 基本配置
    • 2.1 Windows Terminal
    • 2.2 wsl
    • 2.3 發行版linux
      • 2.3.1 配置root密碼
      • 2.3.2 配置ssh
      • 2.3.3 切換源為國內的源
    • 2.4 Vs Code安裝wsl插件
  • 三. 命令行簡介
    • 3.1 `wsl --help`
    • 3.2 子系統的安裝與查看
    • 3.3 子系統的默認設置
    • 3.4 進入子系統
    • 3.5 導出導入子系統
    • 3.6 修改默認登錄用戶
    • 3.7 關閉與刪除


一. 前期準備

1.1 確認windows的版本

?win11默認支持wsl,無需確認;部分win10版本不支持,需要確認

  • win + R打開運行窗口
  • 輸入winver命令,并執行
  • 確認當前win10為22H2版本
    在這里插入圖片描述

1.2 開啟Linux子系統的支持

1.2.1 圖形化方式

在這里插入圖片描述

1.2.2 命令行方式

?執行下面兩行命令之后,重啟電腦。

# 開啟【適用于 Linux的 Windows 子系統】
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
# 開啟【虛擬機平臺】
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

1.3 安裝wsl軟件

?官方提供的wsl管理軟件,找到最新的版本安裝即可

  • https://github.com/microsoft/WSL/tags

?官方提供的wsl_update_x64.msi的升級包

  • https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

1.4 安裝Linux分發版

  • 可以選擇在Microsoft Store商店安裝
  • 也可以下載Linux 分發版的安裝包,并手動安裝
    • 對應的安裝包的下載地址可參考微軟官方提供的教程
  • 💥注意💥
    • win10的自動更新功能不能關閉,否則無法正常啟動
  • 安裝時會提示輸入賬戶名和密碼,輸入完成之后,就完成了子系統的配置

二. 基本配置

2.1 Windows Terminal

?在Windows Terminal中,可通過如下方式進入指定的linux發行版

在這里插入圖片描述

?可以在設置中,指定當前linux發行版的啟動命令行,工作目錄等配置

  • 命令行:
    • wsl -d Ubuntu --cd ~:通過wsl命令啟動名稱為Ubuntu的linux發行版,啟動完成之后將路徑切換為home目錄
  • 啟動目錄:
    • 我們也可以將啟動目錄設置為//wsl$/Ubuntu/home/用戶名,此時的--cd ~就可以省略了

在這里插入圖片描述

2.2 wsl

?安裝wsl之后,可在開啟菜單找到藍色企鵝圖標,進入之后,可對wsl進行各種配置

在這里插入圖片描述

2.3 發行版linux

2.3.1 配置root密碼

  • 初始安裝之后,root用戶并沒有設置密碼,可通過下面的命令設置密碼
    sudo passwd root
    

2.3.2 配置ssh

  • wsl中的發行版linux需要配置ssh之后,外部才能訪問
    # 更新apt
    sudo apt update
    # 安裝openssh-server
    sudo apt install openssh-server
    # 修改配置文件
    sudo vi /etc/ssh/sshd_config# 將配置文件中的配置項的注釋解開,并修改
    PasswordAuthentication yes
    PermitRootLogin yes
    UsePAM no
    
  • 安裝配置完成之后,開啟ssh服務
    sudo service ssh start
    

2.3.3 切換源為國內的源

?Ubuntu的軟件安裝源在海外,國內使用的話,有可能會失敗,可通過鏡像源的方式解決

  • 系統源備份:sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
  • 修改 sources.list, 加入鏡像站提供的源
    • 主要使用下面兩個鏡像站
    • 清華源:https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/
    • 中科大源:https://mirrors.ustc.edu.cn/help/ubuntu.html
  • 保存之后,更新鏡像源:sudo apt update

2.4 Vs Code安裝wsl插件

?如下圖所示,安裝wsl插件

在這里插入圖片描述

?插件安裝完成之后,在linux中輸入code .之后,.vscode-server就會安裝到linux中,然后就可以通過vs code來編輯linux中的文件了。

在這里插入圖片描述


三. 命令行簡介

3.1 wsl --help

?查看wsl命令的幫助信息

在這里插入圖片描述

3.2 子系統的安裝與查看

# 命令行的方式升級wsl
wsl --update# 在線查看微軟官方提供的子系統
wsl --list --online# 通過命令行的方式安裝子系統
wsl --install -d 子系統名稱# 查看本地安裝的所有版本
wsl -l -v

3.3 子系統的默認設置

# 設置wsl的默認版本
wsl --set-default-version 2# 當存在多個子系統時,設置默認的子系統
wsl --set-default 子系統名稱

3.4 進入子系統

# 指定用戶進入wsl
wsl -d <distro_name> -u <username>
wsl -d Ubuntu_22.04 -u apluser# 啟動指定的子系統, 并切換到home目錄
wsl -d Ubuntu_22.04 --cd ~

3.5 導出導入子系統

?子系統導出

# 將安裝的linux子系統導出
wsl --export Ubuntu "E:\Ubuntu_22.04.tar"

?子系統導入

  • 注意,導入之后的系統,會以【ext4.vhdx】的文件名保存,本質上是一個虛擬硬盤
  • 該文件名不要更改,最佳實踐是在外套一層文件夾用來區分
wsl --import Ubuntu_22.04 "E:\VM_PC\wsl\Ubuntu_22.04" "E:\Ubuntu_22.04.tar" --version 2

3.6 修改默認登錄用戶

?導入wsl系統之后,默認以root賬戶登錄

  • 可以在Windows Terminal的設置中的命令行處,指定普通用戶-u 用戶名的方式來登錄
  • 也可以在linux的配置文件中修改默認的登錄用戶
    • 通過root用戶登錄
    • 查看該配置文件是否存在,不存在的話,就新建
      • ls -l /etc/wsl.conf
    • 編輯該配置文件
      • vim /etc/wsl.conf
    • 追加如下內容
      • [user]
      • default=apluser
    • 退出后,關閉wsl
      • wsl --shutdown
    • 再一次進入wsl之后,就可以看到通過指定的默認用戶登錄了
      • wsl -d Ubuntu_22.04 --cd ~

3.7 關閉與刪除

?關閉

# 關閉指定的子系統
wsl --terminate -d Ubuntu_22.04(系統名稱)# 關閉所有的子系統
wsl --shutdown

?刪除

  • 必須先關閉然后才能卸載刪除
  • 執行下面的命令之后,【ext4.vhdx】的文件會被刪除
wsl --unregister Ubuntu_22.04

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/82476.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/82476.shtml
英文地址,請注明出處:http://en.pswp.cn/web/82476.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

matlab模糊控制實現路徑規劃

路徑規劃是機器人和自動駕駛系統中的重要問題之一&#xff0c;它涉及確定如何在給定環境中找到最優路徑以達到特定目標。模糊控制是一種有效的控制方法&#xff0c;可以應用于路徑規劃問題。 路徑規劃算法的目標是在避免障礙物的情況下&#xff0c;找到機器人或車輛從起點到終…

OpenHarmony 5.0橫豎屏界面適配

目錄 一.背景 二.修改位置 三.參考文檔 一.背景 由于需要一套代碼適配橫屏和豎屏設備,所以有些數值的大小可能在豎屏上面適配,在橫屏上面不那么適配了,所以需要橫屏特殊的數值大小(例如:寬高) 二.修改位置 在resources資源文件中新建橫屏適配的文件夾,然后新建自己需…

AlphaFold3服務器安裝與使用(非docker)(1)

1. 服務器顯卡驅動準備 這部分我會詳細記錄一下我踩過的坑及怎樣拯救的&#xff0c;原諒啰嗦啦 ^_^ 1.1 服務器舊配置 1.1.1 nvidia-smi [xxxxxxlocalhost ~]# nvidia-smi Thu May 29 20:54:00 2025 -------------------------------------------------------------…

Java異步編程難題拆解技術

目錄 ?編輯 異步編程的核心概念 Java異步編程的主要實現方式 異步編程的常見難題 解決異步編程難題的策略 性能優化與調試技巧 實際案例分析 未來發展趨勢 異步編程的核心概念 同步與異步的區別阻塞與非阻塞的差異Java異步編程的常見場景&#xff08;如網絡請求、文件…

第五期書生大模型實戰營-《L1G1-玩轉書生大模型 API 之 Browser-Use 實踐》

一、 搭建環境 pip install requests openai 1.2、獲取API https://internlm.intern-ai.org.cn/api/tokens 1.3 運行API from openai import OpenAI from dotenv import load_dotenv import osfrom openai import OpenAI from dotenv import load_dotenv import os# Inter…

基于Web的安全漏洞分析與修復平臺設計與實現

基于Web的安全漏洞分析與修復平臺設計與實現 摘要 隨著信息化進程的加快&#xff0c;Web系統和企業IT架構愈發復雜&#xff0c;安全漏洞頻發已成為影響系統安全運行的主要因素。為解決傳統漏洞掃描工具定位不準確、修復建議不完善、響應周期長等問題&#xff0c;本文設計并實…

深入解析異步爬蟲中的協程原理:從概念到工程實踐

引言 在Web數據抓取領域,同步爬蟲的??單線程阻塞模型??已無法滿足現代應用對效率的需求。據統計,2025年全球Top 1000網站中,89%采用Ajax動態加載技術,傳統爬蟲的平均抓取效率已下降至每秒1.5個頁面。而基于協程的異步爬蟲通過??非阻塞I/O??和??并發調度??,可…

告別硬編碼!用工廠模式優雅構建可擴展的 Spring Boot 應用 [特殊字符]

嗨&#xff0c;各位技術伙伴們&#xff01;&#x1f44b; 在日常的軟件開發中&#xff0c;我們經常面臨需求變更的挑戰。如何構建一個既能滿足當前需求&#xff0c;又能輕松應對未來變化的系統呢&#xff1f;答案往往藏在那些經典的設計模式中。 今天&#xff0c;我們就來聊聊…

【Linux】編譯器gcc/g++及其庫的詳細介紹

前言&#xff1a; 上文我們學到了&#xff0c;LInux中的的編輯器vim【Linux】vim編輯器-CSDN博客 本文來學習LInux中的編譯器&#xff1a;gcc/g gcc是C語言編譯器&#xff0c;g是C編譯器&#xff0c;這兩個的使用一模一樣。這里我們主要使用gcc給大家介紹 1.格式 gcc 被編譯的…

用“紅燒魚”類比說明卷積神經網絡CNN的概念

我們用一個生活中的例子——「廚房做紅燒魚」 的場景&#xff0c;來類比卷積神經網絡中多層卷積核的工作過程。你會發現&#xff0c;卷積層就像廚房里分工明確的廚師團隊&#xff0c;逐步處理食材&#xff0c;最終完成一道復雜的菜品。 &#x1f41f; 生活案例&#xff1a;廚房…

uniapp與微信小程序開發平臺聯調無法打開IDE

經測試屬于網絡問題。本機需要聯網。否則會出現Hbuilder運行微信小程序到模擬器時無法打開 微信開發者工具 這個頁面出不來會一直顯示異常。這期間微信小程序開發工具的端口是通的 需要先聯網

內網穿透之Linux版客戶端安裝(神卓互聯)

選擇Linux系統版本 獲取安裝包 &#xff1a;https://www.shenzhuohl.com/download.html 這里以Ubuntu 18.04為例&#xff0c;其它版本方法類似 登錄Ubuntu操作系統&#xff1a; 打開Ubuntu系統終端&#xff0c;更新版本 apt-get update 安裝運行環境&#xff1a; 安裝C 運…

硬件學習筆記--66 MCU的DMA簡介

DMA&#xff08;Direct Memory Access&#xff0c;直接存儲器訪問&#xff09;是MCU中一種重要的數據傳輸機制&#xff0c;它允許外設與存儲器之間或存儲器與存儲器之間直接傳輸數據&#xff0c;而無需CPU的持續干預。 1、DMA的基本原理 1.1 核心概念&#xff1a; 1&#xf…

DeepSeek本地部署及WebUI可視化教程

前言 DeepSeek是近年來備受關注的大模型之一,支持多種推理和微調場景。很多開發者希望在本地部署DeepSeek模型,并通過WebUI進行可視化交互。本文將詳細介紹如何在本地環境下部署DeepSeek,并實現WebUI可視化,包括Ollama和CherryStudio的使用方法。 一、環境準備 1. 硬件要…

RK3588和FPGA橋片之間IO電平信號概率性不能通信原因

1.GPIO管腳配置問題 RK3588對IO進行配置的時候&#xff0c;如果配置為多功能復用&#xff0c;沒有明確IO功能&#xff0c;可能引起信號接收不穩定&#xff0c; 需要在驅動中設備樹中配置管腳為GPIO功能&#xff0c;確保沒有功能復用的干擾。 2.上下拉電阻阻值設置不當 GPIO引腳…

相機--相機標定實操

教程 camera_calibration移動畫面示例 usb_cam使用介紹和下載 我使用的是USB相機&#xff0c;所以直接使用ros的usb_cam功能包驅動相機閉關獲取實時圖像&#xff0c;然后用ros的camera_calibration標定相機。 查詢攝像機的信息 v4l2-ctl -d 0 --all的作用 命令詳解&#xf…

【Kotlin】高階函數Lambda內聯函數

【Kotlin】簡介&變量&類&接口 【Kotlin】數字&字符串&數組&集合 【Kotlin】高階函數&Lambda&內聯函數 【Kotlin】表達式&關鍵字 文章目錄 函數還是屬性高階函數抽象和高階函數實例&#xff1a; 函數作為參數的需求方法引用表達式更多使用場…

飛算JavaAI 炫技賽重磅回歸!用智能編碼攻克老項目重構難題

深夜還在排查十年前Hibernate框架埋下的N1查詢隱患&#xff1f;跨語言遷移時發現SpringMVC控制器里的業務邏輯像一團亂麻&#xff1f;當企業數字化進入深水區&#xff0c;百萬行代碼的老系統就像一座隨時可能崩塌的"技術債冰山"。近日&#xff0c;飛算科技發布JavaAI…

Linux I2C 子系統全解:結構、機制與工程實戰

Linux I2C 子系統全解&#xff1a;結構、機制與工程實戰 前言 I2C&#xff08;Inter-Integrated Circuit&#xff09;作為嵌入式系統和各種電子產品中最常用的串行通信總線之一&#xff0c;在 Linux 內核中的地位極其重要。然而&#xff0c;Linux I2C 子系統的分層結構、對象模…

多線程編程技術解析及示例:pthread_cond_timedwait、pthread_mutex_lock 和 pthread_mutex_trylock

多線程編程技術解析及示例&#xff1a;pthread_cond_timedwait、pthread_mutex_lock 和 pthread_mutex_trylock 摘要 本文深入解析了多線程編程中 pthread_cond_timedwait、pthread_mutex_lock 和 pthread_mutex_trylock 三個函數的功能、使用場景及注意事項&#xff0c;并通…