آموزش نصب لینوکس
با سلام خدمت همراهان همیشگی؛ با آموزش نصب لینوکس از سری آموزش ویدئویی مایکروجکت در خدمت شما هستیم؛اما قبل از اون :
لینوکس چیست؟ برای افراد مختلف این سوال جوابهای گوناگونی دارد. شخصی آن را هسته سیستم عامل میداند و طرفداران GNU از آن به عنوان بخشی از GNU/Linux یاد میکنند و شاید شبیه به کاربران جدید فکر کنید لینوکس در واقع نام دیگری برای اوبونتو است! با زومیت همراه باشید تا لینوکس را مفصل برای شما توضیح دهیم.
راستش را بخواهید دیدگاه بسیاری از کاربران درباره لینوکس درست است. به صورت واضحتر کلمه “Linux” زمانی که تنها به کار برده شود تنها به هسته سیستم عامل اطلاق میشود، در حالی که GNU/Linux در واقع کل سیستم عامل است که شامل هسته لینوکس و ابزار گنو میشود.
اگر شما مجموعهای از نرمافزارها را در کنار برخی از ابزارها قرار دهید که بتوان همه آنها را با یکدیگر مدیریت کرد، اکنون شما یک توزیع مانند اوبونتو دارید.
تعداد زیادی اجزاهای نرمافزاری مخصوص وجود دارند که میتوانند در کنار یکدیگر سیستم عاملی مانند لینوکس را بسازند. البته که این اجزاهای نرمافزاری مخصوص باید در کنار یکدیگر سازگاری داشته باشند تا نتیجه صحیح و کارآمد بدست آید.
Linux چگونه توسعه پیدا کرد؟
لینوکس در ابتدا به صورت متن باز (Open Source) عرضه شد و هدف از این کار عمومی شدن آن بود. به همین جهت سازنده آن پس از انتشار خبر ساخت لینوکس از همه توسعه دهندگان و متخصصین رایانه دعوت کرد روی این پروژه عمومی کار کنند و آن را گسترش دهند. با توجه به این که لینوکس متن باز بود و توسعه آن هیچگونه محدودیتی نداشت با استقبال برنامه نویسان مواجه شد و در مدت کوتاهی هزاران توسعه دهنده اقدام به دستکاری و بهبود بخشیدن آن نمودند.
تعداد کل افرادی که از ابتدا تا کنون روی لینوکس کار کرده اند به ۴۰۰ هزار نفر می رسد. این تعداد برنامه نویس فعلا روی لینوکس نشان از توجه بالا به آن می باشد و همین باعث شده کاربران بسیاری نیز از لینوکس استفاده نمایند. این توسعه دهنده ها با افزودن امکانات جدید به لینوکس بخش جدیدی به آن اضافه می کنند که به آن توزیع گفته می شود.
توزیع لینوکس چیست؟
توزیعهای لینوکس مجموعه ای از نرمافزار و برنامههای کاربردی است که طی روندی مشخص روی رایانه نصب می شود. به طور معمول توزیعها با اهدافی مشخص از جمله محلیسازی، پشتیبانی از یک معماری خاص و … ایجاد می شوند و کاربران دارای آن هدف هم از آن توزیع استفاده می کنند. تمامی توزیع های لینوکس روی هسته اصلی لینوکس ساخته شده اند و تنها بخش هایی از آنها شخصی سازی شده اند.
شاید این سوال برای شما به وجود آمده است که توزیع دقیقا چیست؟ پیشتر گفته شد که لینوکس به عنوان هسته سیستم عامل می باشد و گنو (GNU/Linux) با استفاده از آن تبدیل به یک سیستم عامل کامل می شود. اما در این سیستم عامل کامل نرم افزارها کجا هستند؟ چه کسی آنها را خواهد ساخت؟ این قسمت مربوط می شود به توزیع. در این بخش توزیع نقش نرم افزار را در لینوکس ایفا می کند. توزیع لینوکس همان نرم افزارهای سیستم عامل لینوکس می باشند که توسط توسعه دهنده های مختلف ساخته می شوند. البته توزیع ها تنها یک نرم افزار نیستند و معمولا شامل مجموعه ای از نرم افزارها هستند که هدفی خاص را دنبال می کنند. بنابراین هسته لینوکس به علاوه گنو یک سیستم عامل ایجاد می کند که توزیع های مختلف می توانند در آن اجرا شوند.
نظر به این که توسعه دهندگان لینوکس امکان شخصی سازی آن به طول دلخواه را داشتند و دست آنها در این موضوع باز بود در مدت کوتاهی نسخه های فراوان از لینوکس ساخته شد و در اختیار کاربران قرار گرفت. برخی از معروفترین توزیع های لینوکس عبارتند از:
- Gentoo
- CentOS
- kali
- Ubuntu Linux
- Linux Mint
- Arch Linux
- Deepin
- Fedora
- Debian
- openSUSE
- Slackware
هسته لینوکس چیست؟
لینوکس هسته یا همان قلب سیستم شما است، اما از چه چیزهایی تشکیل شده است؟ هسته رابط نرمافزاری برای سختافزار کامپیوتر است. هسته با پردازشگر مرکزی (CPU)، حافظه و دیگر اجزای پشتی نرمافزارهای در حال اجرای کامپیوتر ارتباط برقرار میکند. در واقع هسته پایینترین مرحله از اجزای نرمافزای سیستم است که البته از اهمیت بسیار بالایی نیز برخوردار است. اهمیت کرنل به قدری بالاست که اگر مشکلی برای آن پیش آید، هر قطعه نرمافزاری در حال اجرای روی کامپیوتر نیز دچار مشکل خواهد شد.
هسته لینوکس، یک هستهی یک پارچه است که همه سرویسهای اصلی سیستم عامل را درون خود اجرا میکند. مدل جایگزین این هسته، میکروکرنل است که بسیاری از کارها را فرآیندهای خارجی انجام میدهند و هسته تنها کمی بیشتر از هماهنگیها را انجام میدهد.
در حالی که هستههای یکپارچه در روزهای ابتدایی که کاربران برای سختافزار خود هسته را کامپایل میکردند، بسیار خوب عمل میکردند اما این روزها ترکیبهای زیادی از سختافزارها وجود دارد که ساخت آنها به درون یک هسته نتیجهای جز ساخت یک فایل عظیم ندارد.
سیستم عامل معمولا شامل این مورد ها هستش :
Bootloader
برنامه ای هستش که فرایند بوت شدن «بالا آمدن» سیستم رو برای شما انجام میده. بعضی از بوت لودر ها خیلی ساده اند و بعضی ها هم پیچیده. ولی خب در نهایت کار آن ها در لایه منطقی یکی هستش.
Kernel
مهمترین قسمت یک سیستم عامل محسوب می شه، در حقیقت ما بهش می گیم، لینوکس. چون خود لینوکس یک کرنل کلی محسوب میشه. کرنل سی پی یو شما رو کنترل میکنه، حافظه اصلی شما رو در اختیار داره و همچنین اجزای دیگه سخت افزار رو می تونه کنترل کنه. کرنل پایین ترین سطح سیستم عامل محسوب میشه.
Daemons
دیمونس در واقع فرایند های پشت زمینه سیستم شما رو در بر می گیره. که معمولا یا در هنگام بوت شدن سیستم شروع به کار میکنه و یا بعد از اینکه به دسکتاپ وارد شدید.
Shell
به احتمال زیاد چیزی به اسم خط فرمان لینوکس رو شنیده باشید. این قسمت رو شل یا پوسته میگن. در واقع جایی هستش که شما می تونید از طریق متن در یک محیط متنی با کامپیوتر ارتباط برقرار کنید. اینجا جاییه که باعث میشه مردم بیشترین ترس رو نسبت به لینوکس پیدا کنند. البته با حضور دسکتاپ های گرافیکی مدرن کمتر برای انجام کارهای روزمره به محیط کامند لاین احتیاج پیدا می کنیم.
Graphical Server
در واقع این قسمت رو میشه یک زیر سیستم به حساب آورد که می تونه گرافیک رو روی صفحه نمایش، نشون بده. اغلب اوقات ما اون رو با اسم X-Server هم می بینیم.
Desktop Environment
این قسمتی از پازل اصلی هستش که کاربر در واقع به صورت مستقیم باهاش تعامل می کنه. در این بین محیط های دسکتاپ زیادی ارائه شدند که مرسوم ترین هاشون عبارتند از: گنوم، کی دی ای، یونیتی، ایکس اف اس و… . هرکدوم از این محیط های دسکتاپ همراه با خودشون یکسری نرم افزار درون ساخت رو دارن. مثلا فایل منیجر، وب بروزر و چیزهای دیگه که ممکنه با هم متفاوت باشند.
Applications
محیط دسکتاپ لینوکس فراهم کننده برنامه های شما محسوب نمیشه، چون اونا صرفا یکسری از برنامه هایی که ممکنه ضروری باشند رو ارائه می دن، اما لینوکس دقیقا مثل ویندوز و مک هزاران برنامه کاربردی و با کیفیت رو ارائه میده که می تونید اون ها رو به روش های مختلف روی سیستم خودتون نصب کنید و ازشون استفاده کنید.
نصب لینوکس چه مزایایی دارد؟
همانطور که ذکر شد لینوکس توسط توسعه هزاران توسعه دهنده ساخته شده است و به همین دلیل تا حد زیادی پاسخ نیاز کاربران را می دهد. همچنین در این نوع سیستم عامل امکانات مختلفی قرار گفته که نیاز کاربران به سهولت در آن پاسخ داده می شود. همین باعث شده لینوکس کاربران بسیاری در سرتاسر دنیا پیدا کند. در ادامه برخی از مزایای استفاده از لینوکس را ذکر خواهیم کرد.
– نصب لینوکس رایگان است
اگر بخواهید از سیستم عاملی نظیر ویندوز استفاده کنید باید چند صد هزار تومان پول خرج کنید. علاوه بر آن نرم افزارهای جانبی آن نیز نیازمند صرف هزینه می باشد. در حالی که لینوکس رایگان است و نرم افزارهای آن نیز بصورت ارزان یا رایگان در اینترنت موجود است. پس شما می توانید با صرف هزینه کم از لینوکس استفاده کنید.
– نصب لینوکس امن است
سیستم عامل برپایه لینوکس بسیار امن و قابل اطمینان است و با خیال راحت می توان از سرورهای لینوکسی با سطح امنیتی فوق العاده استفاده کرد. جامعه لینوکس و توسعه دهندگان آن بطور مداوم اشکالات آن را بررسی کرده و آنها را حل می کنند. بنابراین دیگر نیازی به نگرانی از بابت اشکالات سیستمی و باگ های امنیتی وجود ندارد. اگر لینوکس داشته باشید دیگر نیازی به خرید آنتی ویروس نیز ندارید.
– نصب لینوکس سریع است
لینوکس سیستم عاملی سبک است و همین باعث شده سرعت آن نسبت به دیگری سیستم عامل ها بالاتر باشد. در لینوکس منابع سیستم نظیر پردازنده، حافظه و رم دیگر برای راه اندازی سیستم عامل سنگین صرف نمی شود. بنابراین سرعت سیستم کاهش پیدا نمی کند.
– نصب لینوکس پشتیبانی قوی دارد
لینوکس متن باز است و هزاران توسعه دهنده آن را ساخته اند. سازندگان لینوکس که هزاران برنامه نویس از سراسر دنیا هستند بطور مداول مشکلات آن را بررسی کرده و آنها را رفع می کنند. مشکلاتی نظیر باگ و اشکال سیستمی، حفره های امنیتی و نقایص سامانه توسط این توسعه دهنده ها در بروزرسانی ها حل می شود.
– نصب لینوکس نیازی به نصب درایور ندارد
برای استفاده از ویندوز باید درایورهای لازم را روی سیستم نصب کرد. در حالی که لینوکس چنین نیست و لازم نیست روی لینوکس درایور نصب شود. زیرا بیشتر درایورهای لازم در لینوکس گنجانده شده و دیگر شما نیاز به نصب آنها ندارید.
در ذکر ویژگی های لینوکس علاوه بر موارد مذکور موارد دیگری نظیر بروزرسانی های جزء به جزء، امکان بروزرسانی آسان، دسترسی به انواع نرم افزارهای رایگان، استفاده راحت از لینوکس، سازگاری با انواع سخت افزارها (برخلاف ویندوز)، نرم افزارهای جانبی قوی و … نیز وجود دارد.
ماژول های کرنل، برتری نصب لینوکس
کرنل لینوکس ماژولار است، به این صورت که عملکردهای اصلی در فایل کرنل هستند، در حالی که درایورهای اختصاری به صورت ماژولهای جداگانه در مسیر /lib/modules ساخته میشوند.
برای مثال، کرنل اوبونتو نسخه ۶۴ بیتی تنها ۵ مگابایت اندازه دارد، در حالی که ۳۷۰۰ ماژول دیگر هستند که میتوانند بیشتر از ۱۰۰ مگابایت حجم داشته باشند. با توجه به این که تنها بخشی از این ماژولها برای هر دستگاه مورد نیاز است، بنابراین استفاده از همه آنها در کنار کرنل اصلی اشتباه محض است.
به جای اینکه کرنل بخواهد از همه ماژولهای خود استفاده کند، با شناسایی سختافزار میتواند در استفاده یا لود کردن ماژولهای مرتبط تنها بخشهای مورد نیاز را به درون حافظه کرنل وارد کند. در این شرایط کرنل همچنان میتواند با دسترسی به هزاران فایل دیگر از طریق ماژولها یکپارچه باقی بماند. این ویژگی زمانی اهمیت زیادی پیدا میکند که سیستم میتواند وابسته به تغییرات سختافزاری عکس العمل مناسب و صحیح را نشان دهد.
برای مثال حافظه USB خود را به سیستم متصل کنید تا ماژول Usb-Storage در کنار فایل سیستم مورد نیاز برای مونت کردن آن لود شود. به همین شکل، دانگل 3G را به دستگاه وصل کنید تا درایورهای مودم لود شوند. به همین خاطر است که به ندرت نصب درایورهای جدید در زمان اضافه شدن سختافزار نیاز میشود. در واقع همه ماژولها منتظر شما هستند تا سختافزار یا لوازم جانبی دیگری را خریداری کنید تا زمینه را برای استفاده از آن فراهم کنند.
کامپیوترهایی مانند سرورها که با سختافزارهایی مخصوص و تغییر ناپذیر کار میکنند، معمولا از هستهای با تمام درایورهای مورد نیاز برخوردارند و لود کردن ماژولهای مختلف در آنها غیرفعال است. این مورد باعث میشود که مقدار کمی به امنیت دستگاه اضافه شود.
اگر میخواهید کرنل خود را کامپایل کنید، یک نکته لازم و خوب، استفاده از درایورهایی است که سختافزار دائما قرار است از آن استفاده کند. برای مثال میتوان به رابط شبکه و فایل سیستم دیسک سخت و ماژولهایی برای موارد دیگر اشاره کرد که در صورت همراه با کرنل و استفاده همیشگی میتوانند به امنیت دستگاه نیز کمک کنند.
بسیاری از ماژولها در واقع درایورهای سختافزاری هستند و به عنوان یکی از نقاط قوت لینوکس در سالهای اخیر شناخته میشود. با این ماژولهای کرنل که بسیار زیاد هم هستند، نیازی به دانلود و نصب درایورها از جاهای مختلف نخواهید داشت. البته هنوز سختافزارهایی هستند که با ماژولهای کرنل لینوکس پشتیبانی نمیشوند که دلیل آن کدهای جدید یا مجوزهای لازم است تا اینکه بتواند به عنوان بخشی از کرنل قرار گیرد. بهترین مثال برای سختافزارهایی که هنوز به عنوان ماژول کرنل کار خود را شروع نکرده میتوان به کارتهای گرافیکی انویدیا اشاره کرد. کارتهای گرافیکی که به عنوان ماژولهای طرف سوم شناخته میشوند همچنین در اوبونتو به عنوان «درایورهای محدود شده» شناخته میشوند. ماژولهای طرف سوم از طریق مدیریت پکیجها در صورتی که توزیع از آن پشتیبانی کند، قابل نصب هستند.
در غیر این صورت، فایلها باید از طریق منابع کامپایل شوند و به دلیل اینکه با کاربر ارتباط نزدیکی پیدا میکنند، باید هر بار پس از بروزرسانی کرنل دوباره کامپایل شوند. خوشبختانه ابزارهایی مانند DKMS یا «پشتیبانی پویا ماژولهای کرنل» به صورت خودکار تمام ماژولهای طرف سوم را پس از نصب کرنل جدید دوباره کامپایل میکند تا فرآیند ارتقای هسته شبیه به ارتقای یک اپلیکیشن ساده باشد.
شاید دو عبارت «فضای کرنل» و «فضای کاربر» را شنیده باشید. فضای کرنل در واقع حافظهای است که تنها کرنل به آن دسترسی دارد و هیچ برنامهای از کاربر نمیتواند در اینجا نوشته شود. به همین دلیل است که برنامههای کاربران نمیتواند عملیات کرنل را دچار مشکل کند.
فضای کاربر توسط بسیاری از برنامهها دسترسپذیر است. یکی از برتریها یا نقاط متمایز لینوکس نیز به دلیل همین پایداری و امنیتی است که توانسته کرنل را دور از دسترس برنامههای مختلف و حتی برنامههایی که میتوانند به ریشه دسترسی داشته باشند، نگه دارد.
اگر کرنل را به عنوان پایینترین مرحله از سیستم در نظر بگیریم، بالاترین مرحله آن را رابط کاربری تشکیل میدهد. هر چیز دیگری، از کرنل تا رابطهای ظاهر سختافزار و درایورها تا قبل از اینکه از کامپیوتر خود استفاده کنید، قابلیت استفاده ندارند.
رابط کاربری میتواند تعامل با تک تک اجزای مختلف سیستم را امکان پذیر کند و این کار با مدیریت پنجرهها در لینوکس انجام میشود. در گذشته مدیریت پنجرهها، سیستمهایی مستقل بودند که البته هنوز تعدادی از آنها مانند OpenBox یا Enlightenment وجود دارند، اما مدیر پنجرهها حالا به عنوان بخشی از یک محیط دسکتاپ بزرگتر شناخته میشوند. مدیر پنجره مسئول مدیریت پنجرههای روی دسکتاپ است. وظایف مدیر پنجره شامل باز کردن، بستن، محل قرارگیری و دیگر مواردی که میتوان روی پنجرهها انجام داد.
در گذر زمان رابطهای کاربری رشد کردهاند و علاوه بر مدیریت پنجره، ویژگیهای دیگری مانند نوار وظیفه یا منوی لانچر برنامهها توانستهاند محیط دسکتاپ را بسازند.
درخواست مشاوره
برای کسب اطلاعات بیشتر درباره این دوره درخواست مشاوره خود را ارسال کنید و یا با ما در تماس باشید.
درخواست مشاورهmoreدوره های مرتبط
برنامه نویسی شل اسکریپت
در این آموزش که یک ویدئو از سری آموزش های تک قسمتی و رایگان وب سایت مایکروجکت می باشد ما به آموزش کامل مبحث برنامه نویسی شل اسکریپت میپردازیم.این آموزش توسط برنامه نویس ارشد دات نت سید محمد صادق موسوی ضبط شده و در اختیار شما عزیزان قرار خواهد گرفت.
chat_bubble_outlineنظرات
قوانین ثبت دیدگاه
- دیدگاه های فینگلیش تایید نخواهند شد.
- دیدگاه های نامرتبط به مطلب تایید نخواهد شد.
- از درج دیدگاه های تکراری پرهیز نمایید.
- امتیاز دادن به دوره فقط مخصوص دانشجویان دوره می باشد.
برای ارسال نظر باید وارد حساب کاربری خود شده باشید.
majidcloner(مدیریت)
👌🏻👌🏻👌🏻