آموزش لینوکس (Linux)

آنچه در این صفحه می خوانید :

تاریخچه لینوکس

لینوکس در سال 1991 با شروع یک پروژه شخصی توسط دانشجوی فنلاندی، Linus Torvalds برای ایجاد یک سیستم عامل جدید آغاز شد. از آن زمان به بعد، هسته لینوکس نشان دهنده رشد ثابت آن در طول تاریخ است. بدین صورت که از تعداد کمی از فایل های C تحت مجوز منع توزیع تجاری به نسخه 4.15 در سال 2018 با بیش از 23.3 میلیون خط کد منبع، بدون شمردن کامنت ها تحت مجوز عمومی GNU v2 رشد کرده است. Torvalds شروع به توسعه هسته لینوکس در MINIX کرد و برنامه های کاربردی برای MINIX نوشته شده بود که در لینوکس نیز استفاده می شد. بعدها، لینوکس بالغ شد و توسعه لینوکس بیشتر در سیستم های لینوکس صورت گرفت. توسعه دهندگان برای ادغام اجزای گنو با هسته لینوکس، ساخت یک سیستم عامل کاملا کاربردی و رایگان کار کردند.

معرفی لینوکس

لینوکس یک خانواده از سیستم عامل های مشابه یونیکس و اوپن سورس است که بر پایه هسته سیستم عامل لینوکس منتشر شده است. لینوکس به طور معمول در توزیع های لینوکس بسته بندی می شود. توزیع ها شامل هسته لینوکس و پشتیبانی از نرم افزار سیستم و کتابخانه ها، که بسیاری از آنها توسط پروژه GNU ارائه شده است. بسیاری از توزیع های لینوکس از نام «لینوکس» استفاده می کنند. توزیع های محبوب شامل Debian، Fedora و Ubuntu هستند. توزیع های تجاری عبارتند از Red Hat Enterprise Linux و SUSE Linux Enterprise Server. توزیع های لینوکس دسکتاپ شامل یک سیستم پنجره مانند X11 یا Wayland و یک محیط دسکتاپ مانند GNOME یا KDE Plasma 5 می باشند. توزیع های مورد نظر برای سرورها ممکن است تمام گرافها را حذف کنند یا شامل یک پشته راه حل مانند LAMP باشند. از آنجا که لینوکس آزادانه قابل توزیع است، هر کسی ممکن است یک توزیع برای هر هدف ایجاد کند.

لینوکس در اصل برای رایانه های شخصی مبتنی بر معماریx86 ساخته شده است، اما از آن زمان به سیستم عامل های بیشتری نسبت به بقیه سیستم عامل ها منتقل شده است. لینوکس سیستم عامل پیشرو در سرورها و دیگر سیستم های بزرگ mainframe و تنها سیستم عامل مورد استفاده در سوپر کامپیوترهای TOP500 است و از نوامبر 2017، به تدریج تمام رقبا را حذف کرد. لینوکس در حدود 2.3 درصد از رایانه های رومیزی مورد استفاده قرار می گیرد. Chromebook سیستم عامل Chrome OS را بر پایه هسته لینوکس اداره می کند و بر بازار آموزش K-12 ایالات متحده غلبه دارد و تقریبا 20 درصد از فروش نوت بوک های زیر 300 دلار در ایالات متحده را نشان می دهد. لینوکس نیز بر روی سیستم های جاسازی شده، یعنی دستگاه هایی که سیستم عامل آن به طور معمول در firmware ساخته شده است، اجرا می شود و به بسیار در خور سیستم است. این شامل روترها، کنترل های اتوماسیون، تلویزیون ها، ضبط کننده های ویدئویی دیجیتال، کنسول های بازی های ویدئویی و smartwatches است. بسیاری از گوشی های هوشمند و تبلت ها، اندروید و سایر مشتقات لینوکس را اجرا می کنند. به دلیل تسلط اندورید در گوشی های هوشمند، لینوکس بزرگترین پایگاه نصب شده در تمام سیستم عامل های عمومی است. لینوکس یکی از مهمترین نمونه های همکاری نرم افزار رایگان و اوپن سورس است. کد منبع ممکن است توسط هر کسی تحت شرایط مجوزهای مربوطه مانند GNU General Public License مورد استفاده، اصلاح و توزیع تجاری یا غیر تجاری قرار گیرد.

