زیرسیستم ویندوز برای لینوکس، به یک ویژگی پایدار در بهروزرسانی Creators Fall تبدیل شد. اکنون میتوانید Ubuntu، openSUSE، Remix Fedora و بسیاری از موارد دیگر را در ویندوز اجرا کنید و به زودی توزیع های لینوکس بیشتری نیز ارائه میشود. در این مقاله به آموزش نصب و استفاده از لینوکس Bash Shell در ویندوز 10 می پردازیم.
لینوکس Bash Shell در ویندوز 10
چگونه زیرسیستم ویندوز برای لینوکس ۱ (WSL1) کار میکند؟
ویندوز 10 یک زیرسیستم کامل ویندوز را برای لینوکس (WSL) جهت اجرای نرم افزار لینوکس ارائه میدهد. این یک ماشین مجازی یا نرمافزار لینوکس نیست که برای Windows کامپایل شده است (مانند Cygwin). بلکه بر اساس مایکروسافت Project Astoria برای اجرای برنامه های اندروید در ویندوز است.
آن را برخلاف Wine در نظر بگیرید. Wine به شما اجازه میدهد تا برنامه های ویندوز را مستقیماً بر روی لینوکس اجرا کنید، اما زیرسیستم ویندوز برای لینوکس به شما امکان میدهد برنامه های لینوکس را مستقیماً روی ویندوز اجرا کنید.
مایکروسافت با Canonical همکاری کرد تا یک محیط پوسته Bash کامل مبتنی بر Ubuntu را ارائه دهد که در بالای این زیرسیستم اجرا میشود. از نظر فنی، این اصلا لینوکس نیست. لینوکس هسته اصلی سیستم عامل است و در اینجا در دسترس نیست. در عوض، به شما امکان میدهد پوسته Bash و همان باینریهایی را که معمولاً در لینوکس Ubuntu اجرا میکردید، اجرا کنید. متخصصان نرمافزار اغلب استدلال میکنند که سیستم عامل لینوکس باید «گنو/لینوکس» نامیده شود، زیرا واقعاً تعداد زیادی نرمافزار GNU روی هسته لینوکس اجرا میشود. پوسته Bash که دریافت خواهید کرد در واقع تمام آن ابزارهای GNU و نرم افزارهای دیگر است.
این ویژگی در ابتدا “Bash on Ubuntu on Windows” نامیده میشد، اما به شما امکان میدهد Zsh و سایر پوسته های خط فرمان را اجرا کنید. اکنون از سایر توزیع های لینوکس نیز پشتیبانی میکند. شما میتوانید openSUSE Leap یا SUSE Enterprise Server را به جای Ubuntu انتخاب کنید و یک ریمیکس از Fedora در دسترس است.
در اینجا محدودیت هایی وجود دارد. به طور رسمی با برنامه های گرافیکی دسکتاپ لینوکس کار نمیکند. همه برنامه های خط فرمانی نیز کار نمیکند، زیرا این ویژگی کامل نیست.
چگونه زیرسیستم ویندوز برای لینوکس 2 (WSL2) کار میکند؟
زیرسیستم ویندوز برای لینوکس 2 (WSL2) به گونه ای طراحی شده است که دقیقاً تجربه کاربری مشابه نسخه قبلی خود را ارائه دهد، اما شباهت ها به همین جا ختم می شود.
WSL2 یک هسته کامل لینوکس را در یک ماشین مجازی بسیار کارآمد اجرا میکند. درست مانند WSL1، WSL2 به شما امکان میدهد از طیف وسیعی از توزیع های مختلف لینوکس از جمله Ubuntu، Debian، Kali، openSUSE، Fedora و غیره استفاده کنید. این بدان معناست که اکثر برنامه ها، بسته ها یا دستورات لینوکس بدون مشکل کار میکنند.
توجه: WSL2 از برنامه های رابط کاربری گرافیکی در Windows 11 پشتیبانی میکند.
نحوه نصب Bash در ویندوز 10
این ویژگی در نسخه 32 بیتی ویندوز 10 کار نمیکند، بنابراین مطمئن شوید که از نسخه 64 بیتی ویندوز استفاده میکنید. اگر هنوز از نسخه 32 بیتی ویندوز 10 استفاده میکنید، وقت آن رسیده است که به نسخه 64 بیتی ویندوز 10 بروید.
با فرض اینکه ویندوز 64 بیتی دارید، برای شروع، به Control Panel > Programs > Turn Windows Features On or Off بروید. گزینه “Windows Subsystem for Linux” را در لیست فعال کنید و سپس روی دکمه “OK” کلیک کنید.


