Сегодня мы анонсируем доступность релиза операционной системы CentOS 7 в облаке InfoboxCloud , основанного на пакетной базе Red Hat Enterprise Linux 7 и полностью совместимого с ним. В конце поста ссылка на бесплатное тестирование в облаке.

CentOS 7 - первый релиз ОС, после перехода команды CentOS в RedHat. Данная ОС стабильна и готова к корпоративному использованию.

Мы начинаем обзор новой ОС, состоящий из серии теоретических и практических статей. В первой главе обзора будет рассказано о поддержке контейнеров Linux в CentOS 7.

В облаке по умолчанию устанавливается минимальная версия CentOS 7 для обеспечения максимальной безопасности через снижение поверхности атаки. Все необходимые компоненты ОС устанавливаются из стандартных репозиториев.

Ключевые изменения CentOS 7
  • Поддержка контейнеров Linux (включая поддержку Docker ). Контейнеры расширяют возможности по разработке, доставке и изоляции софта для тестовых и производственных задач. Так же контейнеризация увеличивает безопасность ПО, снижая поверхность атаки;
  • Интеграция Active Directory / Identity Management (IdM)
  • Использование systemd , стандарта управления процессами, сервисами, безопасностью и другими ресурсами;
  • Встроенные профили и инструменты для оптимизации производительности и простого масштабирования;
  • Унифицированные инструменты управления и фреймворк управления OpenLMI , являющийся фактически стандартом индустрии для администрирования и настройки системы;
  • Техническая предварительная версия технологии установки обновлений ядра без перезагрузки kpatch ;
Поддержка контейнеров Linux
Docker безусловно выстрелил, породив изрядный шум в блогосфере и социальных сетях. В самых различных областях начали активно использоваться контейнеры для изоляции приложений друг от друга и от внешней среды, как средство доставки и развертывания программного обеспечения.

В контейнерная виртуализация используется уже несколько лет как один из вариантов виртуализации: более быстрый и экономичный, чем гипервизорная технология. Стандартный функционал InfoboxCloud позволяет быстро из панели управления создавать быстрые и эффективные контейнеры с необходимой ОС. Использование контейнеров внутри виртуальной машины InfoboxCloud (флаг "Разрешить управление ядром ОС " при создании сервера в облаке) приносит новые возможности:

  • Сохраняя возможность управления ядром ОС появляется возможность изоляции приложений друг от друга. В случае сбоя одного приложения система останется стабильной.
  • Разработчики хотят предоставлять программное обеспечение, которое легко развертывать, обновлять и масштабировать . Использование контейнеров позволяет иметь больший контроль над средой исполнения программного обеспечения. Появляется возможность создания портативного образа ПО и окружения, который легко переносить между средами исполнения.
Основные возможности контейнеров Linux:
  • Управление ресурсами;
  • Процесс изоляции;
  • Безопасность;
  • Инструменты управления из командной строки.
В контексте контейнеров Linux управление ресурсами организовано через cgroups . Cgroups позволяют пользователю выделять ресурсы, такие как процессорное время, системная память, пропускная способность сети, блок ввода-вывода или любую комбинацию из этих ресурсов для установки ограниченной пользователем группы задач или процессов, запущенных в данной системе. Пользователи могут заниматься мониторингом любых настроенных cgroups, запрещать cgroups доступ к определенным ресурсам, или даже динамически переконфигурировать cgroups на запущенной системе. Используя cgroups, системные администраторы имеют точный контроль за выделением, приоритизацией, уменьшением, управлением и мониторингом системных ресурсов. Аппаратные ресурсы (ресурсы гипервизора) могут быть легко поделены между задачами и пользователями, часто повышая общую эффективность системы. Cgroups – не новая концепция. Она появилась еще в Cent OS 6. В CentOS 7 стали лучше возможности управления контрольными группами через Systemd - менеджер ОС и сервисов.

Изоляция процессов, сердце архитектуры контейнеров Linux, представлена пространствами имен ядра (kernel namespaces ) CentOS. Сейчас Linux реализовывает шесть различных типов пространств имен. Цель каждого - обернуть каждый глобальный ресурс системы в абстракции . Каждый ресурс предоставляется в качестве изолированного инстанса для процесса внутри пространства имен, что обеспечивает изоляцию - иллюзию того, что группа процессов одинока в системе. Пространства имен необходимы, потому что ядро Linux ничего не знает о контейнерах. Задача пространства имен - научить ядро понятию изолированного окружения.