چرا از لینوکس استفاده کنیم؟

لینوکس تقریبا در هر سرور مورد استفاده قرار می گیرد.

لینوکس برای سرورها استاندارد است. لینوکس مدتها پیش محبوب ترین نرم افزار HTTP سرور بوده و به طور جدی بر روی هسته لینوکس ساخته شده است. کاربران سازمانی ممکن است نسبت به ویندوز برای سازگاری با شرایط کاری به ویندوز متکی باشند، اما مدیران سرور عموما در لینوکس کار می کنند. اگر می خواهید با کارشناسان کار کنید، باید لینوکس را درک کنید.

لینوکس برای محیط های توسعه، استاندارد است.

توسعه دهندگان نیز به لینوکس علاقه دارند، نه فقط به دلیل آن که با سرور HTTP محبوب است. بخشی از این علاقه به سنت مربوط می شود. برنامه نویسان کامپیوتر اولیه از سیستم های مبتنی بر یونیکس استفاده می کردند. البته، این یکی از معدود سیستم عامل های موجود در آن زمان بود و در دانشگاه بسیار محبوب بوده است. امروزه، توسعه دهندگان مدرن نیز همین کار را می کنند. این برای برنامه نویسی نیز بسیار مؤثر است، به لطف بخشی از پوسته قدرتمند و فلسفه سیستم های مبتنی بر یونیکس، "همه چیز یک فایل" است.

ترمینال نیتیو قدرتمند و شل

شبیه خیلی از سیستم عامل های مبتنی بر یونیکس مانند macOS، تمام توزیع های لینوکس دارای یک پوسته قدرتمند هستند که اغلب Terminal نامیده می شود. این رابط فقط متنی برای نزدیک تر شدن به جسم و به روح کامپیوتر شما است و به طریقی قدرتمند ترین ابزار در بیشتر توزیع های لینوکس می باشد.

توانایی کاربران برای حل مشکلات

در لینوکس، کاربر می تواند مشکلات خود را حل کند. این نیز می تواند یک موضوع نزولی باشد زیرا اغلب به این معنی است که کاربر باید مشکلات خود را حل کند. با این حال، به عنوان یک ابزار آموزشی، هیچ چیز بهتر از حل یک مشکل واقعی برای خودتان نیست. این به این معنی است که اکثرا به ما تولید برنامه را آموخته اند و این باعث می شود که توانایی مدیریت بهتر سیستم را نیز یاد بگیرید.

دسترسی کاربران به سیستم های بحرانی را محدود نمی کند.

همانطور که رایانه ها گسترده تر شده اند، دسترسی کاربران به سیستم های بحرانی محدود تر شده است. هر ساله، سیستم عامل های اصلی، کاربر را به نام امنیت محدود می کنند. متاسفانه اغلب آنها درست هستند، زیرا فقط درصد کمی از کاربران به اندازه کافی می دانند که سیستم خود را مسئولانه مدیریت کنند، بنابراین محال است که کاربران متوسط را برای جلوگیری از آسیب های احتمالی یا خطاهای قابل پیشگیری استفاده کند. اما اگر شما یکی از معدود افرادی هستید که در راه تکنیک های هوشمندانه هستید، لینوکس به شما آزادی بیشتری می دهد. شما می توانید چیزی را که می خواهید بریزید و آن را نیز حل کنید تا زمانی که به اندازه کافی هوشمند باشید.

ثبات بالاتر از سایر سیستم ها