هنگامی که از شما خواسته شد رایانه خود را مجددا راهاندازی کنید، روی “Restart now” کلیک کنید. این ویژگی تا زمانی که راه اندازی مجدد نکنید کار نمیکند.
توجه: با شروع بهروزرسانی Fall Creators، دیگر لازم نیست برای استفاده از این ویژگی، حالت برنامه نویس را در برنامه تنظیمات فعال کنید. فقط باید آن را از پنجره ویژگی های Windows نصب کنید.
از طرف دیگر، میتوانید آن را با استفاده از PowerShell نیز نصب کنید. PowerShell را به عنوان مدیر راهاندازی انتخاب کنید، سپس این کد را وارد کنید:
wsl --install
دانلود و نصب همه اجزای مورد نیاز چند دقیقه طول میکشد – پس از انجام، باید کامپیوتر خود را مجددا راه اندازی کنید.


پس از راه اندازی مجدد رایانه، فروشگاه مایکروسافت را از منوی استارت باز کنید و «Linux» را در فروشگاه جستجو کنید.
توجه: با شروع بهروزرسانی Fall Creators، دیگر نمیتوانید Ubuntu را با اجرای دستور «bash» نصب کنید. در عوض، باید Ubuntu یا توزیع لینوکس دیگری را از برنامه Store یا با استفاده از دستور wsl –install -d <Distribution> نصب کنید.


لیستی از همه توزیع های لینوکس در فروشگاه ویندوز را مشاهده خواهید کرد. از زمان بهروزرسانی Fall Creators، این شامل Ubuntu، openSUSE Leap و openSUSE Enterprise میشود، با این وعده که Fedora به زودی وارد میشود.
بهروزرسانی: Debian، Kali و Remix Fedora اکنون در فروشگاه موجود است. «Debian Linux»، «Kali Linux» یا «Fedora Linux» را برای پیدا کردن و نصب آنها جستجو کنید.
برای نصب یک توزیع لینوکس، روی آن کلیک کنید و سپس روی دکمه «دریافت» یا «نصب» کلیک کنید تا آن را مانند هر برنامه دیگر فروشگاه نصب کنید.
اگر مطمئن نیستید که کدام محیط لینوکس را نصب کنید، Ubuntu را توصیه میکنیم. این توزیع محبوب لینوکس قبلا تنها گزینه موجود بود، اما انتخاب های دیگر برای افرادی که نیازهای خاص تری دارند در دسترس هستند.