CentOS 7 реализует следующие пространства имен:

  • PID пространство имен предоставляет изоляцию идентификаторов процессов, позволяя процессам в различных пространствах имен PID иметь одинаковые PID. Одно из главных преимуществ пространств имен PID – возможность контейнеров мигрировать между хостами с сохранением тех же идентификаторов процессов внутри контейнера. PID пространство имен позволяет каждому контейнеру иметь собственный процесс инициализации, который управляет различными задачами инициализации системы, и управлять жизненным циклом контейнера.
  • Сетевые пространства имен предоставляют изоляцию сетевых контроллеров, системных ресурсов, ассоциированных с сетями, файрволлов и таблиц маршрутизации. Сетевые пространства имен позволяют каждому контейнеру иметь собственный виртуальный сетевой стек, который ассоциирован с группами процессов. Каждое пространство имен имеет свое собственное loopback устройство и пространство процесса. Виртуальные или реальные устройства могут быть добавлены к каждому сетевому пространству имен, и IP адреса могут быть назначены на эти устройства и использованы как сетевая нода.
  • Пространства имен UTS изолируют два системных идентификатора: nodename и domainname , возвращаемые системным вызовом uname(). Пространства имен UTS позволяют каждому контейнеру иметь собственный hostname и NIS domain name. Это полезно для инициализации и конфигурационных скриптов, которые совершают свои действия на основе этих имен.
  • Пространства имен монтирования изолируют набор точек монтирования файловых систем подобно группе процессов и помогают созданию различных файловых систем только для чтения. Процессы в различных пространствах имен монтирования могут иметь различные видения иерархии файловой системы. В дополнение к пространствам имен монтирования, системные вызовы mount() и umount() перестают действовать в глобальном пространстве точек монтирования (видимом для всех процессов ОС). Вместо этого они действуют только в пределах пространства имен монтирования, ассоциированным с процессом контейнера.
  • IPC пространства имен изолируют определенные ресурсы межпроцессного взаимодействия (IPC), такие, как объекты System V IPC и очереди сообщений Posix. Каждое пространство имен IPC имеет свой собственный набор идентификаторов System V и свою собственную очередь сообщений POSIX файловой системы.
  • Пользовательские пространства имен изолируют идентификаторы пользователя и группы так, что пользовательские процессы и идентификаторы групп могут быть различными внутри и снаружи пользовательского пространства имен. Наиболее интересный случай - когда процесс обычный не привилегированный ID снаружи пользовательского пространства имен и в то же самое время иметь идентификатор пользователя 0 внутри пространства имен. Это означает, что процесс имеет полные root привилегии для операций внутри пользовательского пространства имен, но является непривилигерованным для операций снаружи пространства имен.
Для обеспечения безопасности так же используется SELinux, который, как и в случае с cgroups, не является новой концепцией и существует начиная с CentOS 4. SELinux применяет метки безопасности и политики для контейнеров Linux и их ресурсов, предоставляя дополнительный уровень безопасности поверх безопасности, предоставляемой пространствами имен ядра.

Команда RedHat (вы ведь знаете, кто все это разработал на самом деле) начала работать над Docker начиная с версии 0.7. Вкладом Red Hat был новый драйвер хранения, который позволил Docker запуститься на Cent OS 7. В течении дальнейшего сотрудничества и вклада Red Hat в Docker был разработан новый встроенный драйвер исполнения, основанный на libcontainer, разработанный для доступа к API ядра контейнера напрямую, без сторонних зависимостей. Этот нативный набор инструментов может управлять возможностями ядра системы, такими как cgroups, пространства имен, сетевые интерфейсы, файрвол и другие особенности ядра. Благодаря Red Hat в Cent OS 7 Docker сейчас готов для корпоративного применения.

Таким образом, контейнеры Linux - важная open source технология для упаковки и доставки приложений, сочетая легковесную изоляцию и гибкость методов развертывания, основанных на образах.

Использованные в подготовке статьи источники.