هنگامی که شما نیاز به اجرای یک سیستم مهم جهت ماموریت حیاتی دارید، مانند یک رایانه کنترل ترافیک هوایی، آن را ساده و مدولار ساختید یک مشکل در یک سیستم نباید بر دیگر بخش ها تاثیر بگذارد. لینوکس دقیقا بر اساس این فلسفه ساخته شده است، با هسته قوی با انعطاف پذیری یونیکس و همچنین بسته های گسترده آزمایش شده برای آن پشتیبانی می شود.

لینوکس اوپن سورس و رایگان است.

هزینه سیستم عامل شما چیزی نیست که شما به آن فکر کرده اید. ممکن است ویندوز حدود 100 دلار برای مجوز شخصی هزینه کند، اما با توجه به اینکه به ندرت شما سیستم عامل را خریداری می کنید،به سختی قابل تحمل است. اما اوپن سورس به معنی امن تر و وسیع تر است به طور گسترده ای استفاده می شود.

امنیت بیشتر

امنیت بخش مهمی از محیط کاری لینوکس است. از آنجا که این سیستم توسط یک جامعه اوپن سورس ساخته شده است، تعداد زیادی چشم به طور مداوم سیستم امنیتی را بررسی می کنند. با تسلط لینوکس در فضای سرور، نیز برای امنیت وب بسیار مهم است. به همین ترتیب، توسعه ایمن لینوکس برای دنیای مدرن فناوری بسیار مهم است، زیرا بیشتر فناوری های وب بر روی شانه سرورهای قابل اعتماد و امن قرار دارد. البته هیچ چیز کاملا امن نیست، اما عموما امن تر از جایگزین است.

انعطاف پذیری بیشتر

در لینوکس تقریبا می توان هر چیزی را که می خواهید بسازید. در خارج از هسته اصلی شما می توانید اساسا یک سیستم عامل با اضافه کردن بسته ها توزیع خود را بسازید. اگر بخواهید وقت خود را برای ساختن آن آماده کنید، می توانید هر چیزی که می خواهید، از یک سرور ضد گلوله گرفته تا زیبایی که تا به حال دیده اید را ایجاد کنید.

هیچ کس شما را تماشا نمی کند مگر اینکه شما آن را بخواهید.

درجه تله متری فانتزی برای جاسوسی مالی مبتنی بر پایه کاربر شما در سیستم عامل های مدرن می تواند نگران کننده باشد. لینوکس هیچ کدام از این ها را ندارد مگر اینکه شما آن را نصب کنید. با توجه به حجم پایه کاربر لینوکس، تعداد کمی از موسسات سودجو انگیزه ای برای ایجاد برنامه های مزاحم ردیابی برای لینوکس دارند. خارج از محیط مرورگر استاندارد شما، هیچ ابزار ردیابی در سطح سیستم به طور پیش فرض نصب نشده است. شما نمی توانید همین موضوع را در مورد ویندوز یا macOS بگویید.

توزیع های لینوکس

توزیع های لینوکس توسط افراد، گروه های نه چندان متشکل و سازمان های حرفه ای گوناگون ایجاد می شوند. این توزیع ها شامل تعدادی نرم افزار سیستم و برنامه های کاربردی به همراه روالی مشخص برای نصب آنها بر روی رایانه هستند. توزیع ها به طور معمول برای منظورهای مختلفی از جمله محلی سازی، پشتیبانی از یک معماری خاص، برنامه های بلادرنگ (real-time applications) و سامانه های جاسازی شده (embedded systems) بوجود می آیند و برخی از آن ها آگاهانه تنها از نرم افزارهای آزاد استفاده می کنند.یک توزیع همه منظوره معمولی شامل هسته لینوکس، کتابخانه ها و ابزارهای گنو، پوسته های خط فرمان و انبوه بی شماری از نرم افزارهای کاربردی از مجموعه های اداری و سیستم پنجره ای اِکس گرفته تا مفسرها، ویرایشگرهای متن و ابزارهای علمی است.

Debian:یک توزیع غیر تجاری که توسط جامعه‌ای از توسعه دهنده‌های داوطلب نگهداری می‌شود که تعهد قوی ای به قواعد نرم‌افزارهای آزاد دارند.

