سیستم عامل CentOS چیست؟
سیستمهای عامل کسبوکار باید به تعدادی معیار برآورده کنند: به عنوان مثال، برای نرمافزارهای مدیریت سیستم مربوطه، پشتیبانی جامع از تیم توسعهدهنده یا فروشندگان بسیار حیاتی است. فقط با این روش، بهبودات نرمافزاری منظم و برطرفکردن باگها، همچنین بروزرسانیهای امنیتی برای محافظت در برابر بدافزارهای جدید و بستن هرگونه شکاف امنیتی امکانپذیر میشود. این همچنین برای بهرهبرداری مداوم از برنامههای کسبوکار، ضروری است که پایداری رابطها بین سیستمعامل و برنامههای استفاده شده (سازگاری پشتیبانی از نسخههای قبلی) تضمین شود. یک راهکار کسبوکاری، که بسیار محبوب است و همچنین منبع باز است، توزیع لینوکس CentOS میباشد.
CentOS: تاریخچه فرزند RHEL
سیستم عامل انترپرایز جامعه، به اختصار CentOS، یک توزیع لینوکس است که در مارس 2004 منتشر شد. این پروژه متن باز که توسط یک جامعه بزرگ توسعه و پشتیبانی می شود، بر اساس بسته های منبع Red Hat Enterprise Linux (RHEL) ساخته شده است. این توزیع تجاری فقط در ارتباط با قراردادهای پشتیبانی پرداخت شده قابل استفاده است. Red Hat، ارائه دهنده RHEL، ملزم است کد منبع را برای رضایت بخشیدن مجوزهای رایگان مختلف مؤلفه های نرم افزاری گنجانده شده، به طور عمومی در دسترس قرار دهد. پروژه CentOS به توسعه دهندگان اجازه داد تا بر روی کد منبع RHEL هنگام برنامه نویسی معادلی آزاد برای استفاده ساخت.
تمام نسخههای قبلاً منتشر شده CentOS بر اساس نسخههای انتشار RHEL میباشند و همچنین با محصول Red Hat سازگاری دودویی دارند. تمام برنامههایی که برای سیستم تجاری در دسترس هستند، بدون هیچ محدودیتی و کامپایلرهای اضافی کار میکنند. در ابتدای سال 2014، کارمندان Red Hat و توسعهدهندگان پروژه CentOS (هنوز مستقل) برای تشکیل تیمی به نام "هیئت مدیره" با هم همکاری کردند. از آن زمان، این تیم عمدتاً مسئول توسعه بیشتر توزیع و پشتیبانی از گروههای کاری مختلف (هسته سیستم، پشتیبانی، طراحی و غیره) بوده است.
چه کاری انجام میدهد توزیع CentOS؟
CentOS یک پلتفرم تجاری است، دقیقاً مانند سرآیند خود، RHEL، و بهترین گزینه برای شرکتها و سازمانهای بزرگ است. در اصل، توزیع لینوکس نیز میتواند در بخش خصوصی مورد استفاده قرار گیرد، اما توسعهدهندگان به این گزینه تاکید زیادی نمیکنند. توزیع لینوکس در حال حاضر به عنوان سیستم عاملی برای وبسرورها بسیار محبوب است. بر اساس w3techs.com (ژانویه 2017)، استفاده از Ubuntu و Debian بیشتر میشود.
به عنوان یک توزیع تجاری، CentOS دارای ویژگیهایی است که RHEL را برای شرکتها ارزشمند میکند:
پایداری: CentOS برای فراهم کردن پلتفرم کامل برای آخرین نرمافزارها، به طور مداوم در حال توسعه است. سازگاری برنامههای قدیمیتر همیشه مد نظر است. گامهای توسعه آینده همیشه به گونهای انجام میشود که پایداری مؤلفههای فعال نیز تضمین شود. سیستم در زمینه مجازیسازی (بر روی ماشین مجازی مبتنی بر هسته، KVM) و دسترسی بالا بسیار قدرتمند است، به همین دلیل توزیع نیز هنگام عملکرد مجازیسازی و سرورهای ابری، اثر خوبی برجای میگذارد.
امنیت: موضوع امنیت اکنون بیش از هر زمانی دیگری اهمیت دارد، به همین دلیل CentOS به عنوان یک راهحل کارآفرینی با پیشزمینه RHEL یک گزینه عالی است. کد منبع پایه Red Hat از نظر امنیت در سطح بالایی قرار دارد، به لطف شناسایی پیشرونده آسیبپذیریها توسط تیم امنیتی شرکت نرمافزاری آمریکایی. علاوه بر این، بررسی امنیت و خطاها اولویت اول برای هر بهروزرسانی CentOS است و در ادغام برنامههای جدید. توزیع لینوکس نیز از افزونه هسته SELinux (لینوکس با امنیت تقویت شده) پشتیبانی میکند، یک محصول منبع باز که از همکاری بین Red Hat و NSA ساخته شده است. این برنامه بررسیهای مجوز برای استفاده از منابع کامپیوتر را پیادهسازی میکند و در نتیجه در برابر دسترسیهای غیرمجاز محافظت میکند.
چرخههای نگهداری و پشتیبانی طولانی: از اولین نسخه CentOS، انتشارهای کوچک و بزرگی وجود داشته است که به موارد مرتبط با RHEL مربوط میشوند. تیم توسعه دهندگان دورهای را بین 2 تا 6 هفته (یا چند ساعت برای بهروزرسانیهای کوچک) برای فرآیند سازگاری کد برآورد میکند. شمارههای نسخه به سادگی حفظ میشوند (به عنوان مثال، RHEL 6.2 به CentOS 6.2). از نسخه 7 به بعد، مهر زمانی اضافه شده است که نشاندهنده انتشار کد پایه است. به عنوان مثال، نسخه 7.0-1406 نشان میدهد که منبع در ژوئن 2014 منتشر شده است. علاوه بر نسخهبندی، CentOS همچنین رهنمودهایی را برای دوره پیگیری به عنوان بخشی از سیاستهای خود پذیرفته است: تا 7 سال پشتیبانی عمومی و تا 10 سال ارائه بهروزرسانیهای امنیتی (تا نسخه 5.0، این مقدار تا 4 و 7 سال بود).
مانند RHEL، نصب CentOS از طریق مدیر گرافیکی آسان استفاده، Anaconda انجام میشود. در زمینه مدیریت بستهها (RPM) و مدیریت نرمافزار (yum)، CentOS از مؤلفههای تستشده و تأییدشده Red Hat استفاده میکند. با این حال، برنامههای RHEL معمولاً روی معادل رایگان اجرا میشوند، اما آنها اغلب گواهینامه و پشتیبانی از فروشندگان مربوطه را ندارند، به همین دلیل همیشه نمیتوان اطمینان داشت که به درستی با CentOS کار کنند.
Architecture | CentOS 4 | CentOS 5 | CentOS 6 | CentOS 7 |
---|---|---|---|---|
i386 systems (AMD, Via, 32-bit Pentium) | yes | yes | yes | yes |
x86_64 systems (AMD64/EM64T) | yes | yes | yes | yes |
ia64 systems (Itanium2) | yes | no | no | no |
s390/s390x systems (IBM zSeries & IBM S/390) | yes | no | no | no |
ppc/ppc64 systems (IBM Power, Mac) | yes | no | no | no |
SPARC systems (Sun SPARC processors) | yes | no | no | no |
Alpha systems (DEC Alpha processors) | yes | no | no | no |
Armhfp systems (arm32) | no | no | no | yes |
aarch64 systems (arm64) | no | no | no | yes |
سیستم عامل لینوکس این ویژگیها را ارائه میدهد:
نسخه جاری CentOS 7.0 (تا ژانویه 2017) بر اساس هسته لینوکس 3.10.0 است که شامل افزایش امنیت SELinux پیادهسازی شده و مجموعه کامپایلرهای GCC (مجموعه کامپایلرهای GNU) را در بر دارد. این مجموعه شامل کامپایلرهای مهمترین زبانهای برنامهنویسی است: C، C++، و Java. توزیع لینوکس نیز از هایپرتردینگ (تقسیم یک پردازنده به دو پردازنده مجازی برای افزایش عملکرد)، Plug and Play، بلوتوث و نسخه 6 پروتکل اینترنت (IPv6) پشتیبانی میکند. کتابخانههای سازگاری برای نسخههای قدیمیتر CentOS 5 و 6 در دسترس هستند. بسته توزیع استاندارد نیز شامل مؤلفههای نرمافزاری زیر است:
وب سرور: httpd 2.4.6 (Apache)
مدیر شبکه LAN: Samba-4.1.x
پایگاه داده: MariaDB 5.5.x، PostgreSQL 9.2.x
زبان اسکریپتنویسی: PHP 5.4، Python 2.7، Perl 5.16.3
رابط دسکتاپ: Gnome 3.14، KDE 4.14
سرور نمایش: X.org 7.7
کاربر ایمیل: Evolution 3.12، Thunderbird 45
مرورگر اینترنت: Firefox 45
مجموعه اداری: LibreOffice 4.3.7
گروههای به ویژه: گروههای پروژهٔ جامعه CentOS
توسعهی بیشتر سیستم لینوکس با تأسیس هیئت نظارت سازماندهی شد. از آن زمان به بعد، تیمهای مختلف - که از اعضای جامعه متنوع تشکیل شدهاند - در گروههای کاری مختلفی کار میکنند که هدف آنها یا گسترش توزیع CentOS است یا بهینهسازی جنبههای عملکردی پروژه CentOS (زیرساخت، اسناد و غیره). کد منبع امکان انجام تغییرات در سیستم را بدون مشاوره با یکی از این گروههای به ویژه (SIGs) فراهم میکند، اما اینها ممکن است تحت برند «CentOS» منتشر نشوند: SIGهای مختلف دارای میزان استقلال خاصی هستند و در اولویت مسئولیت در فرایند توسعه قرار دارند. با این حال، قبل از اینکه نتیجه بتواند به عنوان یک محصول رسمی CentOS نشان داده شده و منتشر شود، رضایت هیئت نظارت لازم است.
سه نوع اعلام شده از گروههای به ویژه عبارتند از:
1. Core SIG: Core SIGها محتوایی را توسعه میدهند که برای نسخه اصلی توزیع لینوکس مربوط است. این گروهها باید فرآیند توسعه را با بروزرسانیهای RHEL احتمالی هماهنگ کنند و در نهایت امضاء و انتشار را انجام دهند. علاوه بر این، آنها باید رهنمودهایی برای انتشار Git و مجوزها توسعه دهند.
2. Variant SIG: اگر هسته باید توسط نسخههای CentOS تغییر کند یا مستقل از سری انتشار رسمی گسترش یابد، این کار در Variant SIGها انجام میشود. پیشنیاز برای پروژههایی مثل این است که باید به جامعه نفع برساند. همه بستههای نرمافزاری اضافی باید قادر باشند به مجوزهای پروژه CentOS اضافه شوند و به موجب درخواست آنها باز شده و صادر شوند. علاوه بر این، وظیفه گروه پروژه بررسی و در صورت لزوم، افزودن کدهای اضافی نوشته شده و منتشر شده توسط کاربران دیگر برای نوع مشخصی از طریق مخزن Git است.
3. Functional SIG: Functional SIGها وظیفهی ایجاد یا مدیریت اجزای مهم پروژه CentOS را دارند. هدف این گروههای کاری این است که برای هر کاربر علاقهمند، مشارکت در توسعهی بیشتر را تا حد ممکن آسان کند. علاوه بر این، هدف این SIGها تقویت جامعه است که با توزیع مسئولیتها و بار کاری بین اعضای فعال بر اساس تواناییهای مربوطه انجام میشود.
یکی از مهمترین گروههای پروژه، AltArch SIG است که قبلاً نمونههای مختلفی از نسخه 7 CentOS را منتشر کرده است. اما نخستین واقعی نوع، CentOS Atomic Host است که توسط CentOS Atomic SIG منتشر شده است. این بر اساس طراحی اصلی است و به خصوص برای استفاده از کانتینرهای Docker طراحی شده است. پروژههای دیگری که در مرحله برنامهریزی یا توسعه قرار دارند، عبارتند از:
Public CI: زیرساخت برای آزمونهای عمومی
Hardening: گروهی از افراد بر روی بهبود امنیت سیستمهای CentOS تمرکز کردهاند و مدیریت پروفایلهای امنیتی، کاهش حملات، حفاظت از اطلاعات و افزایش قابلیت اطمینان در عملکرد سیستمهای CentOS را به دست آوردهاند.
Cloud Instance: گروهی از توسعهدهندگان سعی دارند تا نسخهای از CentOS را بهینهسازی کنند که بتواند به خوبی در محیطهای ابری عمل کند.
PaaS: پلتفرم به عنوان خدمتی که بر پایه CentOS ساخته شده است.
NFV: Network Functions Virtualization یک بسته نرمافزاری فراهم میکند که به عنوان چارچوب اساسی برای توزیع و تأیید کردن عملکردهای شبکه مجازی عمل میکند.
Promo یا Promotion، به گروههایی از جامعه CentOS گفته میشود که با ارائه محتوای تبلیغاتی و بازاریابی، به بهبود شناسایی و شناخت برند و محصولات CentOS کمک میکنند.
این گروههای پروژهای هستند که به توسعه و بهبود سیستم عامل CentOS کمک میکنند و با استفاده از نیروهای جامعه، به رشد و پیشرفت این توزیع لینوکس کمک میکنند.
نصب سیستم عامل CentOS
نحوه نصب سیستم عامل CentOS بر روی کامپیوتر یا سرور خود، ابتدا دریافت پورت و نسخه مناسب را از مرکز دانلود رسمی انجام دهید. در طی این فرآیند، علاوه بر نسخههای جدید، پروندههای نصب و مخازن نسخههای قدیمی CentOS نیز در دسترس است. پس از دانلود، تصاویر باید به CD، DVD یا دستگاه ذخیرهسازی قابل حمل دیگری مانند USB منتقل شوند. در اضافه به نصب کامل معمول، سه نوع نصب متفاوت دیگر وجود دارد:
- LiveCD: این یک نصب کامل رایانه را قابل راهاندازی میکند و محیط اجرایی را فراهم میکند که بدون نیاز به نصب مستقیماً از روی رسانه ذخیرهسازی شروع میشود.
- ServerCD: با این تصویر، نوعی نصبپذیر را دارید که به نسخه کوچکتری از بستهها برای نصب سرورها مجهز شده است.
- NetInstall: تصویر NetInstall، که گاهی به عنوان "حداقل" در دید کلی دانلود لیست میشود، به شما اجازه میدهد که نصب حداقلی شبکهای که به نسخه جاری متصل است، را انجام دهید. به عنوان مثال، با تصویر NetInstall CentOS 6.2، شما نمیتوانید نسخه 6.3 را نصب کنید.
اگر رسانه راهاندازی مورد نظر را ایجاد کردید، میتوانید به صورت مستقیم از آن نسخه CentOS را نصب کنید. به راحتی دکمه "نصب CentOS" را انتخاب کنید و با کلید [Enter] تأیید کنید. سپس نصاب گرافیکی با استفاده از نسخه حداقل NetInstall، شما را در ادامه فرآیند هدایت خواهد کرد.
توضیح مختصری در مورد CentOS Linux
در لیستی از سیستم های لینوکسی قدرتمند، معمولا CentOS اولین گزینه هایی نیست که به ذهن می رسد. این توزیع همه چیز را برای بخش هدف خود در حوزه سرور و کسب و کار فراهم می کند. اگر به دنبال یک سیستم پایدار هستید که می توانید به مدت طولانی استفاده کنید، نسخه RHEL یک گزینه خوب است. CentOS نمی تواند پشتیبانی انحصاری الگوی تجاری را ارائه دهد و برای هر نرم افزار، همانند سیستم Red Hat، گواهی نمی گیرد. با این حال، به دلیل سازگاری دودویی، برنامه ها و ویژگی های امنیتی مختلفی نیز روی سیستم منبع باز اجرا می شوند، که این سیستم دارای مزیت کاملا رایگان بودن است.