گنو لینوکس که غالباً با نام لینوکس شناخته میشه، یک سیستمعامل متنباز بر پایه کرنل یونیکس هست که توسط لینوس توروالدز در سال 1991 ارائه شد. نام لینوکس غالباً برای بیان ترکیبی از کرنل لینوکس بهمنظور مدیریت منابع سیستم و واحدهای کاربری پروژه GNU شامل کتابخانهها و برنامههای ضروری، استفاده میشه. مزیتهای قابلتوجه این سیستمعامل از جمله ماهیت متنباز بودن اون باعث شده توجه خیلی از کاربران و متخصصها به گنو/ لینوکس جلب بشه. تو این مقاله آموزش لینوکس، قصد داریم، نکات و جزئیات مهم این سیستمعامل رو با هم بررسی کنیم. پس تا انتهای این مقاله، همراه آموزشگاه مهندسی کندو باشین.
معرفی گنو لینوکس
خیلی از کاربران فقط اسم دو تا از سیستمعاملهای دسکتاپ و لپتاپ رو شنیدن: ماکروسافت ویندوز و macOS اپل. کاربران خیلی کمی از سیستمهای عامل متنباز تحت پوشش گنو لینوکس استفاده کردن و حتی بعضیها هم با وجود استفاده از کروم OS و استفاده اون از کرنل لینوکس، هنوز اطلاعی در مورد این سیستمعامل ندارن.
راستشو بخواین، بهجز پلتفرم کروم OS، سیستمعاملهای گنو لینوکس برای خیلی از کاربرانی که به دنبال نرمافزارهای شناخته شده و معروف هستن، در اولویت نیستن. اما اگر شما به دنبال تغییر سرعت سیستمعامل هستین، یا می خواین پولی بابت نرمافزار خودتون پرداخت نکنین، استفاده از گنو لینوکس نهتنها ارزشمند هست، بلکه میتونه کار شما رو از گذشته، خیلی راحتتر کنه.
تعریف یونیکس، لینوکس و گنو
قبل از بررسی دقیق سیستمهای گنو لینوکس، لازمه تا بیشتر با تعاریف اون ها و آشنا بشیم.
تعریف UNIX
UNIX یک سیستمعامل اختصاصی خط فرمان هست که توسط دنیس ریچی و کن تامسون در آزمایشگاه AT&T بل در اواخر دهه 1960 و اوایل 1970 ارائه شد. UNIX تقریباً با زبان برنامهنویسی C کدنویسی شده و هدف از اون، استفاده هر چه سادهتر از OS توسط برنامهنویسها و محققان بوده.
تعریف لینوکس
لینوکس، سیستمعاملی هست که سختافزارها و نرمافزارهای سیستم رو مدیریت میکنه. این سیستمعامل، واسطی بین سختافزارها و برنامهها هست. لینوکس شبیه UNIX هست، اما میشه اون رو در سختافزارهای مختلف از موبایلها گرفته یا ابررایانهها اجرا کرد. هر OS مبتنی بر لینوکس، دارای یک کرنل لینوکس هست که منابع سختافزاری و بستههای نرمافزاری سیستمعامل رو مدیریت و کنترل میکنن.
لینوس توروالدز در سال 1991، لینوکس رو برای بهبود UNIX معرفی کرد و برای ارائه اون، به کمک توسعهدهندگان UNIX نیاز داشت. بعد از مدتی، لینوکس بهعنوان یک OS مجزا تحت گواهی GNU معرفی شد. این سیستمعامل دارای نرمافزار GNU و کرنل لینوکس هست. مدتها بعد، نسخههای توزیع شده بیشتری از لینوکس ارائه شدن و شهرت زیادی در سراسر جهان پیدا کردن.
بیشتر بخوانید: پرطرفدارترین و بهترین سیستم عامل های لینوکس را بشناسید
تعریف گنو
پروژه گنو، سیستمعامل گنو رو بهعنوان جایگزین UNIX و البته سازگار با اون اجرا کرد. ریچارد استالمن در سال 1983، این پروژه رو بهعنوان یک نرمافزار غیراختصاصی، شروع کرد. این سیستمعامل، امکان دانلود، تغییر و توزیع مجدد نرمافزارهای GNU رو به کاربران میده. طراحی این سیستمعامل، مشابه یونیکس هست اما هیچ کد یونیکسی در اون وجود نداره و بهصورت رایگان، در دسترس هست.
این سیستمعامل دارای بسیاری از برنامههای نرمافزاری، کتابخانهها و ابزارهای توسعهدهنده از جمله یک برنامه قدرتمند هست که منابع رو تخصیص میده و با سختافزارهای اصلی یا کرنل، تعامل داره. شما میتونین بهسادگی از GNU با کرنلهای دیگه استفاده کنین. اجزاء اصلی یک سیستم گنو شامل مجموعه کامپایلر GNU، کتابخانه GNU C، ویرایشگر متنی GNU Emacs و محیط دسکتاپ GNOME هستن.
بیشتر بخوانید: آموزش نصب لینوکس در کنار ویندوز 10
توزیعهای گنو لینوکس
وقتی در مورد منشأ گنو لینوکس صحبت شد، دیدیم که هیچ سیستمعامل منحصربهفردی وجود نداره. درواقع، سه جزء نرمافزاری اصلی وجود دارن که یک سیستم گنو لینوکس رو تشکیل میدن:
کرنل لینوکس
کرنل، بخش مرکزی سیستم هست. اما بدون وجود برنامههای کاربردی، پوستهها، کامپایلرها، ویرایشگرها و ابزارهای دیگه، ما نمیتونیم یک سیستم کامل داشته باشیم.
برنامههای GNU
توسعه لینوکس با نرمافزارهای موجود FSF تحت پروژه GNU تکمیل شده که ابزارهای ویرایشی (مثل emacs)، کامپایلر (gcc) و ابزارهای مختلفی رو ارائه می کنه.
نرمافزارهای واسط
نرمافزارهای این سیستمعامل متنباز هستن. علاوه براین، هر سیستم گنو لینوکس، دارای نرمافزارهای واسط هست که میشه با اون، تعدادی از برنامههای پرکاربرد مثل ابزارهای گرافیکی، سرورهایی مثل آپاچی برای وب، ابزارهای ناوبری و غیره رو اضافه کرد. همچنین میشه از نرمافزارهای اختصاصی هم با توجه به نیازهای توسعهدهندهها استفاده کرد.
دنیای گنو لینوکس محدود به یک شرکت یا جامعهای خاص نیست. درواقع، همه افراد میتونن سیستم خودشون رو بر اساس الزاماتی که دارن، ایجاد کنن.
تفاوتهای مهم لینوکس و GNU
تو این قسمت، میخوایم به تفاوتهای مهم بین دو سیستمعامل لینوکس و گنو اشاره کنیم.
- GNU یک سیستمعامل با انواع نرمافزارهای کامپیوتری متفاوت هست ولی لینوکس، یک نرمافزار رایگان و متنباز هست که بر پایه کرنل لینوکس ایجاد شده. این یکی از تفاوتهای مهم بین این دو تا سیستمعامل هست.
- تمامی نرمافزارهای GNU تحت پروژه GNU قرار دارن ولی لینوکس یک OS مبتنی بر GNU هست.
- هدف از عرضه GNU، جایگزین شدن اون با پروژه پرهزینه UNIX بود. لینوکس یک OS مبتنی بر یونیکس هست که روی کرنل لینوکس ساخته شده.
- لینوکس، کرنل OS هست اما گنو لینوکس یک سیستمعامل نرمافزاری متنباز برای کامپیوترها هست که از نرمافزارها و ابزارهای رایگان تشکیل شده.
مزیتهای گنو لینوکس
حالا که با تعریف و تفاوتهای گنو و لینوکس بیشتر آشنا شدیم، تو این قسمت میخوایم با مزیتهای استفاده از این سیستمعامل بیشتر آشنا بشیم.
رایگان و متنباز
گنو لینوکس بهصورت متنباز و رایگان ارائه میشه بهنحویکه امکان استفاده، اصلاح و توزیع رایگان اون وجود داره. همین مزیت باعث سفارشیسازی، شفافیت و مشارکت جامعه در توسعه اون میشه.
امنیت
گنو لینوکس از ویژگیهای امنیتی خیلی خوبی برخورداره. ماهیت متنباز بودن اون باعث میشه که آزمونهای آسیبپذیری و پچینگ سریع انجام بشه و جامعه توسعهدهندگان اون، همواره به دنبال ارتقای امنیت این سیستمعامل باشن.
پایداری و قابلیت اطمینان
گنو لینوکس از شهرت زیادی به خاطر پایداری و قابلیت اطمینان بالا برخوردار هست و انتخاب مناسبی برای سرورها و سیستمهای بسیار حیاتی محسوب میشه. میشه این سیستمعامل رو برای مدتزمان طولانی بدون نیاز به ریبوت اجرا کرد.
جامعه کاربران
گنو لینوکس، جامعه کاربری بسیار گستردهای داره و گروههای مختلفی توی توزیع و کمک به پشتیبانی نرمافزارها، نقش دارن.
شفافیت
کاربران میتونن کد متن رو بخونن و اون رو اصلاح کرده و به اشتراک بذارن. همچنین توزیعها هم بهصورت آزاد انجام میشن.
معایب گنو لینوکس
در کنار مزیتها، استفاده از گنو لینوکس میتونه محدودیتهایی هم داشته باشه.
منحنی یادگیری
اگر کاربری تابهحال با ویندوز یا macOS کار کرده باشه، آشنا شدن با سیستمعامل گنو لینوکس برای استفاده از برنامهها یا سیستم جدید، یه خرده زمانبر هست.
نرمافزار متفاوت
ممکنه کاربرانی که با برنامههای ماکروسافت آفیس یا مجموعه آدوب کرییتیو آشنا بودن، با برنامههای این سیستمعامل چندان آشنا نباشن.
امکان عدم پشتیبانی سختافزاری
هرچند که سختافزارهای زیادی از گنو لینوکس پشتیبانی میکنن، اما خیلی از سختافزارهای دیگه، این پشتیبانی رو انجام نمیدن. کاربران باید از قبل، این موضوع رو بررسی کنن.
بیشتر بخوانید: مهندس شبکه Linux یا کارشناس پشتیبانی لینوکس کیست؟
کلام پایانی
سیستمعامل گنو و لینوکس، یکی از پرکاربردترین و پرطرفدارترین سیستمهای عامل متنباز در دنیا شناخته میشه. ترکیب نرمافزار GNU و کرنل لینوکس باعث شده تا سیستمعامل امروزی گنو/ لینوکس شکل بگیره. این سیستمعامل علاوه بر اینکه رایگان و متنباز هست، مزیتهای متعدد دیگهای مثل شفافیت، جامعه بزرگ کاربران و امنیت بالا رو داره. همین مزیتها باعث شده تا سیستمعامل محدود 30 سال قبل، به یکی از مهمترین جایگزینهای ویندوز و macOS تبدیل بشه.