نصب Ubuntu روی WSL
راهنمای کامل نصب Ubuntu روی Windows Subsystem for Linux (WSL2) بههمراه نصب رابط گرافیکی، دسترسی به فایلهای ویندوز و رفع خطاهای رایج.
Windows Subsystem for Linux (WSL) به شما اجازه میدهد Ubuntu را مستقیماً در ویندوز اجرا کنید، بدون نیاز به ماشین مجازی یا Dual Boot. در این آموزش، نصب Ubuntu روی WSL2، راهاندازی رابط گرافیکی و نکات عملی را بهطور کامل بررسی میکنیم.
WSL چیست؟
WSL یک لایهٔ سازگاری در ویندوز است که اجرای باینری لینوکس را امکانپذیر میکند. WSL2 از یک هستهٔ واقعی لینوکس در یک ماشین مجازی سبک استفاده میکند و عملکرد بسیار نزدیک به نصب بومی ارائه میدهد.
مزایای WSL برای Ubuntu
- اجرای Ubuntu بدون نیاز به Dual Boot یا ماشین مجازی
- نصب سریع و سبک (مصرف منابع کم)
- یکپارچه با Visual Studio Code و Windows Terminal
- دسترسی مستقیم به فایلهای ویندوز از
/mnt/c/ - پشتیبانی از رابط گرافیکی (WSLg) برای برنامههای گرافیکی لینوکس
محدودیتهای WSL
محدودیتهای مهم
WSL دسترسی مستقیم به سختافزار را بهطور کامل پشتیبانی نمیکند. کارت وایرلس در حالت monitor، USB دستگاههای خاص یا درایورهای اختصاصی ممکن است کار نکنند. برای این موارد، از نصب بومی یا ماشین مجازی استفاده کنید.
پیشنیازها
پیش از نصب، موارد زیر را تأیید کنید:
- ویندوز ۱۰ نسخهٔ ۲۰۰۴ (Build 19041) یا ویندوز ۱۱
- حداقل ۸ گیگابایت رم (۱۶ گیگابایت توصیه میشود)
- ۲۰ گیگابایت فضای خالی روی دیسک
- مجازیسازی فعال در BIOS (VT-x یا AMD-V)
- دسترسی مدیر برای نصب
نصب WSL2
اگر WSL را قبلاً نصب نکردهاید، ابتدا آن را فعال کنید. PowerShell را با دسترسی مدیر باز کنید:
# نصب خودکار WSL2
wsl --install
# خروجی:
# Installing: Virtual Machine Platform
# Virtual Machine Platform has been installed.
# Installing: Windows Subsystem for Linux
# Windows Subsystem for Linux has been installed.
# The requested operation is successful. Changes will not be effective until the system is rebooted.سپس ویندوز را ریاستارت کنید.
پس از ریاستارت، دوباره PowerShell را باز کنید و نسخهٔ پیشفرض WSL را روی ۲ تنظیم کنید:
wsl --set-default-version 2
# For information on key differences with WSL 2 please visit https://aka.ms/wsl2نصب Ubuntu روی WSL
روش ۱: نصب با دستور wsl
# لیست توزیعهای موجود
wsl --list --online
# خروجی:
# NAME FRIENDLY NAME
# Ubuntu Ubuntu
# Ubuntu-22.04 Ubuntu 22.04 LTS
# Ubuntu-24.04 Ubuntu 24.04 LTS
# Ubuntu-18.04 Ubuntu 18.04 LTS
# Debian Debian GNU/Linux
# ...
# نصب آخرین نسخهٔ Ubuntu
wsl --install -d Ubuntu
# یا نصب نسخهٔ LTS خاص
wsl --install -d Ubuntu-24.04روش ۲: از Microsoft Store
۱. Microsoft Store را باز کنید. ۲. جستجوی «Ubuntu». ۳. روی Get کلیک کنید.
نخستین راهاندازی
پس از نصب، Ubuntu بهصورت خودکار اجرا میشود. در نخستین اجرا، باید یک کاربر و رمز عبور بسازید:
Installing, this may take a few minutes...
Please create a default UNIX user account.
The username does not need to match your Windows username.
Enter new UNIX username: ali
New password: ********
Retype new password: ********
passwd: password updated successfully
Installation successful!
To run a command as administrator (user "root"), use "sudo command".
See "man sudo_root" for details.رمز sudo جداگانه است
رمزی که وارد میکنید، رمز کاربر شما در Ubuntu است و برای sudo استفاده میشود. این رمز با رمز ویندوز شما مرتبط نیست.
بهروزرسانی نخستین
پس از نصب، بلافاصله سیستم را بهروز کنید:
# بهروزرسانی کامل
sudo apt update
sudo apt upgrade -y
sudo apt autoremove -y
# خروجی نمونه:
# 1247 packages can be upgraded. Run 'apt list --upgradable' to see them.
# ...
# Fetched 1,234 MB in 5min 23s (3,812 kB/s)دسترسی به فایلهای ویندوز
از داخل WSL، فایلهای ویندوز از مسیر /mnt/c/ قابل دسترسی هستند:
# لیست فایلهای درایو C ویندوز
ls /mnt/c/
# دسترسی به دسکتاپ ویندوز
ls "/mnt/c/Users/YourName/Desktop/"
# کپی فایل از ویندوز به Ubuntu
cp "/mnt/c/Users/YourName/Downloads/file.txt" ~/
# اجرای مستقیم برنامههای ویندوز از WSL
notepad.exe file.txt
explorer.exe .دسترسی به فایلهای Ubuntu از ویندوز
از داخل File Explorer ویندوز، میتوانید با مسیر زیر به فایلهای Ubuntu دسترسی داشته باشید:
\\wsl$\Ubuntu\home\ali\یا در نسخههای جدیدتر ویندوز ۱۱:
\\wsl.localhost\Ubuntu\home\ali\رابط گرافیکی با WSLg
WSL2 در ویندوز ۱۱ و ویندوز ۱۰ جدید، از WSLg (WSL GUI) پشتیبانی میکند که اجرای برنامههای گرافیکی لینوکس را بدون نیاز به سرور X فراهم میکند:
# نصب یک برنامهٔ گرافیکی
sudo apt install -y gedit
# اجرای آن
geditپنجرهٔ برنامه بهصورت بومی در ویندوز باز میشود.
WSLg در ویندوز ۱۱
WSLg بهطور پیشفرض در ویندوز ۱۱ و در نسخههای جدید WSL2 ویندوز ۱۰ فعال است. اگر WSL2 را با wsl --update بهروزرسانده باشید، WSLg در دسترس است.
اجرای Ubuntu در VS Code
VS Code از طریق افزونهٔ WSL به شما اجازه میدهد مستقیماً در محیط Ubuntu کد بنویسید:
۱. در VS Code، افزونهٔ Remote - WSL را نصب کنید. ۲. در ترمینال Ubuntu، به پوشهٔ پروژه بروید:
cd ~/projects/myapp
code .VS Code در حالت WSL باز میشود و تمام ابزارهای توسعه (Node، Python، gcc و...) از داخل Ubuntu اجرا میشوند.
مدیریت WSL
دستورات مفید برای مدیریت WSL در PowerShell:
# لیست توزیعهای نصبشده
wsl --list --verbose
# خروجی:
# NAME STATE VERSION
# * Ubuntu-24.04 Running 2
# توقف Ubuntu
wsl --terminate Ubuntu-24.04
# اجرای مجدد Ubuntu
wsl -d Ubuntu-24.04
# خاموشکردن کامل WSL
wsl --shutdown
# بهروزرسانی WSL
wsl --update
# بررسی وضعیت
wsl --statusانتقال WSL به دیسک دیگر (اختیاری)
اگر فضای درایو C کم است، میتوانید Ubuntu را به درایو دیگر منتقل کنید:
# خروجیگیری از توزیع
wsl --export Ubuntu-24.04 D:\backup\ubuntu.tar
# حذف از درایو فعلی
wsl --unregister Ubuntu-24.04
# وارد کردن به درایو جدید
wsl --import Ubuntu-24.04 D:\WSL\Ubuntu D:\backup\ubuntu.tarخطاهای رایج
۱. WslRegisterDistribution failed
WslRegisterDistribution failed with error: 0x800701bcراهحل: WSL را بهروزرسانی کنید و نسخهٔ ۲ را بهعنوان پیشفرض تنظیم کنید:
wsl --update
wsl --set-default-version 2۲. مجازیسازی فعال نیست
Please enable the Virtual Machine Platform Windows featureراهحل: در BIOS، مجازیسازی (VT-x، AMD-V یا SVM) را فعال کنید. سپس در ویندوز:
# فعالکردن قابلیتهای مورد نیاز
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
# سپس ریاستارت۳. عدم اتصال به اینترنت
مشکل: در Ubuntu WSL، اینترنت کار نمیکند.
راهحل:
# در PowerShell (مدیر)
wsl --shutdown
netsh winsock reset
netsh int ip reset
# سپس ویندوز را ریاستارت کنید۴. سرعت I/O کند است
مشکل: خواندن/نوشتن فایلها در /mnt/c/ بسیار کند است.
راهحل: فایلهای پروژه را داخل فایلسیستم لینوکس (~/) نگه دارید، نه در /mnt/c/. فقط فایلهای ویندوز را از /mnt/c/ بخوانید.
پروژهها را داخل WSL نگه دارید
برای پروژههای توسعه، همیشه فایلها را داخل ~/projects/ در Ubuntu نگه دارید. این کار چندین برابر سریعتر از کار در /mnt/c/ است.
۵. خطای فضای دیسک
مشکل: با اینکه فضای ویندوز دارید، WSL خطای «No space left» میدهد.
راهحل: فایل VHD مربوط به WSL را فشرده کنید:
wsl --shutdown
diskpart
# در diskpart:
# select vdisk file="C:\Users\YourName\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu...\LocalState\ext4.vhdx"
# attach vdisk readonly
# compact vdisk
# detach vdisk
# exitخلاصه و مرحلهٔ بعد
نصب Ubuntu روی WSL راهی سریع و سبک برای اجرای ابزارهای لینوکس در ویندوز است. این روش برای توسعهٔ نرمافزار، اسکریپتنویسی و یادگیری لینوکس عالی است؛ اما برای کار با سختافزار خاص یا تجربهٔ کامل دسکتاپ، باید از نصب بومی یا Dual Boot استفاده کنید.
بهعنوان گام بعدی:
- آموزش APT و Snap را برای نصب نرمافزارها بخوانید
- آموزش نصب گامبهگام را برای نصب بومی Ubuntu ببینید
- آموزش بهروزرسانی سیستم را برای روتین نگهداری دنبال کنید
این صفحه در تاریخ ۹ تیر ۱۴۰۵ بهروزرسانی شده است.