
0. 開啟運行腳本。
PowerShell:
set-ExecutionPolicy RemoteSigned
鍵入Y或者A,同意
執行get-executionpolicy查看是否更改成功
顯示RemoteSigned,表示成功
1. 啟用WSL
PowerShell:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
重啟.
2. 安裝 Debian
PowerShell:
wsl --set-default-version 2
wsl --install -d Debian
各種設置.
3. 啟動 Debian
PowerShell:
wsl -d Debian
4. 啟用 Debian的 Systemd
Debian終端:
sudo echo -e "[boot]\nsystemd=true" >> /etc/wsl.conf
Exit 或者直接 Ctrl+D 返回到PowerShell
PowerShell:
wsl --shutdown -d Debian
wsl -d Debian
5. 軟件升級
Debian終端:
sudo apt update && sudo apt dist-upgrade
sudo apt install apt-transport-https ca-certificates
自動更換Debian軟件源:
bash <(curl -sSL https://linuxmirrors.cn/main.sh)
手動更換Debian源:
sudo cp /etc/apt/sources.list /etc/apt/sources-bak.list
sudo vi /etc/apt/sources.list
ESC 然后輸入“:wq”,保存并退出
# 默認注釋了源碼鏡像以提高 apt update 速度,如有需要可自行取消注釋
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm main contrib non-free non-free-firmware
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm main contrib non-free non-free-firmware
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-updates main contrib non-free non-free-firmware
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-updates main contrib non-free non-free-firmware
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-backports main contrib non-free non-free-firmware
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-backports main contrib non-free non-free-firmware
# 以下安全更新軟件源包含了官方源與鏡像站配置,如有需要可自行修改注釋切換
deb https://mirrors.tuna.tsinghua.edu.cn/debian-security bookworm-security main contrib non-free non-free-firmware
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian-security bookworm-security main contrib non-free non-free-firmware
6. 軟件安裝
Debian終端:
sudo apt install xxx
或者su進入root模式后免sudo
apt install xxx
7. 保持WSL更新
PowerShell:
wsl --update
8. Docker
Debian終端:
卸載docker
apt-get remove -y docker* containerd.io runc && apt-get autoremove
安裝docker
bash <(curl -sSL https://linuxmirrors.cn/docker.sh)
僅換docker源
bash <(curl -sSL https://linuxmirrors.cn/docker.sh) --only-registry
其他命令參考
bash <(curl -sSL https://linuxmirrors.cn/docker.sh) --help
命令選項(名稱/含義/值):
--source 指定 Docker CE 源地址(域名或IP) 地址
--source-registry 指定鏡像倉庫地址(域名或IP) 地址
--branch 指定 Docker CE 源倉庫(路徑) 倉庫名
--codename 指定 Debian 系操作系統的版本代號 代號名稱
--designated-version 指定 Docker CE 安裝版本 版本號
--protocol 指定 Docker CE 源的 WEB 協議 http 或 https
--install-latest 是否安裝最新版本的 Docker Engine true 或 false
--close-firewall 是否關閉防火墻 true 或 false
--clean-screen 是否在運行前清除屏幕上的所有內容 true 或 false
--only-registry 僅更換鏡像倉庫模式 無
--ignore-backup-tips 忽略覆蓋備份提示 無
--pure-mode 純凈模式,精簡打印內容 無
9. 安裝1panel
Debian終端:
bash -c "$(curl -sSL
10. WSL 常用命令
PowerShell:
卸載Debian
wsl --unregister Debian
設置默認Debian
wsl --set-default Debian
關閉Debian
wsl --shutdown
wsl --terminate Debian
或者在Debian終端優雅的使用sudo shutdown now
列表WSL正在運行的linux
wsl --list --running
列表已安裝的版本
wsl --list --verbose # 或簡寫為 wsl -l -v
啟動wsl的linux
wsl
wsl -d Debian
11. wsl.conf
本人常用的配置內容如下:
[boot]
systemd=true
[user]
default=mou
[automount]
enabled = false
mountFsTab = true # 啟用 /etc/fstab 掛載配置
[interop]
appendWindowsPath = false
[network]
generateHosts = true
generateResolvConf = true
[gpu]
enabled = true
[time]
useWindowsTimezone = true
12. /etc/fstab
每一行代表一個掛載配置
<設備文件/UUID> <掛載點> <文件系統類型> <掛載選項> <dump備份> <fsck檢查順序>
1. <設備文件/UUID>
指定需要掛載的存儲設備或文件系統的標識,常見形式有:
設備路徑:如 /dev/sda1(第一塊硬盤的第一個分區)、/dev/nvme0n1p2(NVMe 硬盤的第二個分區)。
UUID(推薦):設備的唯一標識符,格式如 UUID=123e4567-e89b-12d3-a456-426614174000。
使用 UUID 比設備路徑更穩定(設備路徑可能因硬件變動而改變,如插拔硬盤后 sda 可能變為 sdb)。
查看設備 UUID 的命令:blkid 或 ls -l /dev/disk/by-uuid/。
網絡存儲路徑:如 //192.168.1.100/share(Samba 共享)或 user@host:/remote/path(NFS 共享)。
2. <掛載點>
指定文件系統在 Linux 目錄樹中的掛載位置,必須是一個已存在的空目錄。
例如:
/:根文件系統(必須存在)。
/home:用戶主目錄分區。
/mnt/external:外部硬盤的掛載點。
/media/usb:U 盤的掛載點(通常由系統自動創建)。
3. <文件系統類型>
指定設備的文件系統格式,常見類型包括:
本地文件系統:ext4(Linux 常用)、xfs(高性能)、btrfs(支持快照)、vfat(FAT32,U 盤 / 存儲卡常用)、ntfs(Windows 分區,需安裝 ntfs-3g 驅動支持讀寫)。
虛擬文件系統:tmpfs(臨時文件系統,基于內存)、sysfs(系統設備信息)、proc(進程信息)。
網絡文件系統:nfs(NFS 共享)、cifs(Samba 共享,即 Windows 網絡共享)。
自動檢測:若不確定類型,可填 auto,系統會自動探測文件系統格式。
4. <掛載選項>
控制文件系統的掛載行為,多個選項用逗號分隔,常見選項包括:
基礎選項:
defaults:默認選項,等效于 rw, suid, dev, exec, auto, nouser, async。
rw:讀寫權限(默認);ro:只讀權限。
auto:系統啟動時自動掛載;noauto:需手動掛載(mount 掛載點)。
user:允許普通用戶掛載;nouser:僅 root 可掛載(默認)。
exec:允許執行掛載目錄中的程序;noexec:禁止執行程序(安全選項,如 /tmp 可設為 noexec)。
針對特定文件系統的選項:
uid=1000,gid=1000:掛載 vfat/ntfs 分區時指定所有者用戶 ID 和組 ID(解決 Linux 訪問 Windows 分區權限問題)。
umask=000:vfat 分區的權限掩碼,000 表示所有用戶可讀可寫可執行。
noatime:禁止更新文件的訪問時間(提升磁盤性能)。
nodev:禁止識別掛載目錄中的設備文件(安全選項)。
5. <dump備份>
用于 dump 命令(系統備份工具)的配置,指定是否需要備份該文件系統:
0:不備份(默認,現代系統很少使用 dump)。
1:需要備份(通常根分區設為 1,其他分區設為 0)。
6. <fsck檢查順序>
指定系統啟動時 fsck 工具檢查文件系統的順序:
0:不檢查(如虛擬文件系統 tmpfs、網絡文件系統)。
1:優先檢查(通常根分區 / 設為 1,唯一)。
2:在根分區檢查完成后檢查其他分區(如 /home、/boot 等)。
典型的 fstab 示例:
# 根分區(ext4文件系統,UUID標識,默認選項,不備份,優先檢查)
UUID=123e4567-e89b-12d3-a456-426614174000 / ext4 defaults 0 1
# home分區(xfs文件系統,系統啟動自動掛載,次級檢查)
UUID=567e8901-e23b-45c6-d789-0123456789ab /home xfs defaults 0 2
# U盤(FAT32格式,允許普通用戶掛載,指定權限)
/dev/sdb1 /mnt/usb vfat user,uid=1000,gid=1000,umask=000 0 0
# Windows NTFS分區(只讀掛載,禁止執行程序)
UUID=ABC1234567890 /mnt/windows ntfs ro,noexec 0 0
# 臨時文件系統(內存中的臨時目錄,大小為物理內存的一半)
tmpfs /tmp tmpfs size=50% 0 0
常用設置:
只讀掛載(保護 Windows 文件不被修改):
E:/wsl/Data /mnt/work drvfs defaults,ro 0 0
掛載多個不同文件夾:
E:/wsl/Data /mnt/downloads drvfs defaults 0 0
D:/Projects /mnt/projects drvfs defaults 0 0
掛載 UNC 網絡路徑(如共享文件夾):
//server/share /mnt/share drvfs defaults,username=your_username,password=your_password 0 0
示例:
E:/wsl/Data /mnt/work drvfs defaults,metadata,uid=1000,gid=1000,umask=022,fmask=133 0 0
個人建議將下載文件夾、視頻、音樂這些掛載,放在在wsl里面使用
13. 遷移WSL
將 WSL 遷移到 E 盤可以通過導出和導入發行版的方式實現,具體操作步驟如下:
確認 WSL 發行版名稱:打開 PowerShell,輸入命令wsl -l -v,查看已安裝的 WSL 發行版名稱,如Debian,記錄下來以備后續使用。
關閉 WSL:在 PowerShell 中執行wsl --shutdown,確保所有 WSL 實例都已關閉。
創建完整備份:使用命令wsl --export <發行版名稱> <備份文件路徑>將 WSL 發行版導出為一個.tar 文件。
例如,wsl --export Debian E:\wsl_backup\debian_backup.tar,將Debian發行版備份到 E 盤的wsl_backup文件夾下。
注銷當前發行版:輸入wsl --unregister <發行版名稱>,注銷原有的 WSL 發行版。
如wsl --unregister Debian,此時 C 盤相關空間會釋放。
遷移到新位置:執行wsl --import <發行版名稱> <目標目錄> <備份文件路徑> --version 2將發行版導入到 E 盤指定位置。
例如,wsl --import Debian E:\wsl\debian E:\wsl_backup\debian_backup.tar --version 2,將發行版導入到 E 盤的wsl\ubuntu目錄下,--version 2表示強制使用 WSL2。
設置默認用戶:創建配置文件設置默認用戶,命令為@"(user)default=<YourUsername>"@ | Out-File -FilePath <目標目錄>\etc\wsl.conf -Encoding utf8。
例如,@"(user)default=mou"@ | Out-File -FilePath E:\wsl\debian\etc\wsl.conf -Encoding utf8,將mou設置為默認用戶,需將其替換為你自己的用戶名。
驗證遷移:輸入wsl -d <發行版名稱>啟動遷移后的 WSL 發行版,如wsl -d Debian。進入后可通過whoami命令查看當前用戶是否正確,也可使用df -h檢查掛載點是否正常。
14. 驅動NVIDIA
1. 檢查 NVIDIA 驅動是否已安裝
Debian終端:
輸入 lsmod | grep nvidia 命令
如果出現與 NVIDIA 相關的模塊,則說明 NVIDIA 驅動已安裝。
如果沒有出現相關模塊,請繼續進行下一步。
2. 檢查 NVIDIA 驅動版本
Debian終端:
輸入 nvidia-smi --version 命令。
查看輸出結果中的驅動版本信息。
3. 檢查 NVIDIA 包是否安裝
在某些情況下,可能是因為沒有安裝相應的 NVIDIA 包導致的 nvidia-smi 命令缺失。可以通過以下步驟進行檢查:
Debian終端:
輸入 dpkg -l | grep nvidia 命令。
查看列表中是否包含 nvidia-smi 包。
4. 安裝 NVIDIA 驅動
如果確認 NVIDIA 驅動未安裝,您可以通過以下步驟進行安裝:
Debian終端:
輸入 sudo apt-get update 命令,更新軟件包列表。
輸入 sudo apt-get install nvidia-driver 命令,安裝 NVIDIA 驅動。
安裝完成后,重新啟動計算機。
5. 卸載并重新安裝 NVIDIA 包
如果確認 NVIDIA 驅動已安裝,但 nvidia-smi 命令缺失,您可以嘗試卸載并重新安裝 NVIDIA 包:
Debian終端:
輸入 sudo apt-get remove nvidia-* 命令,卸載所有 NVIDIA 相關包。
輸入 sudo apt-get install nvidia-* 命令,重新安裝 NVIDIA 包。
安裝完成后,重新啟動計算機。
6. 修復 NVIDIA 驅動
如果以上方法都無法解決問題,您可以嘗試修復 NVIDIA 驅動:
Debian終端:
輸入 sudo apt-get install nvidia-prime 命令,安裝 NVIDIA Prime 工具。
輸入 sudo prime-select auto 命令,選擇合適的驅動。
輸入 sudo nvidia-smi 命令,嘗試運行 nvidia-smi。
15. Docker Desktop
安裝可以去 https://github.com/asxez/DockerDesktop-CN 下載安裝包和漢化文件
注意!Docker Desktop 安裝后不會自動配置與 WSL 默認分發版的集成,需要自行去dockerdesktop設置-資源里面找到wsl選擇要集成的分發版
注意!Docker Desktop 安裝和鏡像文件默認存放在C盤請到設置里面轉移到其他分區,防止爆盤
16. 配置WSL開機自啟
新建一個start wsl.vbs文件,內容如下:
Set objShell = WScript.CreateObject("WScript.Shell")
' 延遲1分鐘
WScript.Sleep 60000
' 啟動WSL Debian發行版,窗口隱藏
objShell.Run "wsl -d Debian", 0, False
' 延遲1分鐘
WScript.Sleep 60000
' 啟動Docker Desktop應用程序
objShell.Run """C:\Program Files\Docker\Docker\Docker Desktop.exe""", 1, False
保存后放到C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup目錄下
內容里面的Debian就是你的wsl linux分發版本 可以用wsl --list查看到
下次重啟開機后wsl會默認開啟debian如果有其他分發版可以自行替換
17. 參考鏈接:
https://learn.microsoft.com/zh-cn/windows/wsl/install
https://learn.microsoft.com/zh-cn/windows/wsl/install-manual
https://linuxmirrors.cn/
