با انتشار بروزرسانی سالیانهی ویندوز ۱۰، قابلیت برجستهی جدیدی در اختیار توسعه دهندگان قرار خواهد گرفت. این قابلیت با افزودن کامل ابزار Bash shell مبتنیبر اوبونتو به ویندوز ۱۰، امکان اجرای مستقیم نرمافزارهای لینوکس در ویندوز را برای کاربران فراهم خواهد کرد. این کار با افزوده شدن زیرسیستم (Subsystem) لینوکس برای ویندوز که اخیرا به وسیلهی مایکروسافت به ویندوز ۱۰ اضافه شده، ممکن شده است
.بروزرسانی سالیانهی ویندوز ۱۰ موسوم به Redstone در تاریخ ۱۲ مرداد ماه امسال منتشر خواهد شد.
در صورتی که نسخهی پیش نمایش Insider جدید سیستم عامل ویندوز ۱۰ را در رایانهی خود نصب کرده باشید، هماکنون میتوانید ابزار بَش شِل (Bash shell) را در ویندوز نصب کرده و از قابلیتهای آن بهرهمند شوید. ابزار Bash Shell در نسخهی پیش نمایش Insider با شمارهی ساخت ۱۴۳۱۶، به ویندوز ۱۰ افزوده شد که در زمان نگارش این مقاله فقط برای کاربران عضو حلقهی سریع (Fast Ring) قابل دسترس بود. همچنین، این ابزار فقط در نسخهی ۶۴ بیتی ویندوز ۱۰ وجود دارد.
آنچه که باید دربارهی ابزار Bash Shell ویندوز ۱۰ بدانید
Bash Shell یک ماشین مجازی، container یا نرمافزار لینوکسی کامپایل شده برای ویندوز، همانند Cygwin نیست. ویندوز ۱۰، زیرسیستم لینوکس برای ویندوز را به دست آورده است که برپایهی پروژهی نیمهکارهی Astoria مایکروسافت است. این پروژه در خصوص اجرای نرمافزارهای اندروید بر روی ویندوز است.
اینگونه فکر کنید که پروژهی یاد شده، در نقطهی مقابل نرمافزار Wine قرار دارد. درحالی که نرمافزار Wine امکان اجرای نرمافزارهای ویندوز را به طور مستقیم در لینوکس فراهم میکند، زیرسیستم لینوکس برای ویندوز، امکان اجرای مستقیم نرمافزارهای لینوکسی را در ویندوز فراهم میکند!
مایکروسافت با Canonical کار کرده است تا بتواند Bash Shell کامل مبتنی بر اوبونتویی را که در این زیرسیستم اجرا میشود برای کاربران فراهم کند که از لحاظ فنی به هیچ وجه لینوکس محسوب نمیشود. درواقع، لینوکس هستهی زیربنایی سیستم عامل بوده و در اینجا قابل دسترس نیست. به جای آن، زیرسیستم لینوکس برای ویندوز امکان اجرای Bash Shell و دقیقا همان باینریهایی که به طور عادی در اوبونتوی مبتنیبر لینوکس اجرا میشوند را فراهم میکند. طرفداران نرمافزارهای رایگان، اغلب بحث و استدلال میکنند که روی هم رفته سیستم عامل لینوکس باید GNU/Linux نامیده شود؛ زیرا در حقیقت نرمافزارهای GNU بسیاری در هستهی کرنل اجرا میشوند. Bash Shell ویندوز ۱۰ قادر به اجرای تمامی ابزارهای GNU و دیگر نرمافزارهای مربوطه است.
ابزار Bash Shell دارای محدودیتهایی مانند عدم کارکرد با نرمافزار سرور و نرمافزارهای گرافیکی است. Bash Shell برای توسعه دهندگانی که قصد اجرای ابزارهای تحت خط فرمان لینوکسی در ویندوز را دارند، طراحی شده است. این ابزارها به فایل سیستم ویندوز دسترسی دارند اما نمیتوانید از فرمانهای Bash برای خودکارسازی نرمافزارهای عادی ویندوز استفاده کنید. به علاوه، قادر به اجرای فرمانهای بش از خط فرمان استاندارد موجود در ویندوز هم نخواهید بود. در واقع ابزارهای Bash صرفا به فایل سیستم ویندوز دسترسی خواهند داشت. به دلیل این که نسخهی جاری به صورت بتا است، احتمالا هر نرمافزار تحت خط فرمانی در این ابزار عمل نخواهد کرد.
نصب Bash در ویندوز ۱۰
برای شروع کار، ابتدا باید بررسی کنید که حداقل شمارهی ساخت ویندوز ۱۰ مورد استفادهی شما ۱۴۳۱۶ باشد. برای بهرهمندی از ابزار Bash Shell قبل از انتشار رسمی بروزرسانی سالیانه (Anniversary) باید نسخهی پیشنمایش Insider را فعال کنید. ابزار یاد شده، فقط در نسخهی ۶۴ بیتی ویندوز ۱۰ عمل میکند؛ پس در صورتی که هنوز از نسخهی ۳۲ بیتی ویندوز ۱۰ استفاده میکنید، زمان آن فرا رسیده است که به نسخهی ۶۴ بیتی کوچ کنید!
پس از این که نسخهی متناسب با ابزار Bash Shell ویندوز ۱۰ را نصب کردید، نرمافزار Settings را از منوی شروع فراخوانی کرده و به مسیر Update & Security → For Developers مراجعه کنید. در این بخش باید برای فعال کردن حالت توسعه دهنده، گزینهی Developer Mode را انتخاب کنید.
کنترل پنل را باز کرده و بر روی Programs and Features کلیک کنید. سپس در پنجرهی جاری بر روی لینک Turn Windows Features On or Off واقع در سمت چپ کلیک کنید. فهرست پنجرهی Windows Features را به منظور یافتن گزینهی (Windows Subsystem for Linux (Beta به طرف پایین مرور کرده و تیک آن را بزنید. در نهایت بر روی دکمهی OK کلیک کنید.
پس از انجام مراحل یاد شده، بلافاصله درخواست راهاندازی دوبارهی سیستم از کاربر طلب خواهد شد که باید بر روی Restart Now کلیک کنید تا ویژگی انتخاب شدهی جدید در ویندوز نصب شود.
پس از راهاندازی دوبارهی سیستم، منوی شروع را با فشردن دکمهی ویندوز از صفحه کلید باز کرده و پس از تایپ bash، کلید Enter را فشار دهید
در راهاندازی اولیهی فایل bash.exe، درخواست پذیرش شرایط استفاده از خدمات نمایان خواهد شد که بدون شک باید آن را بپذیرید! سپس ابزار یاد شده اقدام به دانلود نرمافزار Bash on Ubuntu on Windows از فروشگاه نرمافزاری ویندوز (Windows Store) کرده و در ادامه، ایجاد یک حساب کاربری و رمز عبور برای استفاده از محیط Bash از کاربر درخواست خواهد شد.
اگر به جای ایجاد حساب کاربری دارای رمز عبور، مایل به خودکارسازی نصب از Bash هستید، میتوانید فرمان زیر را در ابزار خط فرمان ویندوز اجرا کنید. این فرمان به طور خودکار با همهی درخواستها موافقت کرده و دسترسی روت بدون نیاز به رمز عبور را به کاربر پیشفرض اعطا خواهد کرد.
شیوهی استفاده از Bash Shell و نصب نرمافزار لینوکسی
هماکنون خط فرمان Bash Shell کامل مبتنیبر اوبونتو در اختیار شما قرار دارد. به دلیل یکسان بودن باینریها، میتوانید از فرمان apt-get اوبونتو برای نصب نرمافزار از منابع متمرکز اوبونتو استفاده کنید. با این اوصاف، به همهی نرمافزارهای تحت خط فرمان لینوکسی دسترسی خواهید داشت؛ اما به دلیل این که ابزار Bash Shell در نسخهی اولیهی بتا قرار دارد، ممکن است برخی از نرمافزارها به طور کامل و بینقص اجرا نشوند.
به منظور اجرای Bash shell، فقط باید منوی شروع را باز کرده و عبارت bash یا Ubuntu را جستجو کنید. حالا باید نرمافزار Bash on Ubuntu on Windows را در ابزار جستجوی ویندوز مشاهده کنید. برای دسترسی ساده به نرمافزار، میتوانید آیکون میانبر آن را به منوی شروع، نوار وظیفه (taskbar) یا دسکتاپ خود سنجاق (pin) کنید.
اگر قبلا تجربهی استفاده از Bash shell در پلتفرم لینوکس، سیستم عامل مک یا دیگر پلتفرمها را داشته باشید، راحتتر از دیگر کاربران خواهید بود. در اینجا نیازی به استفاده از sudo نیست؛ زیرا یک shell (رابط بین کاربر و هسته) دارای دسترسی کاربر روت در اختیار شما خواهد بود. مانند کاربر Administrator در سیستم عامل ویندوز، منظور از روت، کاربری است که در پلتفرمهای یونیکس (UNIX) دسترسی کاملی به سیستم دارد. فایل سیستم ویندوز شما در محیط بش شل، در مسیر /mnt/c قرار دارد.
میتوانید در این ابزار از همان فرمانهای استفاده شده در ترمینال لینوکس استفاده کنید.
به خاطر داشته باشید که برخلاف ویندوز، Bash Shell و محیط مشابه لینوکس آن، به حروف بزرگ و کوچک حساس است.
آشنایی با Bash – بخش سوم (نام های مستعار)
آشنایی با Bash – بخش دوم ( دستور cd و نماد ها )
آشنایی با Bash – بخش چهارم ایجاد فایل از خط فرمان لینوکس