В данной статье ознакомимся еще с одним популярным и актуальным дистрибутивом LinuxCentos (Community ENTerprise Operating System) . Коммерческая основа – Red Hat Enterprise Linux, ОС появилась в 2004 году. Каждая версия поддерживается сроком на 10 лет, релизы обновляется с периодичностью в 6 месяцев. Система считается свободным и популярным аналогом RHEL. Отличается характерной стабильностью и может отлично работать на компьютерах с 64-битной и 32-битной архитектурой.

Важная особенность Centos – на данной ОС работают все программные продукты, которые рассчитаны на Linux . Система поддерживается энтузиастами, но тем не менее новые версии выходят в свет каждые два года и постоянно обновляются. Процесс установки Centos прост и понятен даже для обычного пользователя, и это вовсе не обозначает низкопробность системы, наоборот Centos – полноценная ОС.

Характеристики системы : обновления данной ОС получают через программу yum; сообщество поддержки, которое быстро растет, имеет систему сборки, теста и исправления ошибок; осуществляется поддержка через форумы, имеется большой и понятный FAQ; есть возможность купить платное сопровождение.

Один из самых популярных и актуальных релизов – Centos 7 (всего на данный момент насчитывают 5 версий ОС). Какие основные изменения были внесены в данную версию по сравнению с предыдущими релизами:

  1. Обновление ядра до 3.10.0
  2. Обеспечение Linux Containers
  3. Open VMware Tools и графические 3D драйверы «из коробки»
  4. По умолчанию настроены OpenJDK-7 - JDK
  5. Обеспечение обновления с версии 6.5 до 7.0 (только с 6.5, много весомых изменений)
  6. Снапшоты LVM с ext4 и XFS
  7. Переход на systemd, firewalld и GRUB2
  8. XFS - файловая система по умолчанию
  9. iSCSI и FCoE в ядре
  10. Обеспечение PTPv2
  11. Поддержка сетевых карт 40G Ethernet
  12. Обеспечение установки в режиме UEFI Secure Boot на поддерживаемом оборудовании.

Основные особенности ОС Centos в целом. Ну в первую очередь, Centos привлекает пользователей своей бесплатностью в отличии RHEL, которая предоставляется на коммерческой основе. Со стороны технических аспектов выделяют оперативность репозиториев RHEL на высоком уровне, чем обеспечивается безопасность системы. Используются технологии GCC как SSP (защита стека), PIE. Набор ПО актуальный и типичный для современных ОС: предоставляются версии офисных, серверных и девелоперских пакетов, программ и утилит (KDE и Gnome с compiz и AIGLX, Firefox и Evolution, MySQL и PostgreSQL, Apache и PHP, и т.д.). Также предоставляется подробная техническая документация и имеется большой штат поддержки ОС, к которому можно обратится и получить ответы на все интересующие вопросы по данной системе.

Для работы с ОС Centos на наших ВПС-серверах предоставляем к вашему вниманию несколько инструкций на нашем блоге:

По поводу недостатков системы , пользователи часто отмечают то, что дистрибутив комплектуется не всегда свежими версиями программ, в том числе ядро Linux тоже не всегда новое. Поэтому данная система не подходит для тех, кто любит ежедневные обновления. Хотя любую систему можно обновить на свой “вкус”, и данный недостаток не будет считаться столь существенным.

ОС Centos рекомендована организациям и частным лицам, которым не нужны дорогостоящая лицензия и обслуживание, а стабильность работы сервера находится в приоритете. Компания Hyper Host™ бесплатно установит ОС Centos последней версии на любой из своих тарифов или .

О том, как правильно выбрать ОС для работы сервера, читайте .

25905 раз(а) 56 Сегодня просмотрено раз(а)

Сегодня мы анонсируем доступность релиза операционной системы CentOS 7 в облаке InfoboxCloud , основанного на пакетной базе Red Hat Enterprise Linux 7 и полностью совместимого с ним. В конце поста ссылка на бесплатное тестирование в облаке.

CentOS 7 - первый релиз ОС, после перехода команды CentOS в RedHat. Данная ОС стабильна и готова к корпоративному использованию.

Мы начинаем обзор новой ОС, состоящий из серии теоретических и практических статей. В первой главе обзора будет рассказано о поддержке контейнеров Linux в CentOS 7.

В облаке по умолчанию устанавливается минимальная версия CentOS 7 для обеспечения максимальной безопасности через снижение поверхности атаки. Все необходимые компоненты ОС устанавливаются из стандартных репозиториев.