شما همچنین میتوانید چندین توزیع لینوکس را نصب کنید و هر کدام میانبرهای منحصر به فرد خود را دریافت میکنند. حتی میتوانید چندین توزیع مختلف لینوکس را در یک زمان در ویندوزهای مختلف اجرا کنید.
نحوه استفاده از Bash Shell و نصب نرم افزار لینوکس
اکنون یک پوسته bash خط فرمان کامل بر اساس Ubuntu یا هر توزیع لینوکس دیگری که نصب کردهاید دارید.
از آنجایی که باینری ها یکسان هستند، اگر از Ubuntu استفاده میکنید، میتوانید از دستور apt یا apt-get در Ubuntu برای نصب نرم افزار از مخازن Ubuntu استفاده کنید. فقط از هر دستوری که معمولاً در آن توزیع لینوکس استفاده میکنید استفاده شود. شما به تمام نرم افزارهای خط فرمان لینوکس دسترسی خواهید داشت، اگرچه ممکن است برخی از برنامه ها به خوبی کار نکنند.
برای باز کردن محیط لینوکس که نصب کردهاید، کافیست منوی Start را باز کنید و هر توزیعی را که نصب کردهاید جستجو کنید. به عنوان مثال، اگر Ubuntu را نصب کردهاید، میانبر Ubuntu را راه اندازی کنید.
برای دسترسی آسان تر، میتوانید این میانبر برنامه را به منوی استارت، نوار وظیفه یا دسکتاپ پین کنید.


اولین باری که محیط لینوکس را راه اندازی میکنید، از شما خواسته میشود نام کاربری و رمز عبور UNIX را وارد کنید. اینها نباید با نام کاربری و رمز عبور ویندوز شما مطابقت داشته باشند، اما در محیط لینوکس استفاده خواهند شد.
به عنوان مثال، اگر «bob» و «letmein» را بهعنوان نام کاربری خود وارد کنید، نام کاربری شما در محیط لینوکس «bob» و رمز عبوری که در محیط لینوکس استفاده میکنید «letmein» خواهد بود. اینها صرف نظر از نام کاربری ویندوز و رمز عبور هستند.


با اجرای فرمان wsl میتوانید محیط لینوکس نصب شده خود را راهاندازی کنید. اگر چندین توزیع لینوکس نصب کردهاید، میتوانید محیط پیش فرض لینوکس را انتخاب کنید که این فرمان اجرا میشود.
اگر Ubuntu را نصب کردهاید، میتوانید دستور ubuntu را نیز برای نصب آن اجرا کنید. برای openSUSE Leap 42، از opensuse-42 استفاده کنید. برای SUSE Linux Enterprise Sever 12، از sles-12 استفاده کنید. این دستورات در صفحه هر توزیع لینوکس در فروشگاه ویندوز ذکر شده است.


همچنان میتوانید با اجرای فرمان bash، محیط لینوکس پیش فرض خود را راهاندازی کنید، اما مایکروسافت میگوید این کار منسوخ شده است. این بدان معناست که فرمان bash ممکن است در آینده از کار بیفتد.
اگر تجربه استفاده از پوسته Bash در لینوکس، Mac OS X یا سایر پلتفرم ها را دارید، مشکلی نخواهید داشت.
در Ubuntu، برای اجرای آن باید یک فرمان را با sudo پیوند کنید. کاربر «ریشه» در پلتفرم های UNIX، مانند کاربر «مدیر» در ویندوز، دسترسی کامل به سیستم دارد. سیستم فایل Windows شما در /mnt/c در پوسته Bash قرار دارد.
از همان دستورات ترمینال لینوکس که برای دور زدن استفاده میکنید استفاده کنید. اگر به Command Prompt استاندارد ویندوز با دستورات DOS آن عادت دارید، در اینجا چند دستور اساسی مشترک برای Bash و Windows وجود دارد:
تغییر دایرکتوری: cd in Bash, cd or chdir in DOS
فهرست محتوای فهرست: ls in Bash, dir in DOS
انتقال یا تغییر نام فایل: mv in Bash, move and rename in DOS
یک فایل را کپی کنید: cp in Bash, copy in DOS
یک فایل را حذف کنید: rm in Bash, del or erase in DOS
دایرکتوری ایجاد کنید: mkdir in Bash, mkdir in DOS
از یک ویرایشگر متن استفاده کنید: vi or nano in Bash, edit in DOS
یادآوری این نکته مهم است که برخلاف ویندوز، پوسته Bash و محیط لینوکس آن به حروف بزرگ و کوچک حساس هستند. به عبارت دیگر، “File.txt” با حرف بزرگ با “file.txt” بدون بزرگ متفاوت است.