Ubuntu:توزیع دسکتاپ و سرور از دبیان که توسط شرکت انگلیسی Canonical Ltd پشتیبانی می شود.

Kali:یک توزیع از لینوکس بر پایه دبیان و توسط .Offensive Security Ltd ساخته شده است که توسط متخصان امنیتی برای انجام عملیات تست نفوذ و جرم یابی قانونی دیجیتال یا توسط هکرها برای انجام عملیات نفوذ، هک و کرک به کار برده می‌شود.

CentOS:توزیع حاصل از منابع مشابهی که توسط Red Hat استفاده می شود و توسط یک انجمن داوطلب اختصاصی توسعه دهندگان با نسخه های سازگار با نسخه های100٪ Red Hat پشتیبانی می شود و نسخه ارتقا یافته است که همیشه 100٪ سازگار نیست.

RedHat:یک مشتق تجاری از فدورا توسط Red Hat نگهداری و پشتیبانی می شود. این نسخه برای ارائه آزمایش، امنیت و پایداری لینوکس سرور و ایستگاه کاری برای کسب و کار است.

Arch linux:یک توزیع که بر پایهٔ قوانین KISS بنا شده همراه با سیستم انتشار rolling می باشد.

Slackware:اولین توزیع هنوز زنده لینوکس که شاخه بزرگی از توزیع ها از آن اشتقاق یافته‌اند یا مانند آرچ بعضی دیگر آن را در مواردی مانند اصل KISS الگو قرار دادند. اسلکور با کمترین تغییر در بسته‌های همراه خودش، پایدارترین لینوکس به حساب می‌آید.

Fedora: یک توزیع بر پایه جامعه است که توسط ردهت سرپرستی می‌شود.

Gentoo:یک توزیع هدفمند برای کاربران شناخته شده برای سیستم FreeBSD Ports مانند سیستم خودکار برای کامپایل برنامه ها از کد منبع ایجاد شده است.

Knoppix:اولین توزیع که کاملا از یک رسانه قابل حمل در دیسک سخت بدون نصب اجرا می‌شود و از دبیان مشتق شده‌است.

Linux Mint Debian Edition:توزیع مبتنی و سازگار با اوبونتو و پشتیبانی از چندین محیط دسکتاپ را شامل می شود.

Mandriva Linux:یک توزیع مشتق شده از ردهت که در فرانسه و برزیل محبوب است، امروزه با همان نام و به‌وسیله یک شرکت فرانسوی اداره می‌شود.

openSUSE:توزیع عمومی که عمدتا توسط شرکت SUSE آلمان پشتیبانی می شود.

 

تفاوت بین لینوکس و سیستم عامل های دیگر

در بسیاری موارد، لینوکس مشابه سایر سیستم عامل هایی است که شما قبلا از آن ها استفاده کرده اید، مانند ویندوز، OS X یا iOS. لینوکس مانند سایر سیستم عامل ها دارای یک رابط گرافیکی و انواع نرم افزار است که شما بر اساس عادت در سایر سیستم عامل ها از آنها استفاده می کردید مانند اپلیکیشن های پردازش متن که دارای معادلات لینوکس هستند. اما لینوکس در موارد متعددی نیز از سیستم های عامل های دیگر متفاوت است. اول و شاید مهمتر از همه، لینوکس نرم افزار متن باز است. کد مورد استفاده برای ایجاد لینوکس رایگان است و برای عموم مردم برای مشاهده، ویرایش و برای کاربران در دسترس است. اگرچه قطعات اصلی سیستم عامل لینوکس عموما رایج هستند، توزیع های زیادی از لینوکس وجود دارد که شامل آپشن های مختلف نرم افزاری هستند. این بدان معنی است که لینوکس فوق العاده قابل تنظیم و سفارش سازی است، زیرا اپلیکیشن هایی مانند پردازنده های کلمه و مرورگرهای وب را نمی توان تغییر داد. کاربران لینوکس نیز می توانند کامپوننت های اصلی را انتخاب کنند، مانند این که کدام سیستم گرافیک و سایر کامپوننت های رابط کاربری را نمایش می دهد. یونیکس یک سیستم عامل ساخته شده در دهه 1970 در آزمایشگاه Bell توسط Ken Thompson ،Dennis Ritchie و دیگران است. یونیکس و لینوکس به طرق مختلفی مشابه هم هستند و در واقع لینوکس برای شبیه بودن به یونیکس ایجاد شده است. هر دو ابزار مشابهی برای ارتباط با سیستم ها، ابزار برنامه نویسی، طرح بندی های فایل سیستم و سایر کامپونت های کلیدی دارند. با این حال، یونیکس رایگان نیست. در طول سال ها، تعدادی از سیستم عامل های مختلف ایجاد شده اند و تلاش کرده اند تا "یونیکس مانند" یا "سازگار با یونیکس" باشند، اما لینوکس موفق تر از آنها بوده و از محبوبیت بیشتری هم برخوردار است.