Ключевые изменения CentOS 7
  • Поддержка контейнеров Linux (включая поддержку Docker ). Контейнеры расширяют возможности по разработке, доставке и изоляции софта для тестовых и производственных задач. Так же контейнеризация увеличивает безопасность ПО, снижая поверхность атаки;
  • Интеграция Active Directory / Identity Management (IdM)
  • Использование systemd , стандарта управления процессами, сервисами, безопасностью и другими ресурсами;
  • Встроенные профили и инструменты для оптимизации производительности и простого масштабирования;
  • Унифицированные инструменты управления и фреймворк управления OpenLMI , являющийся фактически стандартом индустрии для администрирования и настройки системы;
  • Техническая предварительная версия технологии установки обновлений ядра без перезагрузки kpatch ;
Поддержка контейнеров Linux
Docker безусловно выстрелил, породив изрядный шум в блогосфере и социальных сетях. В самых различных областях начали активно использоваться контейнеры для изоляции приложений друг от друга и от внешней среды, как средство доставки и развертывания программного обеспечения.

В контейнерная виртуализация используется уже несколько лет как один из вариантов виртуализации: более быстрый и экономичный, чем гипервизорная технология. Стандартный функционал InfoboxCloud позволяет быстро из панели управления создавать быстрые и эффективные контейнеры с необходимой ОС. Использование контейнеров внутри виртуальной машины InfoboxCloud (флаг "Разрешить управление ядром ОС " при создании сервера в облаке) приносит новые возможности:

  • Сохраняя возможность управления ядром ОС появляется возможность изоляции приложений друг от друга. В случае сбоя одного приложения система останется стабильной.
  • Разработчики хотят предоставлять программное обеспечение, которое легко развертывать, обновлять и масштабировать . Использование контейнеров позволяет иметь больший контроль над средой исполнения программного обеспечения. Появляется возможность создания портативного образа ПО и окружения, который легко переносить между средами исполнения.
Основные возможности контейнеров Linux:
  • Управление ресурсами;
  • Процесс изоляции;
  • Безопасность;
  • Инструменты управления из командной строки.
В контексте контейнеров Linux управление ресурсами организовано через cgroups . Cgroups позволяют пользователю выделять ресурсы, такие как процессорное время, системная память, пропускная способность сети, блок ввода-вывода или любую комбинацию из этих ресурсов для установки ограниченной пользователем группы задач или процессов, запущенных в данной системе. Пользователи могут заниматься мониторингом любых настроенных cgroups, запрещать cgroups доступ к определенным ресурсам, или даже динамически переконфигурировать cgroups на запущенной системе. Используя cgroups, системные администраторы имеют точный контроль за выделением, приоритизацией, уменьшением, управлением и мониторингом системных ресурсов. Аппаратные ресурсы (ресурсы гипервизора) могут быть легко поделены между задачами и пользователями, часто повышая общую эффективность системы. Cgroups – не новая концепция. Она появилась еще в Cent OS 6. В CentOS 7 стали лучше возможности управления контрольными группами через Systemd - менеджер ОС и сервисов.

Изоляция процессов, сердце архитектуры контейнеров Linux, представлена пространствами имен ядра (kernel namespaces ) CentOS. Сейчас Linux реализовывает шесть различных типов пространств имен. Цель каждого - обернуть каждый глобальный ресурс системы в абстракции . Каждый ресурс предоставляется в качестве изолированного инстанса для процесса внутри пространства имен, что обеспечивает изоляцию - иллюзию того, что группа процессов одинока в системе. Пространства имен необходимы, потому что ядро Linux ничего не знает о контейнерах. Задача пространства имен - научить ядро понятию изолированного окружения.