برای نصب و بهروزرسانی نرمافزار محیط Ubuntu، باید از دستور apt استفاده کنید. حتماً پیشوند این دستورات را با sudo قرار دهید، که باعث میشود آنها بهعنوان روت اجرا شوند – معادل لینوکس Administrator. در اینجا دستورات apt-get هستند که باید بدانید:
دانلود اطلاعات بهروزرسانی شده درباره بسته های موجود: sudo apt update
یک بسته برنامه را نصب کنید: sudo apt install packagename (نام بسته را جایگزین «packagename» کنید.)
یک بسته برنامه را حذف نصب کنید: sudo apt remove packagename (packagename را با نام بسته جایگزین کنید.)
جستجوی بسته های موجود: sudo apt search word (word را با کلمهای که میخواهید نام بسته ها و توضیحات آن را جستجو کنید جایگزین کنید.)
آخرین نسخه بسته های نصب شده خود را دانلود و نصب کنید: sudo apt upgrade
اگر یک توزیع SUSE Linux نصب کردهاید، میتوانید از فرمان zypper برای نصب نرمافزار استفاده کنید.
پس از دانلود و نصب یک برنامه، میتوانید نام آن را در اعلان تایپ کنید و سپس Enter را فشار دهید تا اجرا شود. برای جزئیات بیشتر، اسناد آن برنامه خاص را بررسی کنید.


فونت Ubuntu را برای تجربه واقعی Ubuntu نصب کنید
اگر میخواهید تجربه دقیق تری از Ubuntu در ویندوز 10 داشته باشید، میتوانید فونت های Ubuntu را نیز نصب کرده و در ترمینال فعال کنید. شما مجبور نیستید این کار را انجام دهید، زیرا فونت خط فرمان پیش فرض ویندوز بسیار خوب به نظر می رسد، اما این یک گزینه است که میتوانید انجام دهید.


برای نصب فونت، ابتدا فونت Ubuntu را از وبسایت Ubuntu دانلود کنید. فایل زیپ دانلود شده را باز کنید و فایل “UbuntuMono-R.ttf” را پیدا کنید. این فونت monospace است که تنها مورد استفاده در ترمینال است. این تنها فونتی است که باید نصب کنید.


روی فایل “UbuntuMono-R.ttf” دوبار کلیک کنید و پیش نمایش فونت را مشاهده خواهید کرد. روی “Install” کلیک کنید تا آن را روی سیستم خود نصب کنید.


برای اینکه فونت monospace Ubuntu به یک گزینه در کنسول تبدیل شود، باید تنظیماتی را به رجیستری ویندوز اضافه کنید.
با فشار دادن Windows+R روی صفحه کلید و تایپ کردن regedit و سپس فشردن Enter، یک ویرایشگر رجیستری را باز کنید. به کلید زیر بروید یا آن را کپی و در نوار آدرس ویرایشگر رجیستری قرار دهید:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Console\TrueTypeFont


در قسمت سمت راست کلیک کرده و New > String Value را انتخاب کنید. مقدار جدید را 000 نامگذاری کنید.
روی رشته «000» که ایجاد کردید دوبار کلیک کنید و سپس Ubuntu مونو را بهعنوان داده مقدار آن وارد کنید.


یک پنجره Ubuntu را اجرا کنید، روی نوار عنوان کلیک راست کرده و سپس دستور Properties را انتخاب کنید. روی تب “Font” کلیک کنید و سپس “Ubuntu Mono” را در لیست فونت انتخاب کنید.


نرم افزاری که در پوسته Bash نصب میکنید به پوسته Bash محدود میشود. میتوانید از Command Prompt، PowerShell یا هر جای دیگری در Windows به این برنامه ها دسترسی داشته باشید، اما فقط در صورتی که فرمان bash -c را اجرا کنید.
منبع : howtogeek