ویژگی های لینوکس

بعنوان یک سیستم عامل، برخی از ویژگی های لینوکس عبارتند از:

  • قابل حمل (Multiplatform)
  • چند وظیفه ای
  • چند کاربره
  • چند پردازنده (SMP) پشتیبانی
  • پشتیبانی Multithreading
  • حافظه مجازی
  • سیستم فایل سلسله مراتبی
  • رابط کاربری گرافیکی (سیستم پنجره X، Wayland)
  • امنیت و پایداری
  • پایین بودن هزینه
  • مطابقت با آخرین سخت افزارها
  • لینوکس یک سیستم عامل رایگان است و بیشتر توزیع های آن به راحتی در سطح اینترنت برای دانلود در دسترس هستند.

گواهینامه های لینوکس

آزمون بین المللی REDHAT

  • (Red Hat Certified System Administrator (RHCSA
  • (Red Hat Certified Engineer (RHCE
  • (Red Hat Certified Virtualization Administrator (RHCVA
  • (Red Hat Certified Datacenter Specialist (RHCDS
  • (Red Hat Certified Security Specialist (RHCSS
  • (Red Hat Certified Architect (RHCA

آزمون بین المللی LPIC

  • Linux Essentials
  • (Junior Level Linux Certification (LPIC-1
  • (Advanced Level Linux Certification (LPIC-2
  • (Senior Level Linux Certification (LPIC-3

آزمون بین المللی Novell

  • Novell Certified Linux Engineer
  • Certified Linux Administrator
  • Certified Linux Desktop Administrator
  • Novell Certified Linux Professional

آزمون بین المللی ORACLE

  • (Oracle Solaris System Administrator (OCA
  • (Oracle Solaris System Administrator (OCP
  • (Oracle Solaris Network Administrator (OCE
  • (Oracle Solaris Security Administrator (OCE
  • (Oracle Solaris Cluster System Administrator (OCP
  • (Oracle Linux Administrator (OCA
  • Oracle Linux Certified Implementation Specialist
  • Managing Oracle on Linux Certified Expert

آزمون بین المللی IBM

  • IBM Certified Systems Expert – Enterprise Technical Support for AIX and Linux
  • IBM CSE – Virtualization Technical Support for AIX and Linux
  • IBM CSE – High Availability for AIX Technical Support and Administration
  • IBM Certified Operator – AIX Basic Operations
  • IBM Certified System Administrator – AIX

آزمون بین المللی HP

  • CSA – HP-UX
  • CSE – Specialty in High Availability – HP-UX
  • CSE – Specialty in Networking and Security – HP-UX
  • CSE – Specialty in Virtualization – HP-UX

آزمون بین المللی BSD

  • (BSD Associate (BSDA
  • (BSD Professional (BSDP

آزمون بین المللی GIAC

  • (GIAC Certified UNIX Security Administrator (GCUX
آیا این نوشته را دوست داشتید؟