CentOS 7 реализует следующие пространства имен:

  • PID пространство имен предоставляет изоляцию идентификаторов процессов, позволяя процессам в различных пространствах имен PID иметь одинаковые PID. Одно из главных преимуществ пространств имен PID – возможность контейнеров мигрировать между хостами с сохранением тех же идентификаторов процессов внутри контейнера. PID пространство имен позволяет каждому контейнеру иметь собственный процесс инициализации, который управляет различными задачами инициализации системы, и управлять жизненным циклом контейнера.
  • Сетевые пространства имен предоставляют изоляцию сетевых контроллеров, системных ресурсов, ассоциированных с сетями, файрволлов и таблиц маршрутизации. Сетевые пространства имен позволяют каждому контейнеру иметь собственный виртуальный сетевой стек, который ассоциирован с группами процессов. Каждое пространство имен имеет свое собственное loopback устройство и пространство процесса. Виртуальные или реальные устройства могут быть добавлены к каждому сетевому пространству имен, и IP адреса могут быть назначены на эти устройства и использованы как сетевая нода.
  • Пространства имен UTS изолируют два системных идентификатора: nodename и domainname , возвращаемые системным вызовом uname(). Пространства имен UTS позволяют каждому контейнеру иметь собственный hostname и NIS domain name. Это полезно для инициализации и конфигурационных скриптов, которые совершают свои действия на основе этих имен.
  • Пространства имен монтирования изолируют набор точек монтирования файловых систем подобно группе процессов и помогают созданию различных файловых систем только для чтения. Процессы в различных пространствах имен монтирования могут иметь различные видения иерархии файловой системы. В дополнение к пространствам имен монтирования, системные вызовы mount() и umount() перестают действовать в глобальном пространстве точек монтирования (видимом для всех процессов ОС). Вместо этого они действуют только в пределах пространства имен монтирования, ассоциированным с процессом контейнера.
  • IPC пространства имен изолируют определенные ресурсы межпроцессного взаимодействия (IPC), такие, как объекты System V IPC и очереди сообщений Posix. Каждое пространство имен IPC имеет свой собственный набор идентификаторов System V и свою собственную очередь сообщений POSIX файловой системы.
  • Пользовательские пространства имен изолируют идентификаторы пользователя и группы так, что пользовательские процессы и идентификаторы групп могут быть различными внутри и снаружи пользовательского пространства имен. Наиболее интересный случай - когда процесс обычный не привилегированный ID снаружи пользовательского пространства имен и в то же самое время иметь идентификатор пользователя 0 внутри пространства имен. Это означает, что процесс имеет полные root привилегии для операций внутри пользовательского пространства имен, но является непривилигерованным для операций снаружи пространства имен.
Для обеспечения безопасности так же используется SELinux, который, как и в случае с cgroups, не является новой концепцией и существует начиная с CentOS 4. SELinux применяет метки безопасности и политики для контейнеров Linux и их ресурсов, предоставляя дополнительный уровень безопасности поверх безопасности, предоставляемой пространствами имен ядра.

Команда RedHat (вы ведь знаете, кто все это разработал на самом деле) начала работать над Docker начиная с версии 0.7. Вкладом Red Hat был новый драйвер хранения, который позволил Docker запуститься на Cent OS 7. В течении дальнейшего сотрудничества и вклада Red Hat в Docker был разработан новый встроенный драйвер исполнения, основанный на libcontainer, разработанный для доступа к API ядра контейнера напрямую, без сторонних зависимостей. Этот нативный набор инструментов может управлять возможностями ядра системы, такими как cgroups, пространства имен, сетевые интерфейсы, файрвол и другие особенности ядра. Благодаря Red Hat в Cent OS 7 Docker сейчас готов для корпоративного применения.

Таким образом, контейнеры Linux - важная open source технология для упаковки и доставки приложений, сочетая легковесную изоляцию и гибкость методов развертывания, основанных на образах.

Использованные в подготовке статьи источники.

Пришло время познакомиться с очень популярным дистрибутивом Linux CentOS , который широко используется в качестве платформы для всевозможных серверов, рассматривать дистрибутив мы будем на примере версии CentOS 7.1 процесс установки которой мы, конечно же, подробно разберем.

Как я уже сказал, дистрибутив CentOS очень популярен среди операционных систем для серверов и он наравне с такими дистрибутивами как Debian или Ubuntu активно используется системными администраторами для Web-серверов, серверов баз данных и других.

И начнем мы как обычно с обзора дистрибутива CentOS, а затем перейдем к рассмотрению его установки.

Дистрибутив Linux CentOS

CentOS (Community ENTerprise Operating System ) – бесплатный дистрибутив операционной системы Linux, основанный на коммерческом Red Hat Enterprise Linux. Срок поддержки каждой версии 10 лет. Новые версии выходят примерно, раз 2-3 года и обновляются каждые 6 месяцев.

CentOS поддерживает архитектуру процессора i386, x86_64, а последняя версия (на данный момент доступна 7.1 ) поддерживает только x86_64.

Для установки на сервер естественно среда рабочего стола не нужна, но если Вы привыкли работать в графическом окружении, то CentOS предлагает Вам использовать GNOME или KDE .

CentOS также можно использовать в качестве рабочий станции у себя в компании, но вот в качестве операционной системы для домашнего компьютера данный дистрибутив мало кто используют.

Дистрибутив популярен и имеет хорошее большое сообщество, поэтому поддерживает много языков, в том числе и Русский.

Где скачать CentOS?

Как я уже сказал, что на данный момент актуальной версией дистрибутива является CentOS 7.1 и загрузить его можно с официального сайта вот с этой страницы

Где нам предлагаю 3 варианта загрузки, оптимальным вариантом является загрузка DVD образа, размер которого чуть более 4 гигабайт. Я для примера буду скачивать именно его, т.е. жму «DVD ISO ». Если Вас интересует расширенный набор пакетов, то выбирайте «Everything ISO», а если только минимум, то соответственно «Minimal ISO». После нажатия на ссылку у Вас откроется страница со списком зеркал для скачивания, Вы выбираете любое на Ваше усмотрение, например я, скачиваю с http://mirror.yandex.ru/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1503-01.iso.

Установка CentOS 7.1

Для примера предлагаю установить CentOS со средой рабочего стола GNOME и набором офисных программ, а также популярных приложений для GNOME. Сам процесс установки не сложный, напоминает установку Fedora 21 .

Шаг 1

Загружаемся с диска и выбираем «Install CentOS 7 »

Шаг 2

Затем выбираем язык и жмем «Продолжить »

Шаг 3

Потом нам необходимо настроить процесс установки, для начала подтвердим то, что мы хотим автоматически разбить диск, для этого щелкаем на «Место установки »

И просто сразу жмем «Готово » (Если Вы хотите сами создать разделы на диске, то выбираете соответствующий пункт )

Шаг 4

Затем так как мы решили сразу установить GNOME, офис и дополнительные приложения, жмем «Выбор программ »

И отмечаем нужные нам пакеты, т.е. окружение GNOME, приложения GNOME, офисный комплект и жмем «Готово »

После чего можно нажимать кнопку «Начать установку »

Шаг 5

Все установка началась, но нам еще необходимо задать пароль для root пользователя (суперпользователь) и создать пользователя, под которым мы будем работать. И для начала зададим пароль для root пользователя. Жмем кнопку «Пароль root »

Затем соответственно придумываем и вводим пароль. Жмем «Готово »

Заполняем необходимые поля и жмем «Готово »

Вот и все ждем окончания процесса установки

Как установка будет завершена, жмем «Перезагрузить »

После того как система будет перезагружена, выбираем созданного пользователя, вводим пароль и жмем «Войти »

Вот мы и в первый раз загрузили систему CentOS 7 и нам предлагают подтвердить язык системы, жмем «Далее »

Выбираем раскладку клавиатуры по умолчанию, жмем «Далее »

Все можем начинать пользоваться CentOS 7

Скриншоты CentOS 7.1 (GNOME)

Меню приложений

Файловый менеджер

Меню обзор

На этом предлагаю заканчивать, удачи!

Задавшись вопросом, какой дистрибутив выбрать под вновь созревшие нужны, в очередной раз натыкаюсь на ответ: «Что лучше знаете — то и ставьте!» И только перелопатив достаточно весомый объем информации можно получить несколько проясненную картину. В силу сложившихся обстоятельств в моем кругу выбора оказались три дистрибутива: Debian, Ubuntu и CentOS. Что ж, попробуем разобраться что к чему.

  • Владельцы и сообщества

Как известно Linux — свободная операционная система с открытым исходным кодом. Отсюда и основная причина такого многообразия образов. Да, есть и коммерческие версии. Покупая такой продукт, вы платите за брендовые пакеты и поддержку, но никак не за саму операционную систему. Именно этим руководствовалась компания Red Hat, когда под своей крышей организовала распространение образа CentOS Linux, и предложила его всем желающим пользоваться бесплатно решениями класса Энтерпрайз. По сути, на сегодняшний день сообщество CentOS — это сотрудники компании Red Hat. Дистрибутив CentOS полностью совместим с дистрибутивом от RHEL, а техническая разница состоит только в присутствии торгового знака и дизайнерской работы. Проект стартовал в марте 2004 и на данный момент является одним из самых популярных серверных решений за счет высокой стабильности и совместимости.

Проект Debian несколько старше. Он был основан в августе 1993 и позиционировался как полностью некоммерческий проект. Не смотря на мнения скептиков, система до сих пор живет и процветает. По мнению автора, внимание к проекту все еще не стихает, прежде всего, из-за философии развития, большого объема бесплатного ПО и стабильного ядра.

Система Ubuntu является родственницей Debian, скорее даже дочерью. Появилась она на свет в июле 2005 года благодаря компании Canonical, которая и по сей день финансирует и контролирует развитие проекта. Взгляды компании Canonical на развитие системы, в отличие от многих других последователей Debian, осталась верны философии распространения свободного ПО, а также весьма лояльны к критике и дополнениям. Благодаря этому в настоящее время проект активно развивается и поддерживается сообществом.

  • Все так, да не так!

В целом для управления любой операционной системой (не только *nix) требуется очень схожий набор знаний: работа с файловой системой, сетевыми подключениями, сервисами или демонами, пакетами прикладных программ. Говоря о семействе Linux, конечно же, подразумеваем кучу конфигурационных файлов, командную строку (хотя — не обязательно), базовую структуру папок в корне. Однако в каждом из дистрибутивов есть свои тонкости и нюансы. Например: всем известный «BIND», занимающийся разрешением имен в ip адреса в CentOS называется «named», а веб-сервер «appache2» из Debian и Ubuntu трансформировался в «httpd» в CentOS. К слову сказать, заготовки структуры папок и файлов по умолчанию для appache в ubuntu скорее напоминают конфигурацию для большого хостера, а то время как базовая конфигурация веб-сервера в CentOS располагает к размещению одного корпоративного сайта и не имеет такой вереницы конфиг-файлов. Одно в другое, конечно же, трансформируемо, но не идентично. Подобные вещи наблюдаются и в работе с командами: например, при работе с репозитариями Debian использует apt-get, в то время как в CentOS мы пользуемся yum. Суть одна и та же, но неопытного линуксовода такой зоопарк команд часто вводит в замешательство.

  • Поддерживаемое железо, используемые пакеты и версии

Итак, становится резонный вопрос: что же выбрать? (Особенно, если Вам все равно с какой системой начинать знакомство.) Автор рекомендует хорошенько детально подумать, под какие задачи вы будете использовать сервер, и какие ресурсы вы для этого имеете. Если у Вас есть физическое оборудование, которое вы предполагаете использовать в своем проекте, в первую очередь необходимо проверить его в списке поддерживаемого оборудования для каждого из дистрибутивов. Исходя из опыта, Debian имеет меньше аппаратных проблем, чем CentOS, не смотря на то, что корпоративный дистрибутив постоянно расширяет горизонты поддерживаемого аппаратного обеспечения. Далее детально рассматриваем требуемое ПО и его версии. Стандартные репозитарии CentOS достаточно скудны, поэтому в обслуживании (к примеру), вероятно, будет проще использовать Debian и поставить уже собранный пакет, чем собирать его руками (а в будущем возможно еще и пересобирать при обновлении) для CentOS. И даже не смотря на то, что Ubuntu использует репозитарии Debian, из-за разницы в подходах к классификации ПО удобно будет использовать Ubuntu, бегущую впереди всех по скорости обновления пакетов. Однако не забывайте, что более новый пакет не всегда гарантирует стабильность работы. В этом вопросе решать Вам. Автор предпочитает балансировать где-то посередине между новыми возможностями и проверенными, надежными решениями.

И на закуску о версиях. Ниже предлагается сравнительная таблица релизов самих дистрибутивов. Выводы делайте самостоятельно.

Продукт версия дата выхода кодовое имя
Debian 8.0 апрель 2015 года Jessie
7.0 май 2013 года Wheezy
6.0 февраль 2011 года Squeeze
5.0 февраль 2009 года Lenny
4.0 апрель 2007 года Etch
Ubuntu 16.04 LTS 21 апрель 2016 года Xenial Xerus
14.04 LTS 17 апреля 2014 года Trusty Tahr
12.04 LTS 26 апреля 2012 года Precise Pangolin
10.04 LTS 29 апреля 2010 года Lucid Lynx
8.04 LTS 24 апреля 2008 года Hardy Heron
CentOS 7 7 июля 2014
6 20 июля 2011
5 12 апреля 2007
4 9 марта 2005
3 5 января 2001
  • Установка. Есть ли отличия на самом деле?

На необъятных просторах Интернет есть масса заявлений о том, что установка одного образа отличается от установки другого, для кого-то обилие настроек кажется преимуществом, а для кого-то это сильно усложняет задачу. В реалиях нашей жизни установка сервера крайне маловероятно будет доверена блондинке-секретарше, а специалист, выполняющий роль администратора все же должен иметь базовые знания о файловых системах и разметке диска, сетевых настройках, загрузчиках и устанавливаемых ролях сервера. Поэтому установка любого из дистрибутивов не должна вызвать особых проблем. У каждой из систем есть GUI Installation mode, оценка удобства которого, впрочем, дело также достаточно субъективное. Из различий стоит отметить, что Debian имеет наиболее скудный набор преднастроенных ролей, однако насколько это важно непосредственно для Вас, решать не автору.

  • Безопасность: root, SELinux и другие страшные слова.

Ещё в процессе установки Ubuntu можно заметить ее отличительную особенность. Система не предполагает использование учетной записи «root», в место этого используется утилита «sudo», повышающая права пользователя до root’a, если у пользователя, конечно, есть такое привилегии. По мнению автора, такой подход аналогичен с User Account Control от Microsoft. Он однозначно повышает уровень безопасности и полезен при эксплуатации, хотя на первый взгляд усложняет процессы администрирования.

Системы мандатного доступа приложений к ресурсам системы есть во всех сравниваемых системах. CentOS успешно использует SELinux, в то время как для Ubuntu разработан AppArmor, который также при необходимости успешно используется на Debian. Что из них лучше и вообще нужно ли их использовать и в каких случаях — это большая тема отдельной статьи, поэтому сейчас останавливаться на этом подробно не стоит.

  • Потребление ресурсов и нагрузочное тестирование

Минимальные системные требования к ресурсам приведены в таблице ниже:

Memory (minimal) HDD (minimal)
Debian 128 Mb 2 Gb
Ubuntu 128 Mb 0,5 Gb
CentOS 1024 Mb 10 Gb

Согласно проведенным тестам (несколько примеров результатов тестирований можно посмотреть и ) из коробки Debian и Ubuntu несколько опережают CentOS по скорости работы веб-сервера, в тестировании работы баз данных все очень зависит от используемого сервера баз данных и его версии.

  • Интеграция с другими системами

Здесь все достаточно логично. Для того чтобы осуществлять интеграцию необходимо иметь тесные контакты между разработчиками интегрируемых систем. Конечно же, проще наладить контакт, с группой официальных представителей, чем с сообществом. Это умозаключение подтверждается практикой: CentOS (как аналог RedHat) одним из первых начал поддерживаться в системах виртуализации Microsoft. Также именно CentOS лучше других интегрируется с ActiveDirectory. Однако если у Вас уже есть несколько серверов Debian, то не во всех случаях будет рационально разворачивать CentOS, даже если требуется некоторая интеграция. Возможно, в долгосрочной перспективе трудозатраты на интеграцию будут меньше, чем трудозатраты на обслуживание операционной системы, отличной от всех остальных.

В целом подводя итог всему вышеописанному и стараясь ответить на вопрос, заданный в самом начале статьи, можно сказать, что выбирать образ Linux нужно согласно Вашим задачам. Только предварительно оценив и взвесив все требования к аппаратной платформе, программному обеспечению, окружающей инфраструктуре и администраторским навыкам можно сделать правильный выбор. Однозначно правильного решения нет, и всегда будут какие-то недостатки. Но, по твердой убежденности автора, эти недостатки можно устранить с помощью дополнительных настроек или решений. А если трудозатраты на исправление недостатков превышают целесообразность — просто пренебречь ими. Ведь у Вас уже есть достаточно аргументов для выбора именно Вашего решения.

Нет похожих